/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf -i ../../../trunk/examples/svcomp/nla-digbench/egcd3-ll.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 04:18:13,250 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 04:18:13,251 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 04:18:13,284 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 04:18:13,285 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 04:18:13,286 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 04:18:13,287 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 04:18:13,288 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 04:18:13,290 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 04:18:13,291 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 04:18:13,291 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 04:18:13,292 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 04:18:13,293 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 04:18:13,293 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 04:18:13,294 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 04:18:13,295 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 04:18:13,296 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 04:18:13,296 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 04:18:13,298 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 04:18:13,299 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 04:18:13,301 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 04:18:13,302 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 04:18:13,303 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 04:18:13,304 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 04:18:13,304 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 04:18:13,307 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 04:18:13,307 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 04:18:13,308 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 04:18:13,309 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 04:18:13,309 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 04:18:13,310 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 04:18:13,310 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 04:18:13,311 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 04:18:13,311 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 04:18:13,312 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 04:18:13,313 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 04:18:13,313 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 04:18:13,314 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 04:18:13,314 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 04:18:13,314 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 04:18:13,315 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 04:18:13,316 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 04:18:13,316 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-28 04:18:13,324 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 04:18:13,325 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 04:18:13,326 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 04:18:13,326 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-28 04:18:13,326 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 04:18:13,326 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-28 04:18:13,327 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 04:18:13,327 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 04:18:13,327 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 04:18:13,327 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 04:18:13,327 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-28 04:18:13,327 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 04:18:13,327 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 04:18:13,328 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 04:18:13,328 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 04:18:13,328 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 04:18:13,328 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 04:18:13,328 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 04:18:13,328 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 04:18:13,328 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 04:18:13,329 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 04:18:13,329 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 04:18:13,329 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 04:18:13,329 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 04:18:13,329 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-28 04:18:13,329 INFO L138 SettingsManager]: * Use separate solver for trace checks=false WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-28 04:18:13,572 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 04:18:13,597 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 04:18:13,599 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 04:18:13,601 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 04:18:13,601 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 04:18:13,602 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench/egcd3-ll.c [2022-04-28 04:18:13,675 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4e1962787/1f72499a8a8241579fc036ec3a38422b/FLAG8242e07d9 [2022-04-28 04:18:14,122 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 04:18:14,122 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench/egcd3-ll.c [2022-04-28 04:18:14,129 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4e1962787/1f72499a8a8241579fc036ec3a38422b/FLAG8242e07d9 [2022-04-28 04:18:14,140 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4e1962787/1f72499a8a8241579fc036ec3a38422b [2022-04-28 04:18:14,142 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 04:18:14,143 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 04:18:14,146 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 04:18:14,146 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 04:18:14,161 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 04:18:14,163 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 04:18:14" (1/1) ... [2022-04-28 04:18:14,164 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@f390aba and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:18:14, skipping insertion in model container [2022-04-28 04:18:14,164 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 04:18:14" (1/1) ... [2022-04-28 04:18:14,171 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 04:18:14,188 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 04:18:14,347 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench/egcd3-ll.c[490,503] [2022-04-28 04:18:14,389 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 04:18:14,399 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 04:18:14,417 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench/egcd3-ll.c[490,503] [2022-04-28 04:18:14,426 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 04:18:14,438 INFO L208 MainTranslator]: Completed translation [2022-04-28 04:18:14,438 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:18:14 WrapperNode [2022-04-28 04:18:14,438 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 04:18:14,439 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 04:18:14,439 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 04:18:14,439 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 04:18:14,449 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:18:14" (1/1) ... [2022-04-28 04:18:14,450 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:18:14" (1/1) ... [2022-04-28 04:18:14,456 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:18:14" (1/1) ... [2022-04-28 04:18:14,457 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:18:14" (1/1) ... [2022-04-28 04:18:14,468 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:18:14" (1/1) ... [2022-04-28 04:18:14,473 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:18:14" (1/1) ... [2022-04-28 04:18:14,474 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:18:14" (1/1) ... [2022-04-28 04:18:14,476 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 04:18:14,477 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 04:18:14,477 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 04:18:14,477 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 04:18:14,484 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:18:14" (1/1) ... [2022-04-28 04:18:14,493 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 04:18:14,502 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:18:14,515 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-28 04:18:14,517 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-28 04:18:14,544 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 04:18:14,544 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 04:18:14,544 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 04:18:14,545 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 04:18:14,545 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 04:18:14,545 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 04:18:14,545 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 04:18:14,545 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 04:18:14,545 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 04:18:14,545 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 04:18:14,545 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 04:18:14,545 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 04:18:14,545 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 04:18:14,546 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 04:18:14,546 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 04:18:14,546 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 04:18:14,546 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 04:18:14,546 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 04:18:14,546 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 04:18:14,546 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 04:18:14,601 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 04:18:14,603 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 04:18:14,825 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 04:18:14,830 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 04:18:14,831 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-28 04:18:14,832 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 04:18:14 BoogieIcfgContainer [2022-04-28 04:18:14,832 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 04:18:14,834 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 04:18:14,834 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 04:18:14,837 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 04:18:14,838 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 04:18:14" (1/3) ... [2022-04-28 04:18:14,838 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@71e97 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 04:18:14, skipping insertion in model container [2022-04-28 04:18:14,838 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:18:14" (2/3) ... [2022-04-28 04:18:14,838 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@71e97 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 04:18:14, skipping insertion in model container [2022-04-28 04:18:14,839 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 04:18:14" (3/3) ... [2022-04-28 04:18:14,840 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd3-ll.c [2022-04-28 04:18:14,852 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 04:18:14,853 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 04:18:14,889 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 04:18:14,894 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@1e38eaf1, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@7f39fd44 [2022-04-28 04:18:14,895 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 04:18:14,902 INFO L276 IsEmpty]: Start isEmpty. Operand has 37 states, 22 states have (on average 1.5454545454545454) internal successors, (34), 23 states have internal predecessors, (34), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 04:18:14,908 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-28 04:18:14,908 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:18:14,909 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:18:14,909 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:18:14,913 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:18:14,914 INFO L85 PathProgramCache]: Analyzing trace with hash 642197559, now seen corresponding path program 1 times [2022-04-28 04:18:14,921 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:18:14,921 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [398175599] [2022-04-28 04:18:14,931 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:18:14,931 INFO L85 PathProgramCache]: Analyzing trace with hash 642197559, now seen corresponding path program 2 times [2022-04-28 04:18:14,934 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:18:14,935 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [354743174] [2022-04-28 04:18:14,935 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:18:14,936 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:18:15,096 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:18:15,173 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:18:15,186 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:18:15,206 INFO L290 TraceCheckUtils]: 0: Hoare triple {53#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {40#true} is VALID [2022-04-28 04:18:15,206 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-28 04:18:15,207 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40#true} {40#true} #105#return; {40#true} is VALID [2022-04-28 04:18:15,208 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:18:15,219 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:18:15,239 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-28 04:18:15,240 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-28 04:18:15,240 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-28 04:18:15,241 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {40#true} #91#return; {41#false} is VALID [2022-04-28 04:18:15,241 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-28 04:18:15,243 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:18:15,253 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-28 04:18:15,254 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-28 04:18:15,254 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-28 04:18:15,254 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {41#false} #93#return; {41#false} is VALID [2022-04-28 04:18:15,257 INFO L272 TraceCheckUtils]: 0: Hoare triple {40#true} call ULTIMATE.init(); {53#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:18:15,257 INFO L290 TraceCheckUtils]: 1: Hoare triple {53#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {40#true} is VALID [2022-04-28 04:18:15,258 INFO L290 TraceCheckUtils]: 2: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-28 04:18:15,258 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40#true} {40#true} #105#return; {40#true} is VALID [2022-04-28 04:18:15,258 INFO L272 TraceCheckUtils]: 4: Hoare triple {40#true} call #t~ret6 := main(); {40#true} is VALID [2022-04-28 04:18:15,258 INFO L290 TraceCheckUtils]: 5: Hoare triple {40#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {40#true} is VALID [2022-04-28 04:18:15,259 INFO L272 TraceCheckUtils]: 6: Hoare triple {40#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {40#true} is VALID [2022-04-28 04:18:15,259 INFO L290 TraceCheckUtils]: 7: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-28 04:18:15,259 INFO L290 TraceCheckUtils]: 8: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-28 04:18:15,260 INFO L290 TraceCheckUtils]: 9: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-28 04:18:15,260 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {41#false} {40#true} #91#return; {41#false} is VALID [2022-04-28 04:18:15,260 INFO L272 TraceCheckUtils]: 11: Hoare triple {41#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {40#true} is VALID [2022-04-28 04:18:15,260 INFO L290 TraceCheckUtils]: 12: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-28 04:18:15,261 INFO L290 TraceCheckUtils]: 13: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-28 04:18:15,261 INFO L290 TraceCheckUtils]: 14: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-28 04:18:15,261 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {41#false} {41#false} #93#return; {41#false} is VALID [2022-04-28 04:18:15,261 INFO L290 TraceCheckUtils]: 16: Hoare triple {41#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {41#false} is VALID [2022-04-28 04:18:15,262 INFO L290 TraceCheckUtils]: 17: Hoare triple {41#false} assume false; {41#false} is VALID [2022-04-28 04:18:15,262 INFO L272 TraceCheckUtils]: 18: Hoare triple {41#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {41#false} is VALID [2022-04-28 04:18:15,262 INFO L290 TraceCheckUtils]: 19: Hoare triple {41#false} ~cond := #in~cond; {41#false} is VALID [2022-04-28 04:18:15,262 INFO L290 TraceCheckUtils]: 20: Hoare triple {41#false} assume 0 == ~cond; {41#false} is VALID [2022-04-28 04:18:15,263 INFO L290 TraceCheckUtils]: 21: Hoare triple {41#false} assume !false; {41#false} is VALID [2022-04-28 04:18:15,263 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-28 04:18:15,264 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:18:15,264 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [354743174] [2022-04-28 04:18:15,265 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [354743174] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:18:15,265 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:18:15,265 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 04:18:15,267 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:18:15,267 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [398175599] [2022-04-28 04:18:15,268 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [398175599] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:18:15,268 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:18:15,268 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 04:18:15,268 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1259767597] [2022-04-28 04:18:15,269 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:18:15,273 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-28 04:18:15,275 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:18:15,278 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-28 04:18:15,300 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-28 04:18:15,301 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 04:18:15,301 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:18:15,320 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 04:18:15,320 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 04:18:15,323 INFO L87 Difference]: Start difference. First operand has 37 states, 22 states have (on average 1.5454545454545454) internal successors, (34), 23 states have internal predecessors, (34), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 04:18:15,461 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:18:15,462 INFO L93 Difference]: Finished difference Result 67 states and 103 transitions. [2022-04-28 04:18:15,462 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 04:18:15,462 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-28 04:18:15,463 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:18:15,464 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-28 04:18:15,483 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 103 transitions. [2022-04-28 04:18:15,484 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-28 04:18:15,490 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 103 transitions. [2022-04-28 04:18:15,490 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 103 transitions. [2022-04-28 04:18:15,610 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 103 edges. 103 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:18:15,622 INFO L225 Difference]: With dead ends: 67 [2022-04-28 04:18:15,622 INFO L226 Difference]: Without dead ends: 32 [2022-04-28 04:18:15,625 INFO L412 NwaCegarLoop]: 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-28 04:18:15,629 INFO L413 NwaCegarLoop]: 37 mSDtfsCounter, 23 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 9 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 30 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 17 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 9 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 04:18:15,631 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [30 Valid, 40 Invalid, 17 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 9 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 04:18:15,645 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-28 04:18:15,666 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-28 04:18:15,666 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:18:15,668 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 04:18:15,672 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 04:18:15,673 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 04:18:15,688 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:18:15,688 INFO L93 Difference]: Finished difference Result 32 states and 39 transitions. [2022-04-28 04:18:15,688 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 39 transitions. [2022-04-28 04:18:15,689 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:18:15,689 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:18:15,690 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 32 states. [2022-04-28 04:18:15,691 INFO L87 Difference]: Start difference. First operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 32 states. [2022-04-28 04:18:15,698 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:18:15,698 INFO L93 Difference]: Finished difference Result 32 states and 39 transitions. [2022-04-28 04:18:15,698 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 39 transitions. [2022-04-28 04:18:15,699 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:18:15,699 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:18:15,699 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:18:15,700 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:18:15,701 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 20 states have internal predecessors, (23), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 04:18:15,709 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 39 transitions. [2022-04-28 04:18:15,713 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 39 transitions. Word has length 22 [2022-04-28 04:18:15,713 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:18:15,713 INFO L495 AbstractCegarLoop]: Abstraction has 32 states and 39 transitions. [2022-04-28 04:18:15,714 INFO L496 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-28 04:18:15,714 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 39 transitions. [2022-04-28 04:18:15,772 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:18:15,773 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 39 transitions. [2022-04-28 04:18:15,774 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-28 04:18:15,774 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:18:15,774 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:18:15,775 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 04:18:15,775 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:18:15,776 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:18:15,777 INFO L85 PathProgramCache]: Analyzing trace with hash 1042193974, now seen corresponding path program 1 times [2022-04-28 04:18:15,777 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:18:15,777 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [424433217] [2022-04-28 04:18:15,780 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:18:15,780 INFO L85 PathProgramCache]: Analyzing trace with hash 1042193974, now seen corresponding path program 2 times [2022-04-28 04:18:15,780 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:18:15,783 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1254718673] [2022-04-28 04:18:15,783 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:18:15,784 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:18:15,824 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:18:15,824 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1613337169] [2022-04-28 04:18:15,824 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 04:18:15,825 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:18:15,825 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:18:15,828 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:18:15,847 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-28 04:18:15,890 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 04:18:15,891 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:18:15,893 INFO L263 TraceCheckSpWp]: Trace formula consists of 80 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-28 04:18:15,907 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:18:15,912 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:18:16,214 INFO L272 TraceCheckUtils]: 0: Hoare triple {318#true} call ULTIMATE.init(); {318#true} is VALID [2022-04-28 04:18:16,215 INFO L290 TraceCheckUtils]: 1: Hoare triple {318#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {318#true} is VALID [2022-04-28 04:18:16,215 INFO L290 TraceCheckUtils]: 2: Hoare triple {318#true} assume true; {318#true} is VALID [2022-04-28 04:18:16,215 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {318#true} {318#true} #105#return; {318#true} is VALID [2022-04-28 04:18:16,215 INFO L272 TraceCheckUtils]: 4: Hoare triple {318#true} call #t~ret6 := main(); {318#true} is VALID [2022-04-28 04:18:16,215 INFO L290 TraceCheckUtils]: 5: Hoare triple {318#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {318#true} is VALID [2022-04-28 04:18:16,216 INFO L272 TraceCheckUtils]: 6: Hoare triple {318#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {318#true} is VALID [2022-04-28 04:18:16,217 INFO L290 TraceCheckUtils]: 7: Hoare triple {318#true} ~cond := #in~cond; {318#true} is VALID [2022-04-28 04:18:16,217 INFO L290 TraceCheckUtils]: 8: Hoare triple {318#true} assume !(0 == ~cond); {318#true} is VALID [2022-04-28 04:18:16,217 INFO L290 TraceCheckUtils]: 9: Hoare triple {318#true} assume true; {318#true} is VALID [2022-04-28 04:18:16,217 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {318#true} {318#true} #91#return; {318#true} is VALID [2022-04-28 04:18:16,218 INFO L272 TraceCheckUtils]: 11: Hoare triple {318#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {318#true} is VALID [2022-04-28 04:18:16,218 INFO L290 TraceCheckUtils]: 12: Hoare triple {318#true} ~cond := #in~cond; {318#true} is VALID [2022-04-28 04:18:16,218 INFO L290 TraceCheckUtils]: 13: Hoare triple {318#true} assume !(0 == ~cond); {318#true} is VALID [2022-04-28 04:18:16,219 INFO L290 TraceCheckUtils]: 14: Hoare triple {318#true} assume true; {318#true} is VALID [2022-04-28 04:18:16,222 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {318#true} {318#true} #93#return; {318#true} is VALID [2022-04-28 04:18:16,223 INFO L290 TraceCheckUtils]: 16: Hoare triple {318#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {371#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:18:16,224 INFO L290 TraceCheckUtils]: 17: Hoare triple {371#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {371#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:18:16,225 INFO L290 TraceCheckUtils]: 18: Hoare triple {371#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(0 != ~b~0); {378#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~y~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:18:16,228 INFO L272 TraceCheckUtils]: 19: Hoare triple {378#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~y~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {382#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:18:16,229 INFO L290 TraceCheckUtils]: 20: Hoare triple {382#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {386#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:18:16,230 INFO L290 TraceCheckUtils]: 21: Hoare triple {386#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {319#false} is VALID [2022-04-28 04:18:16,230 INFO L290 TraceCheckUtils]: 22: Hoare triple {319#false} assume !false; {319#false} is VALID [2022-04-28 04:18:16,230 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-28 04:18:16,230 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 04:18:16,231 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:18:16,231 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1254718673] [2022-04-28 04:18:16,231 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:18:16,231 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1613337169] [2022-04-28 04:18:16,232 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1613337169] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:18:16,232 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:18:16,232 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 04:18:16,233 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:18:16,233 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [424433217] [2022-04-28 04:18:16,233 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [424433217] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:18:16,234 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:18:16,234 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 04:18:16,235 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2118257597] [2022-04-28 04:18:16,236 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:18:16,237 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 23 [2022-04-28 04:18:16,237 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:18:16,238 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 04:18:16,257 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-28 04:18:16,257 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 04:18:16,258 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:18:16,259 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 04:18:16,259 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-28 04:18:16,260 INFO L87 Difference]: Start difference. First operand 32 states and 39 transitions. Second operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 04:18:16,656 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:18:16,656 INFO L93 Difference]: Finished difference Result 51 states and 64 transitions. [2022-04-28 04:18:16,656 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 04:18:16,657 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 23 [2022-04-28 04:18:16,657 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:18:16,657 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 04:18:16,659 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 64 transitions. [2022-04-28 04:18:16,660 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 04:18:16,661 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 64 transitions. [2022-04-28 04:18:16,662 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 64 transitions. [2022-04-28 04:18:16,731 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-28 04:18:16,734 INFO L225 Difference]: With dead ends: 51 [2022-04-28 04:18:16,734 INFO L226 Difference]: Without dead ends: 48 [2022-04-28 04:18:16,735 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 24 GetRequests, 18 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-28 04:18:16,736 INFO L413 NwaCegarLoop]: 38 mSDtfsCounter, 14 mSDsluCounter, 116 mSDsCounter, 0 mSdLazyCounter, 73 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 154 SdHoareTripleChecker+Invalid, 75 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 73 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 04:18:16,736 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [18 Valid, 154 Invalid, 75 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 73 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 04:18:16,737 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-28 04:18:16,753 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 47. [2022-04-28 04:18:16,754 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:18:16,755 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 04:18:16,757 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 04:18:16,757 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 04:18:16,766 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:18:16,766 INFO L93 Difference]: Finished difference Result 48 states and 60 transitions. [2022-04-28 04:18:16,766 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 60 transitions. [2022-04-28 04:18:16,767 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:18:16,767 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:18:16,768 INFO L74 IsIncluded]: Start isIncluded. First operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 48 states. [2022-04-28 04:18:16,768 INFO L87 Difference]: Start difference. First operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 48 states. [2022-04-28 04:18:16,771 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:18:16,771 INFO L93 Difference]: Finished difference Result 48 states and 60 transitions. [2022-04-28 04:18:16,771 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 60 transitions. [2022-04-28 04:18:16,772 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:18:16,772 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:18:16,772 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:18:16,772 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:18:16,773 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 29 states have (on average 1.206896551724138) internal successors, (35), 30 states have internal predecessors, (35), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 04:18:16,779 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 59 transitions. [2022-04-28 04:18:16,779 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 59 transitions. Word has length 23 [2022-04-28 04:18:16,780 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:18:16,780 INFO L495 AbstractCegarLoop]: Abstraction has 47 states and 59 transitions. [2022-04-28 04:18:16,780 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 04:18:16,780 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 47 states and 59 transitions. [2022-04-28 04:18:16,848 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-28 04:18:16,848 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 59 transitions. [2022-04-28 04:18:16,855 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-28 04:18:16,855 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:18:16,855 INFO L195 NwaCegarLoop]: 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-28 04:18:16,886 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-28 04:18:17,079 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:18:17,080 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:18:17,080 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:18:17,080 INFO L85 PathProgramCache]: Analyzing trace with hash -796982879, now seen corresponding path program 1 times [2022-04-28 04:18:17,081 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:18:17,081 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [799927329] [2022-04-28 04:18:17,081 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:18:17,081 INFO L85 PathProgramCache]: Analyzing trace with hash -796982879, now seen corresponding path program 2 times [2022-04-28 04:18:17,081 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:18:17,081 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1961205715] [2022-04-28 04:18:17,081 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:18:17,082 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:18:17,097 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:18:17,097 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2146064362] [2022-04-28 04:18:17,097 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 04:18:17,097 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:18:17,098 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:18:17,099 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:18:17,133 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-28 04:18:17,151 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 04:18:17,152 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:18:17,152 INFO L263 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 04:18:17,167 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:18:17,168 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:18:17,343 INFO L272 TraceCheckUtils]: 0: Hoare triple {688#true} call ULTIMATE.init(); {688#true} is VALID [2022-04-28 04:18:17,343 INFO L290 TraceCheckUtils]: 1: Hoare triple {688#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {688#true} is VALID [2022-04-28 04:18:17,344 INFO L290 TraceCheckUtils]: 2: Hoare triple {688#true} assume true; {688#true} is VALID [2022-04-28 04:18:17,344 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {688#true} {688#true} #105#return; {688#true} is VALID [2022-04-28 04:18:17,344 INFO L272 TraceCheckUtils]: 4: Hoare triple {688#true} call #t~ret6 := main(); {688#true} is VALID [2022-04-28 04:18:17,344 INFO L290 TraceCheckUtils]: 5: Hoare triple {688#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {688#true} is VALID [2022-04-28 04:18:17,344 INFO L272 TraceCheckUtils]: 6: Hoare triple {688#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {688#true} is VALID [2022-04-28 04:18:17,345 INFO L290 TraceCheckUtils]: 7: Hoare triple {688#true} ~cond := #in~cond; {714#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 04:18:17,345 INFO L290 TraceCheckUtils]: 8: Hoare triple {714#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {718#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:18:17,346 INFO L290 TraceCheckUtils]: 9: Hoare triple {718#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {718#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:18:17,346 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {718#(not (= |assume_abort_if_not_#in~cond| 0))} {688#true} #91#return; {725#(<= 1 main_~x~0)} is VALID [2022-04-28 04:18:17,347 INFO L272 TraceCheckUtils]: 11: Hoare triple {725#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {688#true} is VALID [2022-04-28 04:18:17,347 INFO L290 TraceCheckUtils]: 12: Hoare triple {688#true} ~cond := #in~cond; {688#true} is VALID [2022-04-28 04:18:17,347 INFO L290 TraceCheckUtils]: 13: Hoare triple {688#true} assume !(0 == ~cond); {688#true} is VALID [2022-04-28 04:18:17,347 INFO L290 TraceCheckUtils]: 14: Hoare triple {688#true} assume true; {688#true} is VALID [2022-04-28 04:18:17,348 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {688#true} {725#(<= 1 main_~x~0)} #93#return; {725#(<= 1 main_~x~0)} is VALID [2022-04-28 04:18:17,348 INFO L290 TraceCheckUtils]: 16: Hoare triple {725#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {744#(<= 1 main_~a~0)} is VALID [2022-04-28 04:18:17,349 INFO L290 TraceCheckUtils]: 17: Hoare triple {744#(<= 1 main_~a~0)} assume !false; {744#(<= 1 main_~a~0)} is VALID [2022-04-28 04:18:17,349 INFO L290 TraceCheckUtils]: 18: Hoare triple {744#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {751#(<= 1 main_~c~0)} is VALID [2022-04-28 04:18:17,350 INFO L290 TraceCheckUtils]: 19: Hoare triple {751#(<= 1 main_~c~0)} assume !false; {751#(<= 1 main_~c~0)} is VALID [2022-04-28 04:18:17,350 INFO L290 TraceCheckUtils]: 20: Hoare triple {751#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {751#(<= 1 main_~c~0)} is VALID [2022-04-28 04:18:17,351 INFO L290 TraceCheckUtils]: 21: Hoare triple {751#(<= 1 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {761#(<= 1 main_~b~0)} is VALID [2022-04-28 04:18:17,351 INFO L290 TraceCheckUtils]: 22: Hoare triple {761#(<= 1 main_~b~0)} assume !false; {761#(<= 1 main_~b~0)} is VALID [2022-04-28 04:18:17,352 INFO L290 TraceCheckUtils]: 23: Hoare triple {761#(<= 1 main_~b~0)} assume !(0 != ~b~0); {689#false} is VALID [2022-04-28 04:18:17,352 INFO L272 TraceCheckUtils]: 24: Hoare triple {689#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {689#false} is VALID [2022-04-28 04:18:17,352 INFO L290 TraceCheckUtils]: 25: Hoare triple {689#false} ~cond := #in~cond; {689#false} is VALID [2022-04-28 04:18:17,352 INFO L290 TraceCheckUtils]: 26: Hoare triple {689#false} assume 0 == ~cond; {689#false} is VALID [2022-04-28 04:18:17,353 INFO L290 TraceCheckUtils]: 27: Hoare triple {689#false} assume !false; {689#false} is VALID [2022-04-28 04:18:17,353 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:18:17,353 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:18:17,616 INFO L290 TraceCheckUtils]: 27: Hoare triple {689#false} assume !false; {689#false} is VALID [2022-04-28 04:18:17,617 INFO L290 TraceCheckUtils]: 26: Hoare triple {689#false} assume 0 == ~cond; {689#false} is VALID [2022-04-28 04:18:17,617 INFO L290 TraceCheckUtils]: 25: Hoare triple {689#false} ~cond := #in~cond; {689#false} is VALID [2022-04-28 04:18:17,617 INFO L272 TraceCheckUtils]: 24: Hoare triple {689#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {689#false} is VALID [2022-04-28 04:18:17,618 INFO L290 TraceCheckUtils]: 23: Hoare triple {761#(<= 1 main_~b~0)} assume !(0 != ~b~0); {689#false} is VALID [2022-04-28 04:18:17,618 INFO L290 TraceCheckUtils]: 22: Hoare triple {761#(<= 1 main_~b~0)} assume !false; {761#(<= 1 main_~b~0)} is VALID [2022-04-28 04:18:17,619 INFO L290 TraceCheckUtils]: 21: Hoare triple {751#(<= 1 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {761#(<= 1 main_~b~0)} is VALID [2022-04-28 04:18:17,619 INFO L290 TraceCheckUtils]: 20: Hoare triple {751#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {751#(<= 1 main_~c~0)} is VALID [2022-04-28 04:18:17,620 INFO L290 TraceCheckUtils]: 19: Hoare triple {751#(<= 1 main_~c~0)} assume !false; {751#(<= 1 main_~c~0)} is VALID [2022-04-28 04:18:17,620 INFO L290 TraceCheckUtils]: 18: Hoare triple {744#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {751#(<= 1 main_~c~0)} is VALID [2022-04-28 04:18:17,621 INFO L290 TraceCheckUtils]: 17: Hoare triple {744#(<= 1 main_~a~0)} assume !false; {744#(<= 1 main_~a~0)} is VALID [2022-04-28 04:18:17,621 INFO L290 TraceCheckUtils]: 16: Hoare triple {725#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {744#(<= 1 main_~a~0)} is VALID [2022-04-28 04:18:17,622 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {688#true} {725#(<= 1 main_~x~0)} #93#return; {725#(<= 1 main_~x~0)} is VALID [2022-04-28 04:18:17,622 INFO L290 TraceCheckUtils]: 14: Hoare triple {688#true} assume true; {688#true} is VALID [2022-04-28 04:18:17,623 INFO L290 TraceCheckUtils]: 13: Hoare triple {688#true} assume !(0 == ~cond); {688#true} is VALID [2022-04-28 04:18:17,623 INFO L290 TraceCheckUtils]: 12: Hoare triple {688#true} ~cond := #in~cond; {688#true} is VALID [2022-04-28 04:18:17,623 INFO L272 TraceCheckUtils]: 11: Hoare triple {725#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {688#true} is VALID [2022-04-28 04:18:17,624 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {718#(not (= |assume_abort_if_not_#in~cond| 0))} {688#true} #91#return; {725#(<= 1 main_~x~0)} is VALID [2022-04-28 04:18:17,624 INFO L290 TraceCheckUtils]: 9: Hoare triple {718#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {718#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:18:17,625 INFO L290 TraceCheckUtils]: 8: Hoare triple {840#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {718#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:18:17,625 INFO L290 TraceCheckUtils]: 7: Hoare triple {688#true} ~cond := #in~cond; {840#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 04:18:17,625 INFO L272 TraceCheckUtils]: 6: Hoare triple {688#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {688#true} is VALID [2022-04-28 04:18:17,626 INFO L290 TraceCheckUtils]: 5: Hoare triple {688#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {688#true} is VALID [2022-04-28 04:18:17,626 INFO L272 TraceCheckUtils]: 4: Hoare triple {688#true} call #t~ret6 := main(); {688#true} is VALID [2022-04-28 04:18:17,626 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {688#true} {688#true} #105#return; {688#true} is VALID [2022-04-28 04:18:17,626 INFO L290 TraceCheckUtils]: 2: Hoare triple {688#true} assume true; {688#true} is VALID [2022-04-28 04:18:17,626 INFO L290 TraceCheckUtils]: 1: Hoare triple {688#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {688#true} is VALID [2022-04-28 04:18:17,626 INFO L272 TraceCheckUtils]: 0: Hoare triple {688#true} call ULTIMATE.init(); {688#true} is VALID [2022-04-28 04:18:17,627 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:18:17,627 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:18:17,627 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1961205715] [2022-04-28 04:18:17,627 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:18:17,627 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2146064362] [2022-04-28 04:18:17,628 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2146064362] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:18:17,628 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 04:18:17,628 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 04:18:17,628 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:18:17,628 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [799927329] [2022-04-28 04:18:17,628 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [799927329] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:18:17,628 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:18:17,629 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 04:18:17,629 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [413889532] [2022-04-28 04:18:17,629 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:18:17,629 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 28 [2022-04-28 04:18:17,630 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:18:17,630 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 04:18:17,651 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:18:17,651 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 04:18:17,652 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:18:17,652 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 04:18:17,652 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-28 04:18:17,652 INFO L87 Difference]: Start difference. First operand 47 states and 59 transitions. Second operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 04:18:18,436 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:18:18,436 INFO L93 Difference]: Finished difference Result 100 states and 138 transitions. [2022-04-28 04:18:18,438 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 04:18:18,438 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 28 [2022-04-28 04:18:18,438 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:18:18,439 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 04:18:18,449 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 103 transitions. [2022-04-28 04:18:18,450 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 04:18:18,458 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 103 transitions. [2022-04-28 04:18:18,458 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 103 transitions. [2022-04-28 04:18:18,553 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 103 edges. 103 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:18:18,557 INFO L225 Difference]: With dead ends: 100 [2022-04-28 04:18:18,558 INFO L226 Difference]: Without dead ends: 93 [2022-04-28 04:18:18,558 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 60 GetRequests, 47 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=47, Invalid=135, Unknown=0, NotChecked=0, Total=182 [2022-04-28 04:18:18,559 INFO L413 NwaCegarLoop]: 47 mSDtfsCounter, 71 mSDsluCounter, 169 mSDsCounter, 0 mSdLazyCounter, 127 mSolverCounterSat, 49 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 75 SdHoareTripleChecker+Valid, 216 SdHoareTripleChecker+Invalid, 176 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 49 IncrementalHoareTripleChecker+Valid, 127 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 04:18:18,559 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [75 Valid, 216 Invalid, 176 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [49 Valid, 127 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 04:18:18,560 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 93 states. [2022-04-28 04:18:18,643 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 93 to 68. [2022-04-28 04:18:18,643 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:18:18,643 INFO L82 GeneralOperation]: Start isEquivalent. First operand 93 states. Second operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 04:18:18,644 INFO L74 IsIncluded]: Start isIncluded. First operand 93 states. Second operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 04:18:18,644 INFO L87 Difference]: Start difference. First operand 93 states. Second operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 04:18:18,649 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:18:18,650 INFO L93 Difference]: Finished difference Result 93 states and 131 transitions. [2022-04-28 04:18:18,650 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 131 transitions. [2022-04-28 04:18:18,651 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:18:18,651 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:18:18,651 INFO L74 IsIncluded]: Start isIncluded. First operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 93 states. [2022-04-28 04:18:18,652 INFO L87 Difference]: Start difference. First operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 93 states. [2022-04-28 04:18:18,657 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:18:18,657 INFO L93 Difference]: Finished difference Result 93 states and 131 transitions. [2022-04-28 04:18:18,657 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 131 transitions. [2022-04-28 04:18:18,658 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:18:18,658 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:18:18,658 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:18:18,658 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:18:18,659 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 68 states, 46 states have (on average 1.2608695652173914) internal successors, (58), 47 states have internal predecessors, (58), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 04:18:18,662 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 90 transitions. [2022-04-28 04:18:18,662 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 90 transitions. Word has length 28 [2022-04-28 04:18:18,662 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:18:18,662 INFO L495 AbstractCegarLoop]: Abstraction has 68 states and 90 transitions. [2022-04-28 04:18:18,663 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 04:18:18,663 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 68 states and 90 transitions. [2022-04-28 04:18:18,764 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:18:18,764 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 90 transitions. [2022-04-28 04:18:18,765 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-28 04:18:18,765 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:18:18,765 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:18:18,791 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-28 04:18:18,967 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-28 04:18:18,968 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:18:18,968 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:18:18,968 INFO L85 PathProgramCache]: Analyzing trace with hash -709867384, now seen corresponding path program 1 times [2022-04-28 04:18:18,968 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:18:18,968 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [538516815] [2022-04-28 04:18:18,969 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:18:18,969 INFO L85 PathProgramCache]: Analyzing trace with hash -709867384, now seen corresponding path program 2 times [2022-04-28 04:18:18,969 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:18:18,969 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2016146796] [2022-04-28 04:18:18,969 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:18:18,969 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:18:18,989 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:18:18,989 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [340624302] [2022-04-28 04:18:18,990 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 04:18:18,990 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:18:18,990 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:18:18,991 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:18:19,001 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-28 04:18:19,040 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 04:18:19,040 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:18:19,041 INFO L263 TraceCheckSpWp]: Trace formula consists of 121 conjuncts, 30 conjunts are in the unsatisfiable core [2022-04-28 04:18:19,060 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:18:19,061 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:18:19,371 INFO L272 TraceCheckUtils]: 0: Hoare triple {1396#true} call ULTIMATE.init(); {1396#true} is VALID [2022-04-28 04:18:19,371 INFO L290 TraceCheckUtils]: 1: Hoare triple {1396#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {1396#true} is VALID [2022-04-28 04:18:19,372 INFO L290 TraceCheckUtils]: 2: Hoare triple {1396#true} assume true; {1396#true} is VALID [2022-04-28 04:18:19,372 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1396#true} {1396#true} #105#return; {1396#true} is VALID [2022-04-28 04:18:19,372 INFO L272 TraceCheckUtils]: 4: Hoare triple {1396#true} call #t~ret6 := main(); {1396#true} is VALID [2022-04-28 04:18:19,372 INFO L290 TraceCheckUtils]: 5: Hoare triple {1396#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1396#true} is VALID [2022-04-28 04:18:19,372 INFO L272 TraceCheckUtils]: 6: Hoare triple {1396#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1396#true} is VALID [2022-04-28 04:18:19,384 INFO L290 TraceCheckUtils]: 7: Hoare triple {1396#true} ~cond := #in~cond; {1422#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 04:18:19,384 INFO L290 TraceCheckUtils]: 8: Hoare triple {1422#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1426#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:18:19,385 INFO L290 TraceCheckUtils]: 9: Hoare triple {1426#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1426#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:18:19,385 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1426#(not (= |assume_abort_if_not_#in~cond| 0))} {1396#true} #91#return; {1433#(<= 1 main_~x~0)} is VALID [2022-04-28 04:18:19,386 INFO L272 TraceCheckUtils]: 11: Hoare triple {1433#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1396#true} is VALID [2022-04-28 04:18:19,386 INFO L290 TraceCheckUtils]: 12: Hoare triple {1396#true} ~cond := #in~cond; {1396#true} is VALID [2022-04-28 04:18:19,386 INFO L290 TraceCheckUtils]: 13: Hoare triple {1396#true} assume !(0 == ~cond); {1396#true} is VALID [2022-04-28 04:18:19,386 INFO L290 TraceCheckUtils]: 14: Hoare triple {1396#true} assume true; {1396#true} is VALID [2022-04-28 04:18:19,387 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1396#true} {1433#(<= 1 main_~x~0)} #93#return; {1433#(<= 1 main_~x~0)} is VALID [2022-04-28 04:18:19,388 INFO L290 TraceCheckUtils]: 16: Hoare triple {1433#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1452#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 04:18:19,388 INFO L290 TraceCheckUtils]: 17: Hoare triple {1452#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {1452#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 04:18:19,389 INFO L290 TraceCheckUtils]: 18: Hoare triple {1452#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1459#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 04:18:19,389 INFO L290 TraceCheckUtils]: 19: Hoare triple {1459#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {1459#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 04:18:19,390 INFO L290 TraceCheckUtils]: 20: Hoare triple {1459#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {1459#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 04:18:19,391 INFO L290 TraceCheckUtils]: 21: Hoare triple {1459#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 04:18:19,391 INFO L290 TraceCheckUtils]: 22: Hoare triple {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !false; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 04:18:19,392 INFO L290 TraceCheckUtils]: 23: Hoare triple {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 04:18:19,392 INFO L290 TraceCheckUtils]: 24: Hoare triple {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !false; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 04:18:19,393 INFO L290 TraceCheckUtils]: 25: Hoare triple {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 04:18:19,393 INFO L290 TraceCheckUtils]: 26: Hoare triple {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !false; {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 04:18:19,394 INFO L272 TraceCheckUtils]: 27: Hoare triple {1469#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1488#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:18:19,395 INFO L290 TraceCheckUtils]: 28: Hoare triple {1488#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1492#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:18:19,395 INFO L290 TraceCheckUtils]: 29: Hoare triple {1492#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1397#false} is VALID [2022-04-28 04:18:19,395 INFO L290 TraceCheckUtils]: 30: Hoare triple {1397#false} assume !false; {1397#false} is VALID [2022-04-28 04:18:19,396 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:18:19,396 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:18:19,618 INFO L290 TraceCheckUtils]: 30: Hoare triple {1397#false} assume !false; {1397#false} is VALID [2022-04-28 04:18:19,618 INFO L290 TraceCheckUtils]: 29: Hoare triple {1492#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1397#false} is VALID [2022-04-28 04:18:19,619 INFO L290 TraceCheckUtils]: 28: Hoare triple {1488#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1492#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:18:19,619 INFO L272 TraceCheckUtils]: 27: Hoare triple {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1488#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:18:19,620 INFO L290 TraceCheckUtils]: 26: Hoare triple {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 04:18:19,620 INFO L290 TraceCheckUtils]: 25: Hoare triple {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 04:18:19,621 INFO L290 TraceCheckUtils]: 24: Hoare triple {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 04:18:19,621 INFO L290 TraceCheckUtils]: 23: Hoare triple {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 04:18:19,622 INFO L290 TraceCheckUtils]: 22: Hoare triple {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 04:18:19,622 INFO L290 TraceCheckUtils]: 21: Hoare triple {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {1508#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 04:18:19,623 INFO L290 TraceCheckUtils]: 20: Hoare triple {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:18:19,623 INFO L290 TraceCheckUtils]: 19: Hoare triple {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:18:19,623 INFO L290 TraceCheckUtils]: 18: Hoare triple {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:18:19,624 INFO L290 TraceCheckUtils]: 17: Hoare triple {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:18:19,624 INFO L290 TraceCheckUtils]: 16: Hoare triple {1396#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1527#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:18:19,624 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1396#true} {1396#true} #93#return; {1396#true} is VALID [2022-04-28 04:18:19,625 INFO L290 TraceCheckUtils]: 14: Hoare triple {1396#true} assume true; {1396#true} is VALID [2022-04-28 04:18:19,625 INFO L290 TraceCheckUtils]: 13: Hoare triple {1396#true} assume !(0 == ~cond); {1396#true} is VALID [2022-04-28 04:18:19,625 INFO L290 TraceCheckUtils]: 12: Hoare triple {1396#true} ~cond := #in~cond; {1396#true} is VALID [2022-04-28 04:18:19,625 INFO L272 TraceCheckUtils]: 11: Hoare triple {1396#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1396#true} is VALID [2022-04-28 04:18:19,625 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1396#true} {1396#true} #91#return; {1396#true} is VALID [2022-04-28 04:18:19,625 INFO L290 TraceCheckUtils]: 9: Hoare triple {1396#true} assume true; {1396#true} is VALID [2022-04-28 04:18:19,625 INFO L290 TraceCheckUtils]: 8: Hoare triple {1396#true} assume !(0 == ~cond); {1396#true} is VALID [2022-04-28 04:18:19,625 INFO L290 TraceCheckUtils]: 7: Hoare triple {1396#true} ~cond := #in~cond; {1396#true} is VALID [2022-04-28 04:18:19,626 INFO L272 TraceCheckUtils]: 6: Hoare triple {1396#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1396#true} is VALID [2022-04-28 04:18:19,626 INFO L290 TraceCheckUtils]: 5: Hoare triple {1396#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1396#true} is VALID [2022-04-28 04:18:19,626 INFO L272 TraceCheckUtils]: 4: Hoare triple {1396#true} call #t~ret6 := main(); {1396#true} is VALID [2022-04-28 04:18:19,626 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1396#true} {1396#true} #105#return; {1396#true} is VALID [2022-04-28 04:18:19,626 INFO L290 TraceCheckUtils]: 2: Hoare triple {1396#true} assume true; {1396#true} is VALID [2022-04-28 04:18:19,626 INFO L290 TraceCheckUtils]: 1: Hoare triple {1396#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {1396#true} is VALID [2022-04-28 04:18:19,626 INFO L272 TraceCheckUtils]: 0: Hoare triple {1396#true} call ULTIMATE.init(); {1396#true} is VALID [2022-04-28 04:18:19,627 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 04:18:19,627 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:18:19,627 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2016146796] [2022-04-28 04:18:19,627 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:18:19,627 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [340624302] [2022-04-28 04:18:19,627 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [340624302] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:18:19,627 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 04:18:19,627 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 6] total 12 [2022-04-28 04:18:19,628 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:18:19,628 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [538516815] [2022-04-28 04:18:19,628 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [538516815] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:18:19,628 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:18:19,628 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 04:18:19,628 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1314822610] [2022-04-28 04:18:19,628 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:18:19,629 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 31 [2022-04-28 04:18:19,629 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:18:19,629 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 04:18:19,651 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-28 04:18:19,651 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 04:18:19,652 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:18:19,652 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 04:18:19,652 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=105, Unknown=0, NotChecked=0, Total=132 [2022-04-28 04:18:19,653 INFO L87 Difference]: Start difference. First operand 68 states and 90 transitions. Second operand has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 04:18:20,670 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:18:20,671 INFO L93 Difference]: Finished difference Result 115 states and 154 transitions. [2022-04-28 04:18:20,671 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 04:18:20,671 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 31 [2022-04-28 04:18:20,671 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:18:20,671 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 04:18:20,674 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 98 transitions. [2022-04-28 04:18:20,674 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 04:18:20,676 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 98 transitions. [2022-04-28 04:18:20,676 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 98 transitions. [2022-04-28 04:18:20,776 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 98 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:18:20,779 INFO L225 Difference]: With dead ends: 115 [2022-04-28 04:18:20,779 INFO L226 Difference]: Without dead ends: 113 [2022-04-28 04:18:20,779 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 64 GetRequests, 50 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 25 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=41, Invalid=169, Unknown=0, NotChecked=0, Total=210 [2022-04-28 04:18:20,780 INFO L413 NwaCegarLoop]: 50 mSDtfsCounter, 60 mSDsluCounter, 184 mSDsCounter, 0 mSdLazyCounter, 204 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 72 SdHoareTripleChecker+Valid, 234 SdHoareTripleChecker+Invalid, 231 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 204 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 04:18:20,781 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [72 Valid, 234 Invalid, 231 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 204 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 04:18:20,781 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 113 states. [2022-04-28 04:18:20,920 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 113 to 102. [2022-04-28 04:18:20,920 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:18:20,921 INFO L82 GeneralOperation]: Start isEquivalent. First operand 113 states. Second operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 04:18:20,922 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 04:18:20,923 INFO L87 Difference]: Start difference. First operand 113 states. Second operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 04:18:20,933 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:18:20,934 INFO L93 Difference]: Finished difference Result 113 states and 152 transitions. [2022-04-28 04:18:20,934 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 152 transitions. [2022-04-28 04:18:20,935 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:18:20,936 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:18:20,938 INFO L74 IsIncluded]: Start isIncluded. First operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 113 states. [2022-04-28 04:18:20,939 INFO L87 Difference]: Start difference. First operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 113 states. [2022-04-28 04:18:20,944 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:18:20,945 INFO L93 Difference]: Finished difference Result 113 states and 152 transitions. [2022-04-28 04:18:20,945 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 152 transitions. [2022-04-28 04:18:20,945 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:18:20,945 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:18:20,946 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:18:20,946 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:18:20,946 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 102 states, 70 states have (on average 1.2571428571428571) internal successors, (88), 71 states have internal predecessors, (88), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 04:18:20,951 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 102 states to 102 states and 136 transitions. [2022-04-28 04:18:20,951 INFO L78 Accepts]: Start accepts. Automaton has 102 states and 136 transitions. Word has length 31 [2022-04-28 04:18:20,951 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:18:20,951 INFO L495 AbstractCegarLoop]: Abstraction has 102 states and 136 transitions. [2022-04-28 04:18:20,952 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.3) internal successors, (23), 8 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 04:18:20,952 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 102 states and 136 transitions. [2022-04-28 04:18:21,114 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 136 edges. 136 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:18:21,114 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 136 transitions. [2022-04-28 04:18:21,115 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-28 04:18:21,115 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:18:21,115 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:18:21,140 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-28 04:18:21,315 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:18:21,316 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:18:21,316 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:18:21,316 INFO L85 PathProgramCache]: Analyzing trace with hash 1696776659, now seen corresponding path program 1 times [2022-04-28 04:18:21,316 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:18:21,316 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [816163629] [2022-04-28 04:18:21,317 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:18:21,317 INFO L85 PathProgramCache]: Analyzing trace with hash 1696776659, now seen corresponding path program 2 times [2022-04-28 04:18:21,317 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:18:21,317 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1042463696] [2022-04-28 04:18:21,317 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:18:21,317 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:18:21,479 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:18:21,480 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [506287331] [2022-04-28 04:18:21,480 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 04:18:21,480 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:18:21,480 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:18:21,487 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:18:21,490 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-28 04:18:21,526 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 04:18:21,527 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:18:21,527 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 04:18:21,536 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:18:21,537 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:18:21,775 INFO L272 TraceCheckUtils]: 0: Hoare triple {2259#true} call ULTIMATE.init(); {2259#true} is VALID [2022-04-28 04:18:21,776 INFO L290 TraceCheckUtils]: 1: Hoare triple {2259#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {2259#true} is VALID [2022-04-28 04:18:21,776 INFO L290 TraceCheckUtils]: 2: Hoare triple {2259#true} assume true; {2259#true} is VALID [2022-04-28 04:18:21,776 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2259#true} {2259#true} #105#return; {2259#true} is VALID [2022-04-28 04:18:21,776 INFO L272 TraceCheckUtils]: 4: Hoare triple {2259#true} call #t~ret6 := main(); {2259#true} is VALID [2022-04-28 04:18:21,776 INFO L290 TraceCheckUtils]: 5: Hoare triple {2259#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2259#true} is VALID [2022-04-28 04:18:21,776 INFO L272 TraceCheckUtils]: 6: Hoare triple {2259#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2259#true} is VALID [2022-04-28 04:18:21,777 INFO L290 TraceCheckUtils]: 7: Hoare triple {2259#true} ~cond := #in~cond; {2259#true} is VALID [2022-04-28 04:18:21,777 INFO L290 TraceCheckUtils]: 8: Hoare triple {2259#true} assume !(0 == ~cond); {2259#true} is VALID [2022-04-28 04:18:21,777 INFO L290 TraceCheckUtils]: 9: Hoare triple {2259#true} assume true; {2259#true} is VALID [2022-04-28 04:18:21,777 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2259#true} {2259#true} #91#return; {2259#true} is VALID [2022-04-28 04:18:21,777 INFO L272 TraceCheckUtils]: 11: Hoare triple {2259#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2259#true} is VALID [2022-04-28 04:18:21,778 INFO L290 TraceCheckUtils]: 12: Hoare triple {2259#true} ~cond := #in~cond; {2300#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 04:18:21,778 INFO L290 TraceCheckUtils]: 13: Hoare triple {2300#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2304#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:18:21,779 INFO L290 TraceCheckUtils]: 14: Hoare triple {2304#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2304#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:18:21,779 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2304#(not (= |assume_abort_if_not_#in~cond| 0))} {2259#true} #93#return; {2311#(<= 1 main_~y~0)} is VALID [2022-04-28 04:18:21,780 INFO L290 TraceCheckUtils]: 16: Hoare triple {2311#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2315#(<= 1 main_~b~0)} is VALID [2022-04-28 04:18:21,780 INFO L290 TraceCheckUtils]: 17: Hoare triple {2315#(<= 1 main_~b~0)} assume !false; {2315#(<= 1 main_~b~0)} is VALID [2022-04-28 04:18:21,781 INFO L290 TraceCheckUtils]: 18: Hoare triple {2315#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 04:18:21,781 INFO L290 TraceCheckUtils]: 19: Hoare triple {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !false; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 04:18:21,782 INFO L290 TraceCheckUtils]: 20: Hoare triple {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 04:18:21,782 INFO L290 TraceCheckUtils]: 21: Hoare triple {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !false; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 04:18:21,782 INFO L272 TraceCheckUtils]: 22: Hoare triple {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2259#true} is VALID [2022-04-28 04:18:21,782 INFO L290 TraceCheckUtils]: 23: Hoare triple {2259#true} ~cond := #in~cond; {2259#true} is VALID [2022-04-28 04:18:21,783 INFO L290 TraceCheckUtils]: 24: Hoare triple {2259#true} assume !(0 == ~cond); {2259#true} is VALID [2022-04-28 04:18:21,783 INFO L290 TraceCheckUtils]: 25: Hoare triple {2259#true} assume true; {2259#true} is VALID [2022-04-28 04:18:21,788 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2259#true} {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #95#return; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 04:18:21,788 INFO L272 TraceCheckUtils]: 27: Hoare triple {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2259#true} is VALID [2022-04-28 04:18:21,788 INFO L290 TraceCheckUtils]: 28: Hoare triple {2259#true} ~cond := #in~cond; {2259#true} is VALID [2022-04-28 04:18:21,788 INFO L290 TraceCheckUtils]: 29: Hoare triple {2259#true} assume !(0 == ~cond); {2259#true} is VALID [2022-04-28 04:18:21,788 INFO L290 TraceCheckUtils]: 30: Hoare triple {2259#true} assume true; {2259#true} is VALID [2022-04-28 04:18:21,789 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2259#true} {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #97#return; {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 04:18:21,790 INFO L272 TraceCheckUtils]: 32: Hoare triple {2322#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2365#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:18:21,791 INFO L290 TraceCheckUtils]: 33: Hoare triple {2365#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2369#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:18:21,791 INFO L290 TraceCheckUtils]: 34: Hoare triple {2369#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2260#false} is VALID [2022-04-28 04:18:21,791 INFO L290 TraceCheckUtils]: 35: Hoare triple {2260#false} assume !false; {2260#false} is VALID [2022-04-28 04:18:21,791 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 7 proven. 0 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-28 04:18:21,791 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 04:18:21,792 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:18:21,792 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1042463696] [2022-04-28 04:18:21,792 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:18:21,792 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [506287331] [2022-04-28 04:18:21,792 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [506287331] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:18:21,792 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:18:21,792 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 04:18:21,793 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:18:21,793 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [816163629] [2022-04-28 04:18:21,793 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [816163629] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:18:21,793 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:18:21,793 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 04:18:21,793 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [428558565] [2022-04-28 04:18:21,793 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:18:21,793 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 36 [2022-04-28 04:18:21,794 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:18:21,794 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 04:18:21,821 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-28 04:18:21,821 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 04:18:21,821 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:18:21,822 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 04:18:21,822 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-04-28 04:18:21,822 INFO L87 Difference]: Start difference. First operand 102 states and 136 transitions. Second operand has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 04:18:22,535 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:18:22,535 INFO L93 Difference]: Finished difference Result 115 states and 153 transitions. [2022-04-28 04:18:22,535 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 04:18:22,535 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 36 [2022-04-28 04:18:22,535 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:18:22,536 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 04:18:22,537 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 78 transitions. [2022-04-28 04:18:22,537 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 04:18:22,539 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 78 transitions. [2022-04-28 04:18:22,539 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 78 transitions. [2022-04-28 04:18:22,600 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:18:22,603 INFO L225 Difference]: With dead ends: 115 [2022-04-28 04:18:22,603 INFO L226 Difference]: Without dead ends: 113 [2022-04-28 04:18:22,604 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 39 GetRequests, 28 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=34, Invalid=122, Unknown=0, NotChecked=0, Total=156 [2022-04-28 04:18:22,604 INFO L413 NwaCegarLoop]: 36 mSDtfsCounter, 41 mSDsluCounter, 173 mSDsCounter, 0 mSdLazyCounter, 149 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 45 SdHoareTripleChecker+Valid, 209 SdHoareTripleChecker+Invalid, 168 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 149 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 04:18:22,605 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [45 Valid, 209 Invalid, 168 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 149 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 04:18:22,605 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 113 states. [2022-04-28 04:18:22,792 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 113 to 112. [2022-04-28 04:18:22,792 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:18:22,793 INFO L82 GeneralOperation]: Start isEquivalent. First operand 113 states. Second operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 04:18:22,793 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 04:18:22,794 INFO L87 Difference]: Start difference. First operand 113 states. Second operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 04:18:22,799 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:18:22,799 INFO L93 Difference]: Finished difference Result 113 states and 151 transitions. [2022-04-28 04:18:22,799 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 151 transitions. [2022-04-28 04:18:22,800 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:18:22,800 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:18:22,800 INFO L74 IsIncluded]: Start isIncluded. First operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 113 states. [2022-04-28 04:18:22,801 INFO L87 Difference]: Start difference. First operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 113 states. [2022-04-28 04:18:22,805 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:18:22,806 INFO L93 Difference]: Finished difference Result 113 states and 151 transitions. [2022-04-28 04:18:22,806 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 151 transitions. [2022-04-28 04:18:22,806 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:18:22,806 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:18:22,806 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:18:22,806 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:18:22,807 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 112 states, 75 states have (on average 1.2533333333333334) internal successors, (94), 76 states have internal predecessors, (94), 29 states have call successors, (29), 8 states have call predecessors, (29), 7 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 04:18:22,812 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 112 states and 150 transitions. [2022-04-28 04:18:22,812 INFO L78 Accepts]: Start accepts. Automaton has 112 states and 150 transitions. Word has length 36 [2022-04-28 04:18:22,812 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:18:22,812 INFO L495 AbstractCegarLoop]: Abstraction has 112 states and 150 transitions. [2022-04-28 04:18:22,813 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.3333333333333335) internal successors, (21), 7 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 04:18:22,813 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 112 states and 150 transitions. [2022-04-28 04:18:22,999 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 150 edges. 150 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:18:23,000 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 150 transitions. [2022-04-28 04:18:23,000 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-28 04:18:23,000 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:18:23,001 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:18:23,027 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-28 04:18:23,201 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:18:23,201 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:18:23,202 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:18:23,202 INFO L85 PathProgramCache]: Analyzing trace with hash 331267880, now seen corresponding path program 1 times [2022-04-28 04:18:23,202 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:18:23,202 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [328615086] [2022-04-28 04:18:23,202 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:18:23,203 INFO L85 PathProgramCache]: Analyzing trace with hash 331267880, now seen corresponding path program 2 times [2022-04-28 04:18:23,203 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:18:23,203 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [559423066] [2022-04-28 04:18:23,203 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:18:23,203 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:18:23,215 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:18:23,216 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [680455131] [2022-04-28 04:18:23,216 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 04:18:23,216 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:18:23,216 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:18:23,217 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:18:23,218 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-28 04:18:23,263 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 04:18:23,264 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:18:23,265 INFO L263 TraceCheckSpWp]: Trace formula consists of 130 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-28 04:18:23,276 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:18:23,279 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:18:32,946 INFO L272 TraceCheckUtils]: 0: Hoare triple {3063#true} call ULTIMATE.init(); {3063#true} is VALID [2022-04-28 04:18:32,946 INFO L290 TraceCheckUtils]: 1: Hoare triple {3063#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {3063#true} is VALID [2022-04-28 04:18:32,946 INFO L290 TraceCheckUtils]: 2: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-28 04:18:32,946 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3063#true} {3063#true} #105#return; {3063#true} is VALID [2022-04-28 04:18:32,946 INFO L272 TraceCheckUtils]: 4: Hoare triple {3063#true} call #t~ret6 := main(); {3063#true} is VALID [2022-04-28 04:18:32,947 INFO L290 TraceCheckUtils]: 5: Hoare triple {3063#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3063#true} is VALID [2022-04-28 04:18:32,947 INFO L272 TraceCheckUtils]: 6: Hoare triple {3063#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3063#true} is VALID [2022-04-28 04:18:32,947 INFO L290 TraceCheckUtils]: 7: Hoare triple {3063#true} ~cond := #in~cond; {3063#true} is VALID [2022-04-28 04:18:32,947 INFO L290 TraceCheckUtils]: 8: Hoare triple {3063#true} assume !(0 == ~cond); {3063#true} is VALID [2022-04-28 04:18:32,947 INFO L290 TraceCheckUtils]: 9: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-28 04:18:32,947 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3063#true} {3063#true} #91#return; {3063#true} is VALID [2022-04-28 04:18:32,947 INFO L272 TraceCheckUtils]: 11: Hoare triple {3063#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3063#true} is VALID [2022-04-28 04:18:32,948 INFO L290 TraceCheckUtils]: 12: Hoare triple {3063#true} ~cond := #in~cond; {3104#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 04:18:32,948 INFO L290 TraceCheckUtils]: 13: Hoare triple {3104#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3108#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:18:32,949 INFO L290 TraceCheckUtils]: 14: Hoare triple {3108#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3108#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:18:32,949 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3108#(not (= |assume_abort_if_not_#in~cond| 0))} {3063#true} #93#return; {3115#(<= 1 main_~y~0)} is VALID [2022-04-28 04:18:32,950 INFO L290 TraceCheckUtils]: 16: Hoare triple {3115#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3119#(and (= main_~r~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:18:32,950 INFO L290 TraceCheckUtils]: 17: Hoare triple {3119#(and (= main_~r~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {3119#(and (= main_~r~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:18:32,951 INFO L290 TraceCheckUtils]: 18: Hoare triple {3119#(and (= main_~r~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:18:32,951 INFO L290 TraceCheckUtils]: 19: Hoare triple {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:18:32,952 INFO L290 TraceCheckUtils]: 20: Hoare triple {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:18:32,953 INFO L290 TraceCheckUtils]: 21: Hoare triple {3126#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 04:18:32,953 INFO L290 TraceCheckUtils]: 22: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 04:18:32,954 INFO L290 TraceCheckUtils]: 23: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 04:18:32,954 INFO L290 TraceCheckUtils]: 24: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 04:18:32,972 INFO L290 TraceCheckUtils]: 25: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 04:18:32,973 INFO L290 TraceCheckUtils]: 26: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 04:18:32,973 INFO L272 TraceCheckUtils]: 27: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3063#true} is VALID [2022-04-28 04:18:32,973 INFO L290 TraceCheckUtils]: 28: Hoare triple {3063#true} ~cond := #in~cond; {3063#true} is VALID [2022-04-28 04:18:32,974 INFO L290 TraceCheckUtils]: 29: Hoare triple {3063#true} assume !(0 == ~cond); {3063#true} is VALID [2022-04-28 04:18:32,974 INFO L290 TraceCheckUtils]: 30: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-28 04:18:32,975 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3063#true} {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #95#return; {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 04:18:32,975 INFO L272 TraceCheckUtils]: 32: Hoare triple {3136#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3170#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:18:32,976 INFO L290 TraceCheckUtils]: 33: Hoare triple {3170#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3174#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:18:32,976 INFO L290 TraceCheckUtils]: 34: Hoare triple {3174#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3064#false} is VALID [2022-04-28 04:18:32,976 INFO L290 TraceCheckUtils]: 35: Hoare triple {3064#false} assume !false; {3064#false} is VALID [2022-04-28 04:18:32,977 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 5 proven. 4 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:18:32,977 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:19:59,051 INFO L290 TraceCheckUtils]: 35: Hoare triple {3064#false} assume !false; {3064#false} is VALID [2022-04-28 04:19:59,053 INFO L290 TraceCheckUtils]: 34: Hoare triple {3174#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3064#false} is VALID [2022-04-28 04:19:59,053 INFO L290 TraceCheckUtils]: 33: Hoare triple {3170#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3174#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:19:59,054 INFO L272 TraceCheckUtils]: 32: Hoare triple {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3170#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:19:59,056 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3063#true} {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #95#return; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:19:59,056 INFO L290 TraceCheckUtils]: 30: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-28 04:19:59,056 INFO L290 TraceCheckUtils]: 29: Hoare triple {3063#true} assume !(0 == ~cond); {3063#true} is VALID [2022-04-28 04:19:59,056 INFO L290 TraceCheckUtils]: 28: Hoare triple {3063#true} ~cond := #in~cond; {3063#true} is VALID [2022-04-28 04:19:59,056 INFO L272 TraceCheckUtils]: 27: Hoare triple {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3063#true} is VALID [2022-04-28 04:19:59,058 INFO L290 TraceCheckUtils]: 26: Hoare triple {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:19:59,059 INFO L290 TraceCheckUtils]: 25: Hoare triple {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:19:59,060 INFO L290 TraceCheckUtils]: 24: Hoare triple {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:19:59,060 INFO L290 TraceCheckUtils]: 23: Hoare triple {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:19:59,061 INFO L290 TraceCheckUtils]: 22: Hoare triple {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:19:59,303 INFO L290 TraceCheckUtils]: 21: Hoare triple {3224#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3190#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:19:59,303 INFO L290 TraceCheckUtils]: 20: Hoare triple {3224#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} assume !(~c~0 >= ~b~0); {3224#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} is VALID [2022-04-28 04:19:59,304 INFO L290 TraceCheckUtils]: 19: Hoare triple {3224#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} assume !false; {3224#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} is VALID [2022-04-28 04:19:59,308 INFO L290 TraceCheckUtils]: 18: Hoare triple {3234#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3224#(forall ((main_~s~0 Int)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0))} is VALID [2022-04-28 04:19:59,308 INFO L290 TraceCheckUtils]: 17: Hoare triple {3234#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {3234#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 04:19:59,309 INFO L290 TraceCheckUtils]: 16: Hoare triple {3063#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3234#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 04:19:59,309 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3063#true} {3063#true} #93#return; {3063#true} is VALID [2022-04-28 04:19:59,309 INFO L290 TraceCheckUtils]: 14: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-28 04:19:59,309 INFO L290 TraceCheckUtils]: 13: Hoare triple {3063#true} assume !(0 == ~cond); {3063#true} is VALID [2022-04-28 04:19:59,309 INFO L290 TraceCheckUtils]: 12: Hoare triple {3063#true} ~cond := #in~cond; {3063#true} is VALID [2022-04-28 04:19:59,309 INFO L272 TraceCheckUtils]: 11: Hoare triple {3063#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3063#true} is VALID [2022-04-28 04:19:59,310 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3063#true} {3063#true} #91#return; {3063#true} is VALID [2022-04-28 04:19:59,310 INFO L290 TraceCheckUtils]: 9: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-28 04:19:59,310 INFO L290 TraceCheckUtils]: 8: Hoare triple {3063#true} assume !(0 == ~cond); {3063#true} is VALID [2022-04-28 04:19:59,310 INFO L290 TraceCheckUtils]: 7: Hoare triple {3063#true} ~cond := #in~cond; {3063#true} is VALID [2022-04-28 04:19:59,310 INFO L272 TraceCheckUtils]: 6: Hoare triple {3063#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3063#true} is VALID [2022-04-28 04:19:59,310 INFO L290 TraceCheckUtils]: 5: Hoare triple {3063#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3063#true} is VALID [2022-04-28 04:19:59,310 INFO L272 TraceCheckUtils]: 4: Hoare triple {3063#true} call #t~ret6 := main(); {3063#true} is VALID [2022-04-28 04:19:59,310 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3063#true} {3063#true} #105#return; {3063#true} is VALID [2022-04-28 04:19:59,310 INFO L290 TraceCheckUtils]: 2: Hoare triple {3063#true} assume true; {3063#true} is VALID [2022-04-28 04:19:59,310 INFO L290 TraceCheckUtils]: 1: Hoare triple {3063#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {3063#true} is VALID [2022-04-28 04:19:59,310 INFO L272 TraceCheckUtils]: 0: Hoare triple {3063#true} call ULTIMATE.init(); {3063#true} is VALID [2022-04-28 04:19:59,310 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 2 proven. 4 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 04:19:59,311 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:19:59,311 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [559423066] [2022-04-28 04:19:59,311 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:19:59,311 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [680455131] [2022-04-28 04:19:59,311 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [680455131] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:19:59,311 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 04:19:59,311 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 7] total 13 [2022-04-28 04:19:59,311 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:19:59,312 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [328615086] [2022-04-28 04:19:59,312 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [328615086] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:19:59,312 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:19:59,312 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 04:19:59,312 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1858017411] [2022-04-28 04:19:59,312 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:19:59,312 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 36 [2022-04-28 04:19:59,313 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:19:59,313 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 04:19:59,340 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:19:59,341 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 04:19:59,341 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:19:59,341 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 04:19:59,341 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=29, Invalid=127, Unknown=0, NotChecked=0, Total=156 [2022-04-28 04:19:59,341 INFO L87 Difference]: Start difference. First operand 112 states and 150 transitions. Second operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 04:20:00,352 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:20:00,352 INFO L93 Difference]: Finished difference Result 121 states and 158 transitions. [2022-04-28 04:20:00,353 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 04:20:00,353 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 36 [2022-04-28 04:20:00,353 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:20:00,353 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 04:20:00,355 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 96 transitions. [2022-04-28 04:20:00,355 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 04:20:00,363 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 96 transitions. [2022-04-28 04:20:00,363 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 96 transitions. [2022-04-28 04:20:00,461 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-28 04:20:00,463 INFO L225 Difference]: With dead ends: 121 [2022-04-28 04:20:00,464 INFO L226 Difference]: Without dead ends: 119 [2022-04-28 04:20:00,464 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 74 GetRequests, 59 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 30 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=44, Invalid=196, Unknown=0, NotChecked=0, Total=240 [2022-04-28 04:20:00,465 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 51 mSDsluCounter, 186 mSDsCounter, 0 mSdLazyCounter, 247 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 62 SdHoareTripleChecker+Valid, 230 SdHoareTripleChecker+Invalid, 265 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 247 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 04:20:00,465 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [62 Valid, 230 Invalid, 265 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 247 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 04:20:00,466 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 119 states. [2022-04-28 04:20:00,681 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 119 to 116. [2022-04-28 04:20:00,681 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:20:00,682 INFO L82 GeneralOperation]: Start isEquivalent. First operand 119 states. Second operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 04:20:00,682 INFO L74 IsIncluded]: Start isIncluded. First operand 119 states. Second operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 04:20:00,682 INFO L87 Difference]: Start difference. First operand 119 states. Second operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 04:20:00,686 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:20:00,687 INFO L93 Difference]: Finished difference Result 119 states and 156 transitions. [2022-04-28 04:20:00,687 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 156 transitions. [2022-04-28 04:20:00,687 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:20:00,687 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:20:00,688 INFO L74 IsIncluded]: Start isIncluded. First operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 119 states. [2022-04-28 04:20:00,688 INFO L87 Difference]: Start difference. First operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 119 states. [2022-04-28 04:20:00,692 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:20:00,692 INFO L93 Difference]: Finished difference Result 119 states and 156 transitions. [2022-04-28 04:20:00,692 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 156 transitions. [2022-04-28 04:20:00,693 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:20:00,693 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:20:00,693 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:20:00,693 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:20:00,693 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 116 states, 78 states have (on average 1.2435897435897436) internal successors, (97), 79 states have internal predecessors, (97), 29 states have call successors, (29), 9 states have call predecessors, (29), 8 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 04:20:00,697 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 116 states to 116 states and 153 transitions. [2022-04-28 04:20:00,697 INFO L78 Accepts]: Start accepts. Automaton has 116 states and 153 transitions. Word has length 36 [2022-04-28 04:20:00,698 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:20:00,698 INFO L495 AbstractCegarLoop]: Abstraction has 116 states and 153 transitions. [2022-04-28 04:20:00,698 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.6) internal successors, (26), 8 states have internal predecessors, (26), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-28 04:20:00,698 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 116 states and 153 transitions. [2022-04-28 04:20:00,902 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 153 edges. 153 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:20:00,902 INFO L276 IsEmpty]: Start isEmpty. Operand 116 states and 153 transitions. [2022-04-28 04:20:00,903 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-28 04:20:00,903 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:20:00,903 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:20:00,930 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-28 04:20:01,103 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:20:01,104 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:20:01,104 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:20:01,104 INFO L85 PathProgramCache]: Analyzing trace with hash 2006454515, now seen corresponding path program 3 times [2022-04-28 04:20:01,104 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:20:01,104 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1922347169] [2022-04-28 04:20:01,105 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:20:01,105 INFO L85 PathProgramCache]: Analyzing trace with hash 2006454515, now seen corresponding path program 4 times [2022-04-28 04:20:01,105 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:20:01,105 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1564849227] [2022-04-28 04:20:01,105 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:20:01,105 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:20:01,117 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:20:01,117 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1213719124] [2022-04-28 04:20:01,117 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 04:20:01,118 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:20:01,118 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:20:01,120 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:20:01,121 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-28 04:20:01,170 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 04:20:01,170 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:20:01,171 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 04:20:01,192 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:20:01,193 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:20:01,304 INFO L272 TraceCheckUtils]: 0: Hoare triple {4009#true} call ULTIMATE.init(); {4009#true} is VALID [2022-04-28 04:20:01,305 INFO L290 TraceCheckUtils]: 1: Hoare triple {4009#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {4009#true} is VALID [2022-04-28 04:20:01,305 INFO L290 TraceCheckUtils]: 2: Hoare triple {4009#true} assume true; {4009#true} is VALID [2022-04-28 04:20:01,305 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4009#true} {4009#true} #105#return; {4009#true} is VALID [2022-04-28 04:20:01,305 INFO L272 TraceCheckUtils]: 4: Hoare triple {4009#true} call #t~ret6 := main(); {4009#true} is VALID [2022-04-28 04:20:01,305 INFO L290 TraceCheckUtils]: 5: Hoare triple {4009#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4009#true} is VALID [2022-04-28 04:20:01,305 INFO L272 TraceCheckUtils]: 6: Hoare triple {4009#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4009#true} is VALID [2022-04-28 04:20:01,305 INFO L290 TraceCheckUtils]: 7: Hoare triple {4009#true} ~cond := #in~cond; {4009#true} is VALID [2022-04-28 04:20:01,305 INFO L290 TraceCheckUtils]: 8: Hoare triple {4009#true} assume !(0 == ~cond); {4009#true} is VALID [2022-04-28 04:20:01,305 INFO L290 TraceCheckUtils]: 9: Hoare triple {4009#true} assume true; {4009#true} is VALID [2022-04-28 04:20:01,305 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4009#true} {4009#true} #91#return; {4009#true} is VALID [2022-04-28 04:20:01,306 INFO L272 TraceCheckUtils]: 11: Hoare triple {4009#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4009#true} is VALID [2022-04-28 04:20:01,306 INFO L290 TraceCheckUtils]: 12: Hoare triple {4009#true} ~cond := #in~cond; {4009#true} is VALID [2022-04-28 04:20:01,306 INFO L290 TraceCheckUtils]: 13: Hoare triple {4009#true} assume !(0 == ~cond); {4009#true} is VALID [2022-04-28 04:20:01,306 INFO L290 TraceCheckUtils]: 14: Hoare triple {4009#true} assume true; {4009#true} is VALID [2022-04-28 04:20:01,306 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4009#true} {4009#true} #93#return; {4009#true} is VALID [2022-04-28 04:20:01,306 INFO L290 TraceCheckUtils]: 16: Hoare triple {4009#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4009#true} is VALID [2022-04-28 04:20:01,306 INFO L290 TraceCheckUtils]: 17: Hoare triple {4009#true} assume !false; {4009#true} is VALID [2022-04-28 04:20:01,306 INFO L290 TraceCheckUtils]: 18: Hoare triple {4009#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4009#true} is VALID [2022-04-28 04:20:01,306 INFO L290 TraceCheckUtils]: 19: Hoare triple {4009#true} assume !false; {4009#true} is VALID [2022-04-28 04:20:01,307 INFO L290 TraceCheckUtils]: 20: Hoare triple {4009#true} assume !(~c~0 >= ~b~0); {4074#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 04:20:01,307 INFO L290 TraceCheckUtils]: 21: Hoare triple {4074#(not (<= main_~b~0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4078#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 04:20:01,308 INFO L290 TraceCheckUtils]: 22: Hoare triple {4078#(< main_~b~0 main_~a~0)} assume !false; {4078#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 04:20:01,308 INFO L290 TraceCheckUtils]: 23: Hoare triple {4078#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4085#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 04:20:01,309 INFO L290 TraceCheckUtils]: 24: Hoare triple {4085#(< main_~b~0 main_~c~0)} assume !false; {4085#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 04:20:01,309 INFO L290 TraceCheckUtils]: 25: Hoare triple {4085#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {4010#false} is VALID [2022-04-28 04:20:01,309 INFO L290 TraceCheckUtils]: 26: Hoare triple {4010#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4010#false} is VALID [2022-04-28 04:20:01,309 INFO L290 TraceCheckUtils]: 27: Hoare triple {4010#false} assume !false; {4010#false} is VALID [2022-04-28 04:20:01,309 INFO L290 TraceCheckUtils]: 28: Hoare triple {4010#false} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4010#false} is VALID [2022-04-28 04:20:01,309 INFO L290 TraceCheckUtils]: 29: Hoare triple {4010#false} assume !false; {4010#false} is VALID [2022-04-28 04:20:01,310 INFO L290 TraceCheckUtils]: 30: Hoare triple {4010#false} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {4010#false} is VALID [2022-04-28 04:20:01,310 INFO L290 TraceCheckUtils]: 31: Hoare triple {4010#false} assume !false; {4010#false} is VALID [2022-04-28 04:20:01,310 INFO L272 TraceCheckUtils]: 32: Hoare triple {4010#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4010#false} is VALID [2022-04-28 04:20:01,310 INFO L290 TraceCheckUtils]: 33: Hoare triple {4010#false} ~cond := #in~cond; {4010#false} is VALID [2022-04-28 04:20:01,310 INFO L290 TraceCheckUtils]: 34: Hoare triple {4010#false} assume 0 == ~cond; {4010#false} is VALID [2022-04-28 04:20:01,310 INFO L290 TraceCheckUtils]: 35: Hoare triple {4010#false} assume !false; {4010#false} is VALID [2022-04-28 04:20:01,310 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 13 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 04:20:01,310 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 04:20:01,310 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:20:01,310 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1564849227] [2022-04-28 04:20:01,310 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:20:01,310 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1213719124] [2022-04-28 04:20:01,311 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1213719124] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:20:01,311 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:20:01,311 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 04:20:01,311 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:20:01,311 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1922347169] [2022-04-28 04:20:01,311 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1922347169] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:20:01,311 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:20:01,311 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 04:20:01,311 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [122881567] [2022-04-28 04:20:01,311 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:20:01,312 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 36 [2022-04-28 04:20:01,312 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:20:01,312 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 04:20:01,337 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-28 04:20:01,337 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 04:20:01,337 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:20:01,337 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 04:20:01,338 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 04:20:01,338 INFO L87 Difference]: Start difference. First operand 116 states and 153 transitions. Second operand has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 04:20:01,857 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:20:01,857 INFO L93 Difference]: Finished difference Result 165 states and 227 transitions. [2022-04-28 04:20:01,857 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 04:20:01,857 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 36 [2022-04-28 04:20:01,857 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:20:01,858 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 04:20:01,860 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 97 transitions. [2022-04-28 04:20:01,860 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 04:20:01,861 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 97 transitions. [2022-04-28 04:20:01,862 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 97 transitions. [2022-04-28 04:20:01,939 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-28 04:20:01,943 INFO L225 Difference]: With dead ends: 165 [2022-04-28 04:20:01,943 INFO L226 Difference]: Without dead ends: 127 [2022-04-28 04:20:01,944 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 38 GetRequests, 33 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-04-28 04:20:01,945 INFO L413 NwaCegarLoop]: 52 mSDtfsCounter, 18 mSDsluCounter, 83 mSDsCounter, 0 mSdLazyCounter, 82 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 135 SdHoareTripleChecker+Invalid, 91 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 82 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 04:20:01,945 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [22 Valid, 135 Invalid, 91 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 82 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 04:20:01,946 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 127 states. [2022-04-28 04:20:02,146 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 127 to 101. [2022-04-28 04:20:02,147 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:20:02,148 INFO L82 GeneralOperation]: Start isEquivalent. First operand 127 states. Second operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 04:20:02,149 INFO L74 IsIncluded]: Start isIncluded. First operand 127 states. Second operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 04:20:02,149 INFO L87 Difference]: Start difference. First operand 127 states. Second operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 04:20:02,154 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:20:02,155 INFO L93 Difference]: Finished difference Result 127 states and 170 transitions. [2022-04-28 04:20:02,155 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 170 transitions. [2022-04-28 04:20:02,157 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:20:02,157 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:20:02,158 INFO L74 IsIncluded]: Start isIncluded. First operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 127 states. [2022-04-28 04:20:02,158 INFO L87 Difference]: Start difference. First operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 127 states. [2022-04-28 04:20:02,162 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:20:02,163 INFO L93 Difference]: Finished difference Result 127 states and 170 transitions. [2022-04-28 04:20:02,163 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 170 transitions. [2022-04-28 04:20:02,163 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:20:02,163 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:20:02,163 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:20:02,163 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:20:02,165 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 101 states, 67 states have (on average 1.1940298507462686) internal successors, (80), 68 states have internal predecessors, (80), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-28 04:20:02,168 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 128 transitions. [2022-04-28 04:20:02,169 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 128 transitions. Word has length 36 [2022-04-28 04:20:02,169 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:20:02,169 INFO L495 AbstractCegarLoop]: Abstraction has 101 states and 128 transitions. [2022-04-28 04:20:02,169 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 04:20:02,169 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 101 states and 128 transitions. [2022-04-28 04:20:02,334 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-28 04:20:02,334 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 128 transitions. [2022-04-28 04:20:02,335 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-28 04:20:02,335 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:20:02,335 INFO L195 NwaCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:20:02,352 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-28 04:20:02,539 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:20:02,540 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:20:02,540 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:20:02,540 INFO L85 PathProgramCache]: Analyzing trace with hash 1445301309, now seen corresponding path program 1 times [2022-04-28 04:20:02,540 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:20:02,540 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1705284878] [2022-04-28 04:20:02,540 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:20:02,540 INFO L85 PathProgramCache]: Analyzing trace with hash 1445301309, now seen corresponding path program 2 times [2022-04-28 04:20:02,540 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:20:02,541 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1476771507] [2022-04-28 04:20:02,541 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:20:02,541 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:20:02,552 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:20:02,552 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1070008843] [2022-04-28 04:20:02,552 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 04:20:02,552 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:20:02,552 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:20:02,553 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:20:02,555 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-28 04:20:02,601 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 04:20:02,601 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:20:02,602 INFO L263 TraceCheckSpWp]: Trace formula consists of 126 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 04:20:02,610 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:20:02,611 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:20:02,755 INFO L272 TraceCheckUtils]: 0: Hoare triple {4912#true} call ULTIMATE.init(); {4912#true} is VALID [2022-04-28 04:20:02,756 INFO L290 TraceCheckUtils]: 1: Hoare triple {4912#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {4912#true} is VALID [2022-04-28 04:20:02,756 INFO L290 TraceCheckUtils]: 2: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-28 04:20:02,756 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4912#true} {4912#true} #105#return; {4912#true} is VALID [2022-04-28 04:20:02,756 INFO L272 TraceCheckUtils]: 4: Hoare triple {4912#true} call #t~ret6 := main(); {4912#true} is VALID [2022-04-28 04:20:02,756 INFO L290 TraceCheckUtils]: 5: Hoare triple {4912#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4912#true} is VALID [2022-04-28 04:20:02,756 INFO L272 TraceCheckUtils]: 6: Hoare triple {4912#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4912#true} is VALID [2022-04-28 04:20:02,756 INFO L290 TraceCheckUtils]: 7: Hoare triple {4912#true} ~cond := #in~cond; {4912#true} is VALID [2022-04-28 04:20:02,756 INFO L290 TraceCheckUtils]: 8: Hoare triple {4912#true} assume !(0 == ~cond); {4912#true} is VALID [2022-04-28 04:20:02,756 INFO L290 TraceCheckUtils]: 9: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-28 04:20:02,756 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4912#true} {4912#true} #91#return; {4912#true} is VALID [2022-04-28 04:20:02,757 INFO L272 TraceCheckUtils]: 11: Hoare triple {4912#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4912#true} is VALID [2022-04-28 04:20:02,757 INFO L290 TraceCheckUtils]: 12: Hoare triple {4912#true} ~cond := #in~cond; {4912#true} is VALID [2022-04-28 04:20:02,757 INFO L290 TraceCheckUtils]: 13: Hoare triple {4912#true} assume !(0 == ~cond); {4912#true} is VALID [2022-04-28 04:20:02,757 INFO L290 TraceCheckUtils]: 14: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-28 04:20:02,757 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4912#true} {4912#true} #93#return; {4912#true} is VALID [2022-04-28 04:20:02,757 INFO L290 TraceCheckUtils]: 16: Hoare triple {4912#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4912#true} is VALID [2022-04-28 04:20:02,757 INFO L290 TraceCheckUtils]: 17: Hoare triple {4912#true} assume !false; {4912#true} is VALID [2022-04-28 04:20:02,757 INFO L290 TraceCheckUtils]: 18: Hoare triple {4912#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4912#true} is VALID [2022-04-28 04:20:02,757 INFO L290 TraceCheckUtils]: 19: Hoare triple {4912#true} assume !false; {4912#true} is VALID [2022-04-28 04:20:02,758 INFO L290 TraceCheckUtils]: 20: Hoare triple {4912#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 04:20:02,758 INFO L290 TraceCheckUtils]: 21: Hoare triple {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !false; {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 04:20:02,758 INFO L272 TraceCheckUtils]: 22: Hoare triple {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4912#true} is VALID [2022-04-28 04:20:02,759 INFO L290 TraceCheckUtils]: 23: Hoare triple {4912#true} ~cond := #in~cond; {4912#true} is VALID [2022-04-28 04:20:02,759 INFO L290 TraceCheckUtils]: 24: Hoare triple {4912#true} assume !(0 == ~cond); {4912#true} is VALID [2022-04-28 04:20:02,759 INFO L290 TraceCheckUtils]: 25: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-28 04:20:02,760 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4912#true} {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #95#return; {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 04:20:02,760 INFO L272 TraceCheckUtils]: 27: Hoare triple {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4912#true} is VALID [2022-04-28 04:20:02,760 INFO L290 TraceCheckUtils]: 28: Hoare triple {4912#true} ~cond := #in~cond; {4912#true} is VALID [2022-04-28 04:20:02,760 INFO L290 TraceCheckUtils]: 29: Hoare triple {4912#true} assume !(0 == ~cond); {4912#true} is VALID [2022-04-28 04:20:02,760 INFO L290 TraceCheckUtils]: 30: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-28 04:20:02,761 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4912#true} {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #97#return; {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 04:20:02,761 INFO L272 TraceCheckUtils]: 32: Hoare triple {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4912#true} is VALID [2022-04-28 04:20:02,761 INFO L290 TraceCheckUtils]: 33: Hoare triple {4912#true} ~cond := #in~cond; {4912#true} is VALID [2022-04-28 04:20:02,761 INFO L290 TraceCheckUtils]: 34: Hoare triple {4912#true} assume !(0 == ~cond); {4912#true} is VALID [2022-04-28 04:20:02,761 INFO L290 TraceCheckUtils]: 35: Hoare triple {4912#true} assume true; {4912#true} is VALID [2022-04-28 04:20:02,762 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4912#true} {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #99#return; {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 04:20:02,763 INFO L272 TraceCheckUtils]: 37: Hoare triple {4977#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {5029#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:20:02,763 INFO L290 TraceCheckUtils]: 38: Hoare triple {5029#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5033#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:20:02,764 INFO L290 TraceCheckUtils]: 39: Hoare triple {5033#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4913#false} is VALID [2022-04-28 04:20:02,764 INFO L290 TraceCheckUtils]: 40: Hoare triple {4913#false} assume !false; {4913#false} is VALID [2022-04-28 04:20:02,764 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-28 04:20:02,764 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 04:20:02,764 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:20:02,764 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1476771507] [2022-04-28 04:20:02,764 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:20:02,764 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1070008843] [2022-04-28 04:20:02,764 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1070008843] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:20:02,764 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:20:02,764 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 04:20:02,764 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:20:02,765 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1705284878] [2022-04-28 04:20:02,765 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1705284878] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:20:02,765 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:20:02,765 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 04:20:02,765 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1855175937] [2022-04-28 04:20:02,765 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:20:02,765 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 41 [2022-04-28 04:20:02,765 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:20:02,766 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-28 04:20:02,788 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:20:02,788 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 04:20:02,788 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:20:02,789 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 04:20:02,789 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 04:20:02,789 INFO L87 Difference]: Start difference. First operand 101 states and 128 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 04:20:03,234 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:20:03,234 INFO L93 Difference]: Finished difference Result 151 states and 206 transitions. [2022-04-28 04:20:03,234 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 04:20:03,235 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 41 [2022-04-28 04:20:03,235 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:20:03,235 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-28 04:20:03,236 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-28 04:20:03,236 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-28 04:20:03,237 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-28 04:20:03,237 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 60 transitions. [2022-04-28 04:20:03,297 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-28 04:20:03,300 INFO L225 Difference]: With dead ends: 151 [2022-04-28 04:20:03,301 INFO L226 Difference]: Without dead ends: 149 [2022-04-28 04:20:03,301 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 41 GetRequests, 37 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-28 04:20:03,302 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 9 mSDsluCounter, 95 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 136 SdHoareTripleChecker+Invalid, 50 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 50 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 04:20:03,302 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 136 Invalid, 50 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 04:20:03,302 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 149 states. [2022-04-28 04:20:03,559 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 149 to 130. [2022-04-28 04:20:03,559 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:20:03,559 INFO L82 GeneralOperation]: Start isEquivalent. First operand 149 states. Second operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-28 04:20:03,560 INFO L74 IsIncluded]: Start isIncluded. First operand 149 states. Second operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-28 04:20:03,560 INFO L87 Difference]: Start difference. First operand 149 states. Second operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-28 04:20:03,572 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:20:03,573 INFO L93 Difference]: Finished difference Result 149 states and 204 transitions. [2022-04-28 04:20:03,573 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 204 transitions. [2022-04-28 04:20:03,573 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:20:03,574 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:20:03,575 INFO L74 IsIncluded]: Start isIncluded. First operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) Second operand 149 states. [2022-04-28 04:20:03,575 INFO L87 Difference]: Start difference. First operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) Second operand 149 states. [2022-04-28 04:20:03,582 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:20:03,582 INFO L93 Difference]: Finished difference Result 149 states and 204 transitions. [2022-04-28 04:20:03,583 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 204 transitions. [2022-04-28 04:20:03,583 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:20:03,583 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:20:03,583 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:20:03,583 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:20:03,584 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 130 states, 75 states have (on average 1.1733333333333333) internal successors, (88), 81 states have internal predecessors, (88), 45 states have call successors, (45), 10 states have call predecessors, (45), 9 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-28 04:20:03,589 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 130 states to 130 states and 176 transitions. [2022-04-28 04:20:03,589 INFO L78 Accepts]: Start accepts. Automaton has 130 states and 176 transitions. Word has length 41 [2022-04-28 04:20:03,590 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:20:03,590 INFO L495 AbstractCegarLoop]: Abstraction has 130 states and 176 transitions. [2022-04-28 04:20:03,590 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (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-28 04:20:03,590 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 130 states and 176 transitions. [2022-04-28 04:20:03,868 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 176 edges. 176 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:20:03,868 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 176 transitions. [2022-04-28 04:20:03,868 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-28 04:20:03,868 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:20:03,868 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:20:03,892 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-28 04:20:04,069 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:20:04,069 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:20:04,070 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:20:04,070 INFO L85 PathProgramCache]: Analyzing trace with hash -613514168, now seen corresponding path program 1 times [2022-04-28 04:20:04,070 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:20:04,070 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [277371402] [2022-04-28 04:20:04,070 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:20:04,070 INFO L85 PathProgramCache]: Analyzing trace with hash -613514168, now seen corresponding path program 2 times [2022-04-28 04:20:04,070 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:20:04,070 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1812512968] [2022-04-28 04:20:04,070 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:20:04,070 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:20:04,080 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:20:04,081 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [803160640] [2022-04-28 04:20:04,081 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 04:20:04,081 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:20:04,081 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:20:04,082 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:20:04,091 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-28 04:20:04,142 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 04:20:04,143 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:20:04,144 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-28 04:20:04,155 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:20:04,156 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:20:04,426 INFO L272 TraceCheckUtils]: 0: Hoare triple {5901#true} call ULTIMATE.init(); {5901#true} is VALID [2022-04-28 04:20:04,427 INFO L290 TraceCheckUtils]: 1: Hoare triple {5901#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {5901#true} is VALID [2022-04-28 04:20:04,427 INFO L290 TraceCheckUtils]: 2: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-28 04:20:04,427 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5901#true} {5901#true} #105#return; {5901#true} is VALID [2022-04-28 04:20:04,427 INFO L272 TraceCheckUtils]: 4: Hoare triple {5901#true} call #t~ret6 := main(); {5901#true} is VALID [2022-04-28 04:20:04,427 INFO L290 TraceCheckUtils]: 5: Hoare triple {5901#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5901#true} is VALID [2022-04-28 04:20:04,427 INFO L272 TraceCheckUtils]: 6: Hoare triple {5901#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5901#true} is VALID [2022-04-28 04:20:04,428 INFO L290 TraceCheckUtils]: 7: Hoare triple {5901#true} ~cond := #in~cond; {5927#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 04:20:04,429 INFO L290 TraceCheckUtils]: 8: Hoare triple {5927#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {5931#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:20:04,429 INFO L290 TraceCheckUtils]: 9: Hoare triple {5931#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {5931#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:20:04,430 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5931#(not (= |assume_abort_if_not_#in~cond| 0))} {5901#true} #91#return; {5938#(<= 1 main_~x~0)} is VALID [2022-04-28 04:20:04,430 INFO L272 TraceCheckUtils]: 11: Hoare triple {5938#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5901#true} is VALID [2022-04-28 04:20:04,430 INFO L290 TraceCheckUtils]: 12: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-28 04:20:04,430 INFO L290 TraceCheckUtils]: 13: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-28 04:20:04,430 INFO L290 TraceCheckUtils]: 14: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-28 04:20:04,432 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5901#true} {5938#(<= 1 main_~x~0)} #93#return; {5938#(<= 1 main_~x~0)} is VALID [2022-04-28 04:20:04,434 INFO L290 TraceCheckUtils]: 16: Hoare triple {5938#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5957#(<= 1 main_~a~0)} is VALID [2022-04-28 04:20:04,434 INFO L290 TraceCheckUtils]: 17: Hoare triple {5957#(<= 1 main_~a~0)} assume !false; {5957#(<= 1 main_~a~0)} is VALID [2022-04-28 04:20:04,434 INFO L290 TraceCheckUtils]: 18: Hoare triple {5957#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5964#(<= 1 main_~c~0)} is VALID [2022-04-28 04:20:04,436 INFO L290 TraceCheckUtils]: 19: Hoare triple {5964#(<= 1 main_~c~0)} assume !false; {5964#(<= 1 main_~c~0)} is VALID [2022-04-28 04:20:04,436 INFO L290 TraceCheckUtils]: 20: Hoare triple {5964#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {5964#(<= 1 main_~c~0)} is VALID [2022-04-28 04:20:04,436 INFO L290 TraceCheckUtils]: 21: Hoare triple {5964#(<= 1 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {5974#(<= 1 main_~b~0)} is VALID [2022-04-28 04:20:04,437 INFO L290 TraceCheckUtils]: 22: Hoare triple {5974#(<= 1 main_~b~0)} assume !false; {5974#(<= 1 main_~b~0)} is VALID [2022-04-28 04:20:04,437 INFO L290 TraceCheckUtils]: 23: Hoare triple {5974#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 04:20:04,437 INFO L290 TraceCheckUtils]: 24: Hoare triple {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !false; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 04:20:04,438 INFO L290 TraceCheckUtils]: 25: Hoare triple {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 04:20:04,438 INFO L290 TraceCheckUtils]: 26: Hoare triple {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !false; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 04:20:04,438 INFO L272 TraceCheckUtils]: 27: Hoare triple {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5901#true} is VALID [2022-04-28 04:20:04,438 INFO L290 TraceCheckUtils]: 28: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-28 04:20:04,438 INFO L290 TraceCheckUtils]: 29: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-28 04:20:04,438 INFO L290 TraceCheckUtils]: 30: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-28 04:20:04,439 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {5901#true} {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #95#return; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 04:20:04,439 INFO L272 TraceCheckUtils]: 32: Hoare triple {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5901#true} is VALID [2022-04-28 04:20:04,439 INFO L290 TraceCheckUtils]: 33: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-28 04:20:04,439 INFO L290 TraceCheckUtils]: 34: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-28 04:20:04,439 INFO L290 TraceCheckUtils]: 35: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-28 04:20:04,440 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {5901#true} {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #97#return; {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 04:20:04,440 INFO L272 TraceCheckUtils]: 37: Hoare triple {5981#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6024#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:20:04,441 INFO L290 TraceCheckUtils]: 38: Hoare triple {6024#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6028#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:20:04,441 INFO L290 TraceCheckUtils]: 39: Hoare triple {6028#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5902#false} is VALID [2022-04-28 04:20:04,441 INFO L290 TraceCheckUtils]: 40: Hoare triple {5902#false} assume !false; {5902#false} is VALID [2022-04-28 04:20:04,441 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 4 proven. 7 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-28 04:20:04,442 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:20:04,686 INFO L290 TraceCheckUtils]: 40: Hoare triple {5902#false} assume !false; {5902#false} is VALID [2022-04-28 04:20:04,687 INFO L290 TraceCheckUtils]: 39: Hoare triple {6028#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5902#false} is VALID [2022-04-28 04:20:04,687 INFO L290 TraceCheckUtils]: 38: Hoare triple {6024#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6028#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:20:04,688 INFO L272 TraceCheckUtils]: 37: Hoare triple {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6024#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:20:04,688 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {5901#true} {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #97#return; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 04:20:04,689 INFO L290 TraceCheckUtils]: 35: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-28 04:20:04,689 INFO L290 TraceCheckUtils]: 34: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-28 04:20:04,689 INFO L290 TraceCheckUtils]: 33: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-28 04:20:04,689 INFO L272 TraceCheckUtils]: 32: Hoare triple {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5901#true} is VALID [2022-04-28 04:20:04,690 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {5901#true} {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #95#return; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 04:20:04,690 INFO L290 TraceCheckUtils]: 30: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-28 04:20:04,690 INFO L290 TraceCheckUtils]: 29: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-28 04:20:04,690 INFO L290 TraceCheckUtils]: 28: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-28 04:20:04,690 INFO L272 TraceCheckUtils]: 27: Hoare triple {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5901#true} is VALID [2022-04-28 04:20:04,690 INFO L290 TraceCheckUtils]: 26: Hoare triple {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 04:20:04,691 INFO L290 TraceCheckUtils]: 25: Hoare triple {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 04:20:04,691 INFO L290 TraceCheckUtils]: 24: Hoare triple {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 04:20:04,692 INFO L290 TraceCheckUtils]: 23: Hoare triple {5901#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {6044#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 04:20:04,692 INFO L290 TraceCheckUtils]: 22: Hoare triple {5901#true} assume !false; {5901#true} is VALID [2022-04-28 04:20:04,692 INFO L290 TraceCheckUtils]: 21: Hoare triple {5901#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {5901#true} is VALID [2022-04-28 04:20:04,692 INFO L290 TraceCheckUtils]: 20: Hoare triple {5901#true} assume !(~c~0 >= ~b~0); {5901#true} is VALID [2022-04-28 04:20:04,692 INFO L290 TraceCheckUtils]: 19: Hoare triple {5901#true} assume !false; {5901#true} is VALID [2022-04-28 04:20:04,692 INFO L290 TraceCheckUtils]: 18: Hoare triple {5901#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5901#true} is VALID [2022-04-28 04:20:04,692 INFO L290 TraceCheckUtils]: 17: Hoare triple {5901#true} assume !false; {5901#true} is VALID [2022-04-28 04:20:04,692 INFO L290 TraceCheckUtils]: 16: Hoare triple {5901#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5901#true} is VALID [2022-04-28 04:20:04,693 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5901#true} {5901#true} #93#return; {5901#true} is VALID [2022-04-28 04:20:04,693 INFO L290 TraceCheckUtils]: 14: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-28 04:20:04,693 INFO L290 TraceCheckUtils]: 13: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-28 04:20:04,693 INFO L290 TraceCheckUtils]: 12: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-28 04:20:04,693 INFO L272 TraceCheckUtils]: 11: Hoare triple {5901#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5901#true} is VALID [2022-04-28 04:20:04,693 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5901#true} {5901#true} #91#return; {5901#true} is VALID [2022-04-28 04:20:04,693 INFO L290 TraceCheckUtils]: 9: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-28 04:20:04,693 INFO L290 TraceCheckUtils]: 8: Hoare triple {5901#true} assume !(0 == ~cond); {5901#true} is VALID [2022-04-28 04:20:04,693 INFO L290 TraceCheckUtils]: 7: Hoare triple {5901#true} ~cond := #in~cond; {5901#true} is VALID [2022-04-28 04:20:04,693 INFO L272 TraceCheckUtils]: 6: Hoare triple {5901#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5901#true} is VALID [2022-04-28 04:20:04,693 INFO L290 TraceCheckUtils]: 5: Hoare triple {5901#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5901#true} is VALID [2022-04-28 04:20:04,693 INFO L272 TraceCheckUtils]: 4: Hoare triple {5901#true} call #t~ret6 := main(); {5901#true} is VALID [2022-04-28 04:20:04,694 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5901#true} {5901#true} #105#return; {5901#true} is VALID [2022-04-28 04:20:04,694 INFO L290 TraceCheckUtils]: 2: Hoare triple {5901#true} assume true; {5901#true} is VALID [2022-04-28 04:20:04,694 INFO L290 TraceCheckUtils]: 1: Hoare triple {5901#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {5901#true} is VALID [2022-04-28 04:20:04,694 INFO L272 TraceCheckUtils]: 0: Hoare triple {5901#true} call ULTIMATE.init(); {5901#true} is VALID [2022-04-28 04:20:04,694 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-04-28 04:20:04,694 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:20:04,694 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1812512968] [2022-04-28 04:20:04,694 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:20:04,694 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [803160640] [2022-04-28 04:20:04,694 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [803160640] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 04:20:04,694 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 04:20:04,695 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [11] total 12 [2022-04-28 04:20:04,695 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:20:04,695 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [277371402] [2022-04-28 04:20:04,695 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [277371402] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:20:04,695 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:20:04,695 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 04:20:04,695 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [179965813] [2022-04-28 04:20:04,695 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:20:04,696 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 41 [2022-04-28 04:20:04,696 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:20:04,696 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 04:20:04,728 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:20:04,728 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 04:20:04,728 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:20:04,729 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 04:20:04,729 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=109, Unknown=0, NotChecked=0, Total=132 [2022-04-28 04:20:04,729 INFO L87 Difference]: Start difference. First operand 130 states and 176 transitions. Second operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 04:20:05,326 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:20:05,326 INFO L93 Difference]: Finished difference Result 173 states and 245 transitions. [2022-04-28 04:20:05,326 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 04:20:05,326 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 41 [2022-04-28 04:20:05,326 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:20:05,327 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 04:20:05,328 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-28 04:20:05,328 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 04:20:05,329 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-28 04:20:05,329 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 60 transitions. [2022-04-28 04:20:05,378 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-28 04:20:05,381 INFO L225 Difference]: With dead ends: 173 [2022-04-28 04:20:05,381 INFO L226 Difference]: Without dead ends: 171 [2022-04-28 04:20:05,382 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 82 GetRequests, 70 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=27, Invalid=129, Unknown=0, NotChecked=0, Total=156 [2022-04-28 04:20:05,382 INFO L413 NwaCegarLoop]: 37 mSDtfsCounter, 8 mSDsluCounter, 84 mSDsCounter, 0 mSdLazyCounter, 52 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 121 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 52 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 04:20:05,382 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 121 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 52 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 04:20:05,383 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 171 states. [2022-04-28 04:20:05,740 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 171 to 167. [2022-04-28 04:20:05,740 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:20:05,740 INFO L82 GeneralOperation]: Start isEquivalent. First operand 171 states. Second operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) [2022-04-28 04:20:05,741 INFO L74 IsIncluded]: Start isIncluded. First operand 171 states. Second operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) [2022-04-28 04:20:05,741 INFO L87 Difference]: Start difference. First operand 171 states. Second operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) [2022-04-28 04:20:05,748 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:20:05,748 INFO L93 Difference]: Finished difference Result 171 states and 243 transitions. [2022-04-28 04:20:05,748 INFO L276 IsEmpty]: Start isEmpty. Operand 171 states and 243 transitions. [2022-04-28 04:20:05,749 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:20:05,749 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:20:05,750 INFO L74 IsIncluded]: Start isIncluded. First operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) Second operand 171 states. [2022-04-28 04:20:05,750 INFO L87 Difference]: Start difference. First operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) Second operand 171 states. [2022-04-28 04:20:05,757 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:20:05,757 INFO L93 Difference]: Finished difference Result 171 states and 243 transitions. [2022-04-28 04:20:05,757 INFO L276 IsEmpty]: Start isEmpty. Operand 171 states and 243 transitions. [2022-04-28 04:20:05,758 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:20:05,758 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:20:05,759 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:20:05,759 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:20:05,759 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 167 states, 87 states have (on average 1.1839080459770115) internal successors, (103), 96 states have internal predecessors, (103), 69 states have call successors, (69), 11 states have call predecessors, (69), 10 states have return successors, (67), 59 states have call predecessors, (67), 67 states have call successors, (67) [2022-04-28 04:20:05,766 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 167 states to 167 states and 239 transitions. [2022-04-28 04:20:05,767 INFO L78 Accepts]: Start accepts. Automaton has 167 states and 239 transitions. Word has length 41 [2022-04-28 04:20:05,767 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:20:05,767 INFO L495 AbstractCegarLoop]: Abstraction has 167 states and 239 transitions. [2022-04-28 04:20:05,767 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 04:20:05,767 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 167 states and 239 transitions. [2022-04-28 04:20:06,118 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 239 edges. 239 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:20:06,119 INFO L276 IsEmpty]: Start isEmpty. Operand 167 states and 239 transitions. [2022-04-28 04:20:06,119 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 54 [2022-04-28 04:20:06,119 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:20:06,119 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:20:06,136 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Ended with exit code 0 [2022-04-28 04:20:06,323 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-28 04:20:06,324 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:20:06,324 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:20:06,324 INFO L85 PathProgramCache]: Analyzing trace with hash -810649216, now seen corresponding path program 1 times [2022-04-28 04:20:06,324 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:20:06,324 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [470150685] [2022-04-28 04:20:06,324 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:20:06,324 INFO L85 PathProgramCache]: Analyzing trace with hash -810649216, now seen corresponding path program 2 times [2022-04-28 04:20:06,325 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:20:06,325 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [968102559] [2022-04-28 04:20:06,325 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:20:06,325 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:20:06,339 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:20:06,339 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [292315791] [2022-04-28 04:20:06,340 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 04:20:06,340 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:20:06,340 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:20:06,341 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:20:06,368 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-28 04:20:06,397 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 04:20:06,398 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:20:06,399 INFO L263 TraceCheckSpWp]: Trace formula consists of 159 conjuncts, 57 conjunts are in the unsatisfiable core [2022-04-28 04:20:06,410 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:20:06,411 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:20:07,223 INFO L272 TraceCheckUtils]: 0: Hoare triple {7182#true} call ULTIMATE.init(); {7182#true} is VALID [2022-04-28 04:20:07,224 INFO L290 TraceCheckUtils]: 1: Hoare triple {7182#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {7182#true} is VALID [2022-04-28 04:20:07,224 INFO L290 TraceCheckUtils]: 2: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-28 04:20:07,224 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7182#true} {7182#true} #105#return; {7182#true} is VALID [2022-04-28 04:20:07,224 INFO L272 TraceCheckUtils]: 4: Hoare triple {7182#true} call #t~ret6 := main(); {7182#true} is VALID [2022-04-28 04:20:07,224 INFO L290 TraceCheckUtils]: 5: Hoare triple {7182#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7182#true} is VALID [2022-04-28 04:20:07,224 INFO L272 TraceCheckUtils]: 6: Hoare triple {7182#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7182#true} is VALID [2022-04-28 04:20:07,224 INFO L290 TraceCheckUtils]: 7: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-28 04:20:07,224 INFO L290 TraceCheckUtils]: 8: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-28 04:20:07,224 INFO L290 TraceCheckUtils]: 9: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-28 04:20:07,224 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7182#true} {7182#true} #91#return; {7182#true} is VALID [2022-04-28 04:20:07,225 INFO L272 TraceCheckUtils]: 11: Hoare triple {7182#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7182#true} is VALID [2022-04-28 04:20:07,225 INFO L290 TraceCheckUtils]: 12: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-28 04:20:07,225 INFO L290 TraceCheckUtils]: 13: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-28 04:20:07,225 INFO L290 TraceCheckUtils]: 14: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-28 04:20:07,225 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7182#true} {7182#true} #93#return; {7182#true} is VALID [2022-04-28 04:20:07,226 INFO L290 TraceCheckUtils]: 16: Hoare triple {7182#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7235#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:20:07,226 INFO L290 TraceCheckUtils]: 17: Hoare triple {7235#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {7235#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:20:07,227 INFO L290 TraceCheckUtils]: 18: Hoare triple {7235#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {7242#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:20:07,227 INFO L290 TraceCheckUtils]: 19: Hoare triple {7242#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {7242#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:20:07,228 INFO L290 TraceCheckUtils]: 20: Hoare triple {7242#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {7249#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:20:07,228 INFO L290 TraceCheckUtils]: 21: Hoare triple {7249#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {7249#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:20:07,228 INFO L272 TraceCheckUtils]: 22: Hoare triple {7249#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7182#true} is VALID [2022-04-28 04:20:07,229 INFO L290 TraceCheckUtils]: 23: Hoare triple {7182#true} ~cond := #in~cond; {7259#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:20:07,229 INFO L290 TraceCheckUtils]: 24: Hoare triple {7259#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:20:07,230 INFO L290 TraceCheckUtils]: 25: Hoare triple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:20:07,231 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} {7249#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:20:07,231 INFO L272 TraceCheckUtils]: 27: Hoare triple {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7182#true} is VALID [2022-04-28 04:20:07,232 INFO L290 TraceCheckUtils]: 28: Hoare triple {7182#true} ~cond := #in~cond; {7259#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:20:07,232 INFO L290 TraceCheckUtils]: 29: Hoare triple {7259#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:20:07,232 INFO L290 TraceCheckUtils]: 30: Hoare triple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:20:07,234 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:20:07,234 INFO L272 TraceCheckUtils]: 32: Hoare triple {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {7182#true} is VALID [2022-04-28 04:20:07,234 INFO L290 TraceCheckUtils]: 33: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-28 04:20:07,234 INFO L290 TraceCheckUtils]: 34: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-28 04:20:07,234 INFO L290 TraceCheckUtils]: 35: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-28 04:20:07,235 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7182#true} {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #99#return; {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:20:07,235 INFO L272 TraceCheckUtils]: 37: Hoare triple {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {7182#true} is VALID [2022-04-28 04:20:07,235 INFO L290 TraceCheckUtils]: 38: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-28 04:20:07,235 INFO L290 TraceCheckUtils]: 39: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-28 04:20:07,236 INFO L290 TraceCheckUtils]: 40: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-28 04:20:07,237 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7182#true} {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #101#return; {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:20:07,237 INFO L290 TraceCheckUtils]: 42: Hoare triple {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:20:07,238 INFO L290 TraceCheckUtils]: 43: Hoare triple {7270#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {7322#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:20:07,239 INFO L290 TraceCheckUtils]: 44: Hoare triple {7322#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {7322#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:20:07,239 INFO L290 TraceCheckUtils]: 45: Hoare triple {7322#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {7322#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:20:07,240 INFO L290 TraceCheckUtils]: 46: Hoare triple {7322#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {7332#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 04:20:07,241 INFO L290 TraceCheckUtils]: 47: Hoare triple {7332#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} assume !false; {7332#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 04:20:07,241 INFO L290 TraceCheckUtils]: 48: Hoare triple {7332#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} assume !(0 != ~b~0); {7339#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) 0))} is VALID [2022-04-28 04:20:07,242 INFO L272 TraceCheckUtils]: 49: Hoare triple {7339#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {7343#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:20:07,243 INFO L290 TraceCheckUtils]: 50: Hoare triple {7343#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7347#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:20:07,243 INFO L290 TraceCheckUtils]: 51: Hoare triple {7347#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7183#false} is VALID [2022-04-28 04:20:07,243 INFO L290 TraceCheckUtils]: 52: Hoare triple {7183#false} assume !false; {7183#false} is VALID [2022-04-28 04:20:07,244 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 6 proven. 18 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-28 04:20:07,244 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:20:55,463 INFO L290 TraceCheckUtils]: 52: Hoare triple {7183#false} assume !false; {7183#false} is VALID [2022-04-28 04:20:55,463 INFO L290 TraceCheckUtils]: 51: Hoare triple {7347#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7183#false} is VALID [2022-04-28 04:20:55,464 INFO L290 TraceCheckUtils]: 50: Hoare triple {7343#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7347#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:20:55,465 INFO L272 TraceCheckUtils]: 49: Hoare triple {7363#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {7343#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:20:55,465 INFO L290 TraceCheckUtils]: 48: Hoare triple {7367#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {7363#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 04:20:55,466 INFO L290 TraceCheckUtils]: 47: Hoare triple {7367#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {7367#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 04:20:55,649 INFO L290 TraceCheckUtils]: 46: Hoare triple {7374#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {7367#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 04:20:55,650 INFO L290 TraceCheckUtils]: 45: Hoare triple {7374#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {7374#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 04:20:55,650 INFO L290 TraceCheckUtils]: 44: Hoare triple {7374#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {7374#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 04:20:55,679 INFO L290 TraceCheckUtils]: 43: Hoare triple {7384#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {7374#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 04:20:55,680 INFO L290 TraceCheckUtils]: 42: Hoare triple {7384#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {7384#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 04:20:55,681 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7182#true} {7384#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #101#return; {7384#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 04:20:55,681 INFO L290 TraceCheckUtils]: 40: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-28 04:20:55,681 INFO L290 TraceCheckUtils]: 39: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-28 04:20:55,681 INFO L290 TraceCheckUtils]: 38: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-28 04:20:55,681 INFO L272 TraceCheckUtils]: 37: Hoare triple {7384#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {7182#true} is VALID [2022-04-28 04:20:55,682 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7182#true} {7384#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #99#return; {7384#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 04:20:55,682 INFO L290 TraceCheckUtils]: 35: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-28 04:20:55,682 INFO L290 TraceCheckUtils]: 34: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-28 04:20:55,682 INFO L290 TraceCheckUtils]: 33: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-28 04:20:55,682 INFO L272 TraceCheckUtils]: 32: Hoare triple {7384#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {7182#true} is VALID [2022-04-28 04:20:55,683 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} {7421#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #97#return; {7384#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 04:20:55,683 INFO L290 TraceCheckUtils]: 30: Hoare triple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:20:55,683 INFO L290 TraceCheckUtils]: 29: Hoare triple {7431#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:20:55,684 INFO L290 TraceCheckUtils]: 28: Hoare triple {7182#true} ~cond := #in~cond; {7431#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 04:20:55,684 INFO L272 TraceCheckUtils]: 27: Hoare triple {7421#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7182#true} is VALID [2022-04-28 04:20:55,685 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} {7438#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #95#return; {7421#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 04:20:55,685 INFO L290 TraceCheckUtils]: 25: Hoare triple {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:20:55,685 INFO L290 TraceCheckUtils]: 24: Hoare triple {7431#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {7263#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:20:55,686 INFO L290 TraceCheckUtils]: 23: Hoare triple {7182#true} ~cond := #in~cond; {7431#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 04:20:55,686 INFO L272 TraceCheckUtils]: 22: Hoare triple {7438#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7182#true} is VALID [2022-04-28 04:20:55,686 INFO L290 TraceCheckUtils]: 21: Hoare triple {7438#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {7438#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 04:20:55,687 INFO L290 TraceCheckUtils]: 20: Hoare triple {7457#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {7438#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 04:20:55,688 INFO L290 TraceCheckUtils]: 19: Hoare triple {7457#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} assume !false; {7457#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-28 04:20:55,689 INFO L290 TraceCheckUtils]: 18: Hoare triple {7182#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {7457#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-28 04:20:55,689 INFO L290 TraceCheckUtils]: 17: Hoare triple {7182#true} assume !false; {7182#true} is VALID [2022-04-28 04:20:55,689 INFO L290 TraceCheckUtils]: 16: Hoare triple {7182#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7182#true} is VALID [2022-04-28 04:20:55,689 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7182#true} {7182#true} #93#return; {7182#true} is VALID [2022-04-28 04:20:55,689 INFO L290 TraceCheckUtils]: 14: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-28 04:20:55,689 INFO L290 TraceCheckUtils]: 13: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-28 04:20:55,689 INFO L290 TraceCheckUtils]: 12: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-28 04:20:55,690 INFO L272 TraceCheckUtils]: 11: Hoare triple {7182#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7182#true} is VALID [2022-04-28 04:20:55,690 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7182#true} {7182#true} #91#return; {7182#true} is VALID [2022-04-28 04:20:55,690 INFO L290 TraceCheckUtils]: 9: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-28 04:20:55,690 INFO L290 TraceCheckUtils]: 8: Hoare triple {7182#true} assume !(0 == ~cond); {7182#true} is VALID [2022-04-28 04:20:55,690 INFO L290 TraceCheckUtils]: 7: Hoare triple {7182#true} ~cond := #in~cond; {7182#true} is VALID [2022-04-28 04:20:55,690 INFO L272 TraceCheckUtils]: 6: Hoare triple {7182#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7182#true} is VALID [2022-04-28 04:20:55,690 INFO L290 TraceCheckUtils]: 5: Hoare triple {7182#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7182#true} is VALID [2022-04-28 04:20:55,690 INFO L272 TraceCheckUtils]: 4: Hoare triple {7182#true} call #t~ret6 := main(); {7182#true} is VALID [2022-04-28 04:20:55,690 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7182#true} {7182#true} #105#return; {7182#true} is VALID [2022-04-28 04:20:55,690 INFO L290 TraceCheckUtils]: 2: Hoare triple {7182#true} assume true; {7182#true} is VALID [2022-04-28 04:20:55,690 INFO L290 TraceCheckUtils]: 1: Hoare triple {7182#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {7182#true} is VALID [2022-04-28 04:20:55,691 INFO L272 TraceCheckUtils]: 0: Hoare triple {7182#true} call ULTIMATE.init(); {7182#true} is VALID [2022-04-28 04:20:55,691 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 8 proven. 16 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-28 04:20:55,691 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:20:55,691 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [968102559] [2022-04-28 04:20:55,691 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:20:55,691 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [292315791] [2022-04-28 04:20:55,691 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [292315791] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:20:55,691 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 04:20:55,692 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 21 [2022-04-28 04:20:55,692 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:20:55,692 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [470150685] [2022-04-28 04:20:55,692 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [470150685] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:20:55,692 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:20:55,692 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 04:20:55,692 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1132839907] [2022-04-28 04:20:55,692 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:20:55,692 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 53 [2022-04-28 04:20:55,693 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:20:55,693 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 04:20:55,730 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-28 04:20:55,730 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 04:20:55,730 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:20:55,730 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 04:20:55,731 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=349, Unknown=0, NotChecked=0, Total=420 [2022-04-28 04:20:55,731 INFO L87 Difference]: Start difference. First operand 167 states and 239 transitions. Second operand has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 04:20:58,045 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:20:58,045 INFO L93 Difference]: Finished difference Result 230 states and 330 transitions. [2022-04-28 04:20:58,045 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 04:20:58,045 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 53 [2022-04-28 04:20:58,045 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:20:58,046 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 04:20:58,048 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 126 transitions. [2022-04-28 04:20:58,048 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 04:20:58,050 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 126 transitions. [2022-04-28 04:20:58,050 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 126 transitions. [2022-04-28 04:20:58,215 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 126 edges. 126 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:20:58,221 INFO L225 Difference]: With dead ends: 230 [2022-04-28 04:20:58,221 INFO L226 Difference]: Without dead ends: 227 [2022-04-28 04:20:58,221 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 109 GetRequests, 85 SyntacticMatches, 1 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 94 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=97, Invalid=503, Unknown=0, NotChecked=0, Total=600 [2022-04-28 04:20:58,222 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 49 mSDsluCounter, 205 mSDsCounter, 0 mSdLazyCounter, 549 mSolverCounterSat, 46 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 65 SdHoareTripleChecker+Valid, 245 SdHoareTripleChecker+Invalid, 595 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 46 IncrementalHoareTripleChecker+Valid, 549 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-28 04:20:58,222 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [65 Valid, 245 Invalid, 595 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [46 Valid, 549 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-28 04:20:58,223 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 227 states. [2022-04-28 04:20:58,727 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 227 to 224. [2022-04-28 04:20:58,727 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:20:58,728 INFO L82 GeneralOperation]: Start isEquivalent. First operand 227 states. Second operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 04:20:58,728 INFO L74 IsIncluded]: Start isIncluded. First operand 227 states. Second operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 04:20:58,729 INFO L87 Difference]: Start difference. First operand 227 states. Second operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 04:20:58,737 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:20:58,737 INFO L93 Difference]: Finished difference Result 227 states and 326 transitions. [2022-04-28 04:20:58,737 INFO L276 IsEmpty]: Start isEmpty. Operand 227 states and 326 transitions. [2022-04-28 04:20:58,739 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:20:58,739 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:20:58,739 INFO L74 IsIncluded]: Start isIncluded. First operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) Second operand 227 states. [2022-04-28 04:20:58,740 INFO L87 Difference]: Start difference. First operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) Second operand 227 states. [2022-04-28 04:20:58,749 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:20:58,749 INFO L93 Difference]: Finished difference Result 227 states and 326 transitions. [2022-04-28 04:20:58,749 INFO L276 IsEmpty]: Start isEmpty. Operand 227 states and 326 transitions. [2022-04-28 04:20:58,750 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:20:58,750 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:20:58,750 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:20:58,750 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:20:58,751 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 224 states, 117 states have (on average 1.188034188034188) internal successors, (139), 128 states have internal predecessors, (139), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 81 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 04:20:58,760 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 224 states to 224 states and 323 transitions. [2022-04-28 04:20:58,760 INFO L78 Accepts]: Start accepts. Automaton has 224 states and 323 transitions. Word has length 53 [2022-04-28 04:20:58,760 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:20:58,760 INFO L495 AbstractCegarLoop]: Abstraction has 224 states and 323 transitions. [2022-04-28 04:20:58,761 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.3333333333333335) internal successors, (28), 12 states have internal predecessors, (28), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 04:20:58,761 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 224 states and 323 transitions. [2022-04-28 04:20:59,266 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 323 edges. 323 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:20:59,267 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 323 transitions. [2022-04-28 04:20:59,267 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-28 04:20:59,267 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:20:59,267 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:20:59,286 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-28 04:20:59,474 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-28 04:20:59,475 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:20:59,475 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:20:59,475 INFO L85 PathProgramCache]: Analyzing trace with hash -1127526485, now seen corresponding path program 3 times [2022-04-28 04:20:59,475 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:20:59,475 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2034238625] [2022-04-28 04:20:59,475 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:20:59,475 INFO L85 PathProgramCache]: Analyzing trace with hash -1127526485, now seen corresponding path program 4 times [2022-04-28 04:20:59,475 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:20:59,475 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1304825549] [2022-04-28 04:20:59,476 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:20:59,476 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:20:59,488 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:20:59,489 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2121665017] [2022-04-28 04:20:59,489 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 04:20:59,489 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:20:59,489 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:20:59,490 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:20:59,511 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-28 04:20:59,545 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 04:20:59,545 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:20:59,546 INFO L263 TraceCheckSpWp]: Trace formula consists of 150 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:20:59,557 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:20:59,559 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:20:59,774 INFO L272 TraceCheckUtils]: 0: Hoare triple {8890#true} call ULTIMATE.init(); {8890#true} is VALID [2022-04-28 04:20:59,775 INFO L290 TraceCheckUtils]: 1: Hoare triple {8890#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {8890#true} is VALID [2022-04-28 04:20:59,775 INFO L290 TraceCheckUtils]: 2: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 04:20:59,775 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8890#true} {8890#true} #105#return; {8890#true} is VALID [2022-04-28 04:20:59,775 INFO L272 TraceCheckUtils]: 4: Hoare triple {8890#true} call #t~ret6 := main(); {8890#true} is VALID [2022-04-28 04:20:59,775 INFO L290 TraceCheckUtils]: 5: Hoare triple {8890#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8890#true} is VALID [2022-04-28 04:20:59,775 INFO L272 TraceCheckUtils]: 6: Hoare triple {8890#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8890#true} is VALID [2022-04-28 04:20:59,775 INFO L290 TraceCheckUtils]: 7: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 04:20:59,775 INFO L290 TraceCheckUtils]: 8: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 04:20:59,775 INFO L290 TraceCheckUtils]: 9: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 04:20:59,775 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8890#true} {8890#true} #91#return; {8890#true} is VALID [2022-04-28 04:20:59,775 INFO L272 TraceCheckUtils]: 11: Hoare triple {8890#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8890#true} is VALID [2022-04-28 04:20:59,775 INFO L290 TraceCheckUtils]: 12: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 04:20:59,775 INFO L290 TraceCheckUtils]: 13: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 04:20:59,775 INFO L290 TraceCheckUtils]: 14: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 04:20:59,775 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8890#true} {8890#true} #93#return; {8890#true} is VALID [2022-04-28 04:20:59,775 INFO L290 TraceCheckUtils]: 16: Hoare triple {8890#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8890#true} is VALID [2022-04-28 04:20:59,776 INFO L290 TraceCheckUtils]: 17: Hoare triple {8890#true} assume !false; {8890#true} is VALID [2022-04-28 04:20:59,776 INFO L290 TraceCheckUtils]: 18: Hoare triple {8890#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8890#true} is VALID [2022-04-28 04:20:59,776 INFO L290 TraceCheckUtils]: 19: Hoare triple {8890#true} assume !false; {8890#true} is VALID [2022-04-28 04:20:59,776 INFO L290 TraceCheckUtils]: 20: Hoare triple {8890#true} assume !(~c~0 >= ~b~0); {8955#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 04:20:59,776 INFO L290 TraceCheckUtils]: 21: Hoare triple {8955#(not (<= main_~b~0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8959#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 04:20:59,777 INFO L290 TraceCheckUtils]: 22: Hoare triple {8959#(< main_~b~0 main_~a~0)} assume !false; {8959#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 04:20:59,777 INFO L290 TraceCheckUtils]: 23: Hoare triple {8959#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8966#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 04:20:59,777 INFO L290 TraceCheckUtils]: 24: Hoare triple {8966#(< main_~b~0 main_~c~0)} assume !false; {8966#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 04:20:59,778 INFO L290 TraceCheckUtils]: 25: Hoare triple {8966#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 04:20:59,778 INFO L290 TraceCheckUtils]: 26: Hoare triple {8973#(< main_~v~0 main_~c~0)} assume !false; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 04:20:59,778 INFO L272 TraceCheckUtils]: 27: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8890#true} is VALID [2022-04-28 04:20:59,778 INFO L290 TraceCheckUtils]: 28: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 04:20:59,778 INFO L290 TraceCheckUtils]: 29: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 04:20:59,778 INFO L290 TraceCheckUtils]: 30: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 04:20:59,779 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #95#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 04:20:59,779 INFO L272 TraceCheckUtils]: 32: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8890#true} is VALID [2022-04-28 04:20:59,779 INFO L290 TraceCheckUtils]: 33: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 04:20:59,779 INFO L290 TraceCheckUtils]: 34: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 04:20:59,779 INFO L290 TraceCheckUtils]: 35: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 04:20:59,780 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #97#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 04:20:59,780 INFO L272 TraceCheckUtils]: 37: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8890#true} is VALID [2022-04-28 04:20:59,780 INFO L290 TraceCheckUtils]: 38: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 04:20:59,780 INFO L290 TraceCheckUtils]: 39: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 04:20:59,780 INFO L290 TraceCheckUtils]: 40: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 04:20:59,780 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #99#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 04:20:59,780 INFO L272 TraceCheckUtils]: 42: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {8890#true} is VALID [2022-04-28 04:20:59,780 INFO L290 TraceCheckUtils]: 43: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 04:20:59,780 INFO L290 TraceCheckUtils]: 44: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 04:20:59,780 INFO L290 TraceCheckUtils]: 45: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 04:20:59,781 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #101#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 04:20:59,781 INFO L290 TraceCheckUtils]: 47: Hoare triple {8973#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 04:20:59,782 INFO L290 TraceCheckUtils]: 48: Hoare triple {8973#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {9043#(< 0 main_~c~0)} is VALID [2022-04-28 04:20:59,782 INFO L290 TraceCheckUtils]: 49: Hoare triple {9043#(< 0 main_~c~0)} assume !false; {9043#(< 0 main_~c~0)} is VALID [2022-04-28 04:20:59,782 INFO L290 TraceCheckUtils]: 50: Hoare triple {9043#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {9043#(< 0 main_~c~0)} is VALID [2022-04-28 04:20:59,783 INFO L290 TraceCheckUtils]: 51: Hoare triple {9043#(< 0 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {9053#(< 0 main_~b~0)} is VALID [2022-04-28 04:20:59,783 INFO L290 TraceCheckUtils]: 52: Hoare triple {9053#(< 0 main_~b~0)} assume !false; {9053#(< 0 main_~b~0)} is VALID [2022-04-28 04:20:59,783 INFO L290 TraceCheckUtils]: 53: Hoare triple {9053#(< 0 main_~b~0)} assume !(0 != ~b~0); {8891#false} is VALID [2022-04-28 04:20:59,783 INFO L272 TraceCheckUtils]: 54: Hoare triple {8891#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {8891#false} is VALID [2022-04-28 04:20:59,784 INFO L290 TraceCheckUtils]: 55: Hoare triple {8891#false} ~cond := #in~cond; {8891#false} is VALID [2022-04-28 04:20:59,784 INFO L290 TraceCheckUtils]: 56: Hoare triple {8891#false} assume 0 == ~cond; {8891#false} is VALID [2022-04-28 04:20:59,784 INFO L290 TraceCheckUtils]: 57: Hoare triple {8891#false} assume !false; {8891#false} is VALID [2022-04-28 04:20:59,784 INFO L134 CoverageAnalysis]: Checked inductivity of 49 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 04:20:59,784 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:21:00,002 INFO L290 TraceCheckUtils]: 57: Hoare triple {8891#false} assume !false; {8891#false} is VALID [2022-04-28 04:21:00,002 INFO L290 TraceCheckUtils]: 56: Hoare triple {8891#false} assume 0 == ~cond; {8891#false} is VALID [2022-04-28 04:21:00,002 INFO L290 TraceCheckUtils]: 55: Hoare triple {8891#false} ~cond := #in~cond; {8891#false} is VALID [2022-04-28 04:21:00,002 INFO L272 TraceCheckUtils]: 54: Hoare triple {8891#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {8891#false} is VALID [2022-04-28 04:21:00,003 INFO L290 TraceCheckUtils]: 53: Hoare triple {9053#(< 0 main_~b~0)} assume !(0 != ~b~0); {8891#false} is VALID [2022-04-28 04:21:00,003 INFO L290 TraceCheckUtils]: 52: Hoare triple {9053#(< 0 main_~b~0)} assume !false; {9053#(< 0 main_~b~0)} is VALID [2022-04-28 04:21:00,004 INFO L290 TraceCheckUtils]: 51: Hoare triple {9043#(< 0 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {9053#(< 0 main_~b~0)} is VALID [2022-04-28 04:21:00,004 INFO L290 TraceCheckUtils]: 50: Hoare triple {9043#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {9043#(< 0 main_~c~0)} is VALID [2022-04-28 04:21:00,004 INFO L290 TraceCheckUtils]: 49: Hoare triple {9043#(< 0 main_~c~0)} assume !false; {9043#(< 0 main_~c~0)} is VALID [2022-04-28 04:21:00,005 INFO L290 TraceCheckUtils]: 48: Hoare triple {8973#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {9043#(< 0 main_~c~0)} is VALID [2022-04-28 04:21:00,005 INFO L290 TraceCheckUtils]: 47: Hoare triple {8973#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 04:21:00,006 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #101#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 04:21:00,006 INFO L290 TraceCheckUtils]: 45: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 04:21:00,006 INFO L290 TraceCheckUtils]: 44: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 04:21:00,006 INFO L290 TraceCheckUtils]: 43: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 04:21:00,006 INFO L272 TraceCheckUtils]: 42: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {8890#true} is VALID [2022-04-28 04:21:00,007 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #99#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 04:21:00,007 INFO L290 TraceCheckUtils]: 40: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 04:21:00,007 INFO L290 TraceCheckUtils]: 39: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 04:21:00,007 INFO L290 TraceCheckUtils]: 38: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 04:21:00,008 INFO L272 TraceCheckUtils]: 37: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8890#true} is VALID [2022-04-28 04:21:00,008 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #97#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 04:21:00,008 INFO L290 TraceCheckUtils]: 35: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 04:21:00,009 INFO L290 TraceCheckUtils]: 34: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 04:21:00,009 INFO L290 TraceCheckUtils]: 33: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 04:21:00,009 INFO L272 TraceCheckUtils]: 32: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8890#true} is VALID [2022-04-28 04:21:00,010 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {8890#true} {8973#(< main_~v~0 main_~c~0)} #95#return; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 04:21:00,010 INFO L290 TraceCheckUtils]: 30: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 04:21:00,010 INFO L290 TraceCheckUtils]: 29: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 04:21:00,010 INFO L290 TraceCheckUtils]: 28: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 04:21:00,010 INFO L272 TraceCheckUtils]: 27: Hoare triple {8973#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8890#true} is VALID [2022-04-28 04:21:00,010 INFO L290 TraceCheckUtils]: 26: Hoare triple {8973#(< main_~v~0 main_~c~0)} assume !false; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 04:21:00,011 INFO L290 TraceCheckUtils]: 25: Hoare triple {8966#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8973#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 04:21:00,011 INFO L290 TraceCheckUtils]: 24: Hoare triple {8966#(< main_~b~0 main_~c~0)} assume !false; {8966#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 04:21:00,012 INFO L290 TraceCheckUtils]: 23: Hoare triple {8959#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8966#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 04:21:00,012 INFO L290 TraceCheckUtils]: 22: Hoare triple {8959#(< main_~b~0 main_~a~0)} assume !false; {8959#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 04:21:00,013 INFO L290 TraceCheckUtils]: 21: Hoare triple {8955#(not (<= main_~b~0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8959#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 04:21:00,013 INFO L290 TraceCheckUtils]: 20: Hoare triple {8890#true} assume !(~c~0 >= ~b~0); {8955#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 04:21:00,013 INFO L290 TraceCheckUtils]: 19: Hoare triple {8890#true} assume !false; {8890#true} is VALID [2022-04-28 04:21:00,013 INFO L290 TraceCheckUtils]: 18: Hoare triple {8890#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8890#true} is VALID [2022-04-28 04:21:00,013 INFO L290 TraceCheckUtils]: 17: Hoare triple {8890#true} assume !false; {8890#true} is VALID [2022-04-28 04:21:00,013 INFO L290 TraceCheckUtils]: 16: Hoare triple {8890#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8890#true} is VALID [2022-04-28 04:21:00,014 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8890#true} {8890#true} #93#return; {8890#true} is VALID [2022-04-28 04:21:00,014 INFO L290 TraceCheckUtils]: 14: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 04:21:00,014 INFO L290 TraceCheckUtils]: 13: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 04:21:00,014 INFO L290 TraceCheckUtils]: 12: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 04:21:00,014 INFO L272 TraceCheckUtils]: 11: Hoare triple {8890#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8890#true} is VALID [2022-04-28 04:21:00,014 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8890#true} {8890#true} #91#return; {8890#true} is VALID [2022-04-28 04:21:00,014 INFO L290 TraceCheckUtils]: 9: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 04:21:00,014 INFO L290 TraceCheckUtils]: 8: Hoare triple {8890#true} assume !(0 == ~cond); {8890#true} is VALID [2022-04-28 04:21:00,014 INFO L290 TraceCheckUtils]: 7: Hoare triple {8890#true} ~cond := #in~cond; {8890#true} is VALID [2022-04-28 04:21:00,014 INFO L272 TraceCheckUtils]: 6: Hoare triple {8890#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8890#true} is VALID [2022-04-28 04:21:00,014 INFO L290 TraceCheckUtils]: 5: Hoare triple {8890#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8890#true} is VALID [2022-04-28 04:21:00,014 INFO L272 TraceCheckUtils]: 4: Hoare triple {8890#true} call #t~ret6 := main(); {8890#true} is VALID [2022-04-28 04:21:00,015 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8890#true} {8890#true} #105#return; {8890#true} is VALID [2022-04-28 04:21:00,015 INFO L290 TraceCheckUtils]: 2: Hoare triple {8890#true} assume true; {8890#true} is VALID [2022-04-28 04:21:00,015 INFO L290 TraceCheckUtils]: 1: Hoare triple {8890#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {8890#true} is VALID [2022-04-28 04:21:00,015 INFO L272 TraceCheckUtils]: 0: Hoare triple {8890#true} call ULTIMATE.init(); {8890#true} is VALID [2022-04-28 04:21:00,015 INFO L134 CoverageAnalysis]: Checked inductivity of 49 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 04:21:00,015 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:21:00,015 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1304825549] [2022-04-28 04:21:00,015 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:21:00,015 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2121665017] [2022-04-28 04:21:00,016 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2121665017] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:21:00,016 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 04:21:00,016 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-28 04:21:00,016 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:21:00,016 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2034238625] [2022-04-28 04:21:00,016 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2034238625] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:21:00,016 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:21:00,016 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 04:21:00,016 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1791168568] [2022-04-28 04:21:00,016 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:21:00,017 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 58 [2022-04-28 04:21:00,017 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:21:00,017 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:21:00,061 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:21:00,061 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 04:21:00,061 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:21:00,061 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 04:21:00,061 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-28 04:21:00,062 INFO L87 Difference]: Start difference. First operand 224 states and 323 transitions. Second operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:21:02,086 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:21:02,086 INFO L93 Difference]: Finished difference Result 335 states and 499 transitions. [2022-04-28 04:21:02,086 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 04:21:02,087 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 58 [2022-04-28 04:21:02,087 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:21:02,087 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:21:02,090 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 153 transitions. [2022-04-28 04:21:02,090 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:21:02,092 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 153 transitions. [2022-04-28 04:21:02,092 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 153 transitions. [2022-04-28 04:21:02,243 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 153 edges. 153 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:21:02,253 INFO L225 Difference]: With dead ends: 335 [2022-04-28 04:21:02,253 INFO L226 Difference]: Without dead ends: 328 [2022-04-28 04:21:02,254 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 112 SyntacticMatches, 2 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 42 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=93, Invalid=249, Unknown=0, NotChecked=0, Total=342 [2022-04-28 04:21:02,254 INFO L413 NwaCegarLoop]: 82 mSDtfsCounter, 46 mSDsluCounter, 201 mSDsCounter, 0 mSdLazyCounter, 280 mSolverCounterSat, 83 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 283 SdHoareTripleChecker+Invalid, 363 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 83 IncrementalHoareTripleChecker+Valid, 280 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-28 04:21:02,255 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [50 Valid, 283 Invalid, 363 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [83 Valid, 280 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-28 04:21:02,255 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 328 states. [2022-04-28 04:21:02,812 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 328 to 243. [2022-04-28 04:21:02,812 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:21:02,813 INFO L82 GeneralOperation]: Start isEquivalent. First operand 328 states. Second operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 04:21:02,814 INFO L74 IsIncluded]: Start isIncluded. First operand 328 states. Second operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 04:21:02,814 INFO L87 Difference]: Start difference. First operand 328 states. Second operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 04:21:02,828 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:21:02,829 INFO L93 Difference]: Finished difference Result 328 states and 492 transitions. [2022-04-28 04:21:02,829 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 492 transitions. [2022-04-28 04:21:02,831 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:21:02,831 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:21:02,831 INFO L74 IsIncluded]: Start isIncluded. First operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 328 states. [2022-04-28 04:21:02,832 INFO L87 Difference]: Start difference. First operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 328 states. [2022-04-28 04:21:02,846 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:21:02,846 INFO L93 Difference]: Finished difference Result 328 states and 492 transitions. [2022-04-28 04:21:02,847 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 492 transitions. [2022-04-28 04:21:02,848 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:21:02,848 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:21:02,849 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:21:02,849 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:21:02,849 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 243 states, 136 states have (on average 1.2205882352941178) internal successors, (166), 143 states have internal predecessors, (166), 93 states have call successors, (93), 14 states have call predecessors, (93), 13 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 04:21:02,858 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 243 states to 243 states and 350 transitions. [2022-04-28 04:21:02,858 INFO L78 Accepts]: Start accepts. Automaton has 243 states and 350 transitions. Word has length 58 [2022-04-28 04:21:02,859 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:21:02,859 INFO L495 AbstractCegarLoop]: Abstraction has 243 states and 350 transitions. [2022-04-28 04:21:02,859 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.75) internal successors, (30), 8 states have internal predecessors, (30), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:21:02,859 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 243 states and 350 transitions. [2022-04-28 04:21:03,507 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 350 edges. 350 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:21:03,508 INFO L276 IsEmpty]: Start isEmpty. Operand 243 states and 350 transitions. [2022-04-28 04:21:03,508 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-28 04:21:03,508 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:21:03,508 INFO L195 NwaCegarLoop]: trace histogram [8, 7, 7, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:21:03,525 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Ended with exit code 0 [2022-04-28 04:21:03,709 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-28 04:21:03,709 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:21:03,710 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:21:03,710 INFO L85 PathProgramCache]: Analyzing trace with hash 1658124158, now seen corresponding path program 1 times [2022-04-28 04:21:03,710 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:21:03,710 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [528700090] [2022-04-28 04:21:03,710 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:21:03,710 INFO L85 PathProgramCache]: Analyzing trace with hash 1658124158, now seen corresponding path program 2 times [2022-04-28 04:21:03,710 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:21:03,710 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1857999988] [2022-04-28 04:21:03,710 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:21:03,710 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:21:03,740 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:21:03,740 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2086554067] [2022-04-28 04:21:03,741 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 04:21:03,741 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:21:03,741 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:21:03,745 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:21:03,745 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-04-28 04:21:03,793 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 04:21:03,793 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:21:03,794 INFO L263 TraceCheckSpWp]: Trace formula consists of 168 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-28 04:21:03,805 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:21:03,806 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:21:04,135 INFO L272 TraceCheckUtils]: 0: Hoare triple {11084#true} call ULTIMATE.init(); {11084#true} is VALID [2022-04-28 04:21:04,135 INFO L290 TraceCheckUtils]: 1: Hoare triple {11084#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {11084#true} is VALID [2022-04-28 04:21:04,135 INFO L290 TraceCheckUtils]: 2: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 04:21:04,135 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11084#true} {11084#true} #105#return; {11084#true} is VALID [2022-04-28 04:21:04,135 INFO L272 TraceCheckUtils]: 4: Hoare triple {11084#true} call #t~ret6 := main(); {11084#true} is VALID [2022-04-28 04:21:04,135 INFO L290 TraceCheckUtils]: 5: Hoare triple {11084#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11084#true} is VALID [2022-04-28 04:21:04,135 INFO L272 TraceCheckUtils]: 6: Hoare triple {11084#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11084#true} is VALID [2022-04-28 04:21:04,135 INFO L290 TraceCheckUtils]: 7: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 04:21:04,135 INFO L290 TraceCheckUtils]: 8: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 04:21:04,136 INFO L290 TraceCheckUtils]: 9: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 04:21:04,136 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11084#true} {11084#true} #91#return; {11084#true} is VALID [2022-04-28 04:21:04,136 INFO L272 TraceCheckUtils]: 11: Hoare triple {11084#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11084#true} is VALID [2022-04-28 04:21:04,136 INFO L290 TraceCheckUtils]: 12: Hoare triple {11084#true} ~cond := #in~cond; {11125#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 04:21:04,137 INFO L290 TraceCheckUtils]: 13: Hoare triple {11125#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {11129#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:21:04,137 INFO L290 TraceCheckUtils]: 14: Hoare triple {11129#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {11129#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:21:04,138 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11129#(not (= |assume_abort_if_not_#in~cond| 0))} {11084#true} #93#return; {11136#(<= 1 main_~y~0)} is VALID [2022-04-28 04:21:04,139 INFO L290 TraceCheckUtils]: 16: Hoare triple {11136#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11140#(<= 1 main_~b~0)} is VALID [2022-04-28 04:21:04,139 INFO L290 TraceCheckUtils]: 17: Hoare triple {11140#(<= 1 main_~b~0)} assume !false; {11140#(<= 1 main_~b~0)} is VALID [2022-04-28 04:21:04,140 INFO L290 TraceCheckUtils]: 18: Hoare triple {11140#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11140#(<= 1 main_~b~0)} is VALID [2022-04-28 04:21:04,140 INFO L290 TraceCheckUtils]: 19: Hoare triple {11140#(<= 1 main_~b~0)} assume !false; {11140#(<= 1 main_~b~0)} is VALID [2022-04-28 04:21:04,141 INFO L290 TraceCheckUtils]: 20: Hoare triple {11140#(<= 1 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 04:21:04,141 INFO L290 TraceCheckUtils]: 21: Hoare triple {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} assume !false; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 04:21:04,142 INFO L272 TraceCheckUtils]: 22: Hoare triple {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11084#true} is VALID [2022-04-28 04:21:04,142 INFO L290 TraceCheckUtils]: 23: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 04:21:04,142 INFO L290 TraceCheckUtils]: 24: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 04:21:04,142 INFO L290 TraceCheckUtils]: 25: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 04:21:04,143 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11084#true} {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #95#return; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 04:21:04,143 INFO L272 TraceCheckUtils]: 27: Hoare triple {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11084#true} is VALID [2022-04-28 04:21:04,143 INFO L290 TraceCheckUtils]: 28: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 04:21:04,143 INFO L290 TraceCheckUtils]: 29: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 04:21:04,144 INFO L290 TraceCheckUtils]: 30: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 04:21:04,145 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {11084#true} {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #97#return; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 04:21:04,145 INFO L272 TraceCheckUtils]: 32: Hoare triple {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11084#true} is VALID [2022-04-28 04:21:04,145 INFO L290 TraceCheckUtils]: 33: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 04:21:04,145 INFO L290 TraceCheckUtils]: 34: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 04:21:04,145 INFO L290 TraceCheckUtils]: 35: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 04:21:04,146 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {11084#true} {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #99#return; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 04:21:04,146 INFO L272 TraceCheckUtils]: 37: Hoare triple {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {11084#true} is VALID [2022-04-28 04:21:04,147 INFO L290 TraceCheckUtils]: 38: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 04:21:04,147 INFO L290 TraceCheckUtils]: 39: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 04:21:04,147 INFO L290 TraceCheckUtils]: 40: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 04:21:04,147 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {11084#true} {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #101#return; {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 04:21:04,148 INFO L290 TraceCheckUtils]: 42: Hoare triple {11153#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 04:21:04,148 INFO L290 TraceCheckUtils]: 43: Hoare triple {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} assume !false; {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 04:21:04,148 INFO L272 TraceCheckUtils]: 44: Hoare triple {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11084#true} is VALID [2022-04-28 04:21:04,149 INFO L290 TraceCheckUtils]: 45: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 04:21:04,149 INFO L290 TraceCheckUtils]: 46: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 04:21:04,149 INFO L290 TraceCheckUtils]: 47: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 04:21:04,149 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {11084#true} {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #95#return; {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 04:21:04,150 INFO L272 TraceCheckUtils]: 49: Hoare triple {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11084#true} is VALID [2022-04-28 04:21:04,150 INFO L290 TraceCheckUtils]: 50: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 04:21:04,150 INFO L290 TraceCheckUtils]: 51: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 04:21:04,150 INFO L290 TraceCheckUtils]: 52: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 04:21:04,151 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {11084#true} {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #97#return; {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 04:21:04,151 INFO L272 TraceCheckUtils]: 54: Hoare triple {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11084#true} is VALID [2022-04-28 04:21:04,151 INFO L290 TraceCheckUtils]: 55: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 04:21:04,151 INFO L290 TraceCheckUtils]: 56: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 04:21:04,151 INFO L290 TraceCheckUtils]: 57: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 04:21:04,152 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {11084#true} {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #99#return; {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 04:21:04,152 INFO L272 TraceCheckUtils]: 59: Hoare triple {11220#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {11272#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:21:04,153 INFO L290 TraceCheckUtils]: 60: Hoare triple {11272#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11276#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:21:04,153 INFO L290 TraceCheckUtils]: 61: Hoare triple {11276#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11085#false} is VALID [2022-04-28 04:21:04,153 INFO L290 TraceCheckUtils]: 62: Hoare triple {11085#false} assume !false; {11085#false} is VALID [2022-04-28 04:21:04,154 INFO L134 CoverageAnalysis]: Checked inductivity of 107 backedges. 17 proven. 5 refuted. 0 times theorem prover too weak. 85 trivial. 0 not checked. [2022-04-28 04:21:04,154 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:21:04,423 INFO L290 TraceCheckUtils]: 62: Hoare triple {11085#false} assume !false; {11085#false} is VALID [2022-04-28 04:21:04,424 INFO L290 TraceCheckUtils]: 61: Hoare triple {11276#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11085#false} is VALID [2022-04-28 04:21:04,424 INFO L290 TraceCheckUtils]: 60: Hoare triple {11272#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11276#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:21:04,425 INFO L272 TraceCheckUtils]: 59: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {11272#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:21:04,425 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #99#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 04:21:04,425 INFO L290 TraceCheckUtils]: 57: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 04:21:04,425 INFO L290 TraceCheckUtils]: 56: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 04:21:04,425 INFO L290 TraceCheckUtils]: 55: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 04:21:04,425 INFO L272 TraceCheckUtils]: 54: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11084#true} is VALID [2022-04-28 04:21:04,426 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #97#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 04:21:04,426 INFO L290 TraceCheckUtils]: 52: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 04:21:04,426 INFO L290 TraceCheckUtils]: 51: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 04:21:04,426 INFO L290 TraceCheckUtils]: 50: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 04:21:04,426 INFO L272 TraceCheckUtils]: 49: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11084#true} is VALID [2022-04-28 04:21:04,427 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #95#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 04:21:04,427 INFO L290 TraceCheckUtils]: 47: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 04:21:04,427 INFO L290 TraceCheckUtils]: 46: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 04:21:04,427 INFO L290 TraceCheckUtils]: 45: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 04:21:04,427 INFO L272 TraceCheckUtils]: 44: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11084#true} is VALID [2022-04-28 04:21:04,427 INFO L290 TraceCheckUtils]: 43: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !false; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 04:21:04,430 INFO L290 TraceCheckUtils]: 42: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 04:21:04,430 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #101#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 04:21:04,430 INFO L290 TraceCheckUtils]: 40: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 04:21:04,430 INFO L290 TraceCheckUtils]: 39: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 04:21:04,430 INFO L290 TraceCheckUtils]: 38: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 04:21:04,430 INFO L272 TraceCheckUtils]: 37: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {11084#true} is VALID [2022-04-28 04:21:04,431 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #99#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 04:21:04,431 INFO L290 TraceCheckUtils]: 35: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 04:21:04,431 INFO L290 TraceCheckUtils]: 34: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 04:21:04,431 INFO L290 TraceCheckUtils]: 33: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 04:21:04,431 INFO L272 TraceCheckUtils]: 32: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11084#true} is VALID [2022-04-28 04:21:04,432 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #97#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 04:21:04,432 INFO L290 TraceCheckUtils]: 30: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 04:21:04,432 INFO L290 TraceCheckUtils]: 29: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 04:21:04,432 INFO L290 TraceCheckUtils]: 28: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 04:21:04,432 INFO L272 TraceCheckUtils]: 27: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11084#true} is VALID [2022-04-28 04:21:04,433 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11084#true} {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} #95#return; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 04:21:04,433 INFO L290 TraceCheckUtils]: 25: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 04:21:04,433 INFO L290 TraceCheckUtils]: 24: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 04:21:04,433 INFO L290 TraceCheckUtils]: 23: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 04:21:04,433 INFO L272 TraceCheckUtils]: 22: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11084#true} is VALID [2022-04-28 04:21:04,433 INFO L290 TraceCheckUtils]: 21: Hoare triple {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !false; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 04:21:04,434 INFO L290 TraceCheckUtils]: 20: Hoare triple {11084#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11292#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 04:21:04,434 INFO L290 TraceCheckUtils]: 19: Hoare triple {11084#true} assume !false; {11084#true} is VALID [2022-04-28 04:21:04,434 INFO L290 TraceCheckUtils]: 18: Hoare triple {11084#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11084#true} is VALID [2022-04-28 04:21:04,434 INFO L290 TraceCheckUtils]: 17: Hoare triple {11084#true} assume !false; {11084#true} is VALID [2022-04-28 04:21:04,434 INFO L290 TraceCheckUtils]: 16: Hoare triple {11084#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11084#true} is VALID [2022-04-28 04:21:04,434 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11084#true} {11084#true} #93#return; {11084#true} is VALID [2022-04-28 04:21:04,434 INFO L290 TraceCheckUtils]: 14: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 04:21:04,434 INFO L290 TraceCheckUtils]: 13: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 04:21:04,434 INFO L290 TraceCheckUtils]: 12: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 04:21:04,434 INFO L272 TraceCheckUtils]: 11: Hoare triple {11084#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11084#true} is VALID [2022-04-28 04:21:04,434 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11084#true} {11084#true} #91#return; {11084#true} is VALID [2022-04-28 04:21:04,434 INFO L290 TraceCheckUtils]: 9: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 04:21:04,434 INFO L290 TraceCheckUtils]: 8: Hoare triple {11084#true} assume !(0 == ~cond); {11084#true} is VALID [2022-04-28 04:21:04,434 INFO L290 TraceCheckUtils]: 7: Hoare triple {11084#true} ~cond := #in~cond; {11084#true} is VALID [2022-04-28 04:21:04,434 INFO L272 TraceCheckUtils]: 6: Hoare triple {11084#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11084#true} is VALID [2022-04-28 04:21:04,434 INFO L290 TraceCheckUtils]: 5: Hoare triple {11084#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11084#true} is VALID [2022-04-28 04:21:04,434 INFO L272 TraceCheckUtils]: 4: Hoare triple {11084#true} call #t~ret6 := main(); {11084#true} is VALID [2022-04-28 04:21:04,435 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11084#true} {11084#true} #105#return; {11084#true} is VALID [2022-04-28 04:21:04,435 INFO L290 TraceCheckUtils]: 2: Hoare triple {11084#true} assume true; {11084#true} is VALID [2022-04-28 04:21:04,435 INFO L290 TraceCheckUtils]: 1: Hoare triple {11084#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {11084#true} is VALID [2022-04-28 04:21:04,435 INFO L272 TraceCheckUtils]: 0: Hoare triple {11084#true} call ULTIMATE.init(); {11084#true} is VALID [2022-04-28 04:21:04,435 INFO L134 CoverageAnalysis]: Checked inductivity of 107 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 93 trivial. 0 not checked. [2022-04-28 04:21:04,435 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:21:04,435 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1857999988] [2022-04-28 04:21:04,435 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:21:04,436 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2086554067] [2022-04-28 04:21:04,436 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2086554067] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 04:21:04,436 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 04:21:04,436 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-28 04:21:04,436 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:21:04,436 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [528700090] [2022-04-28 04:21:04,436 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [528700090] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:21:04,436 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:21:04,436 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 04:21:04,436 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1243165782] [2022-04-28 04:21:04,437 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:21:04,437 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 63 [2022-04-28 04:21:04,437 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:21:04,437 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:21:04,473 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:21:04,474 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 04:21:04,474 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:21:04,474 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 04:21:04,474 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-28 04:21:04,474 INFO L87 Difference]: Start difference. First operand 243 states and 350 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:21:05,239 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:21:05,239 INFO L93 Difference]: Finished difference Result 249 states and 355 transitions. [2022-04-28 04:21:05,239 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 04:21:05,239 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 63 [2022-04-28 04:21:05,239 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:21:05,239 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:21:05,240 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 48 transitions. [2022-04-28 04:21:05,240 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:21:05,241 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 48 transitions. [2022-04-28 04:21:05,241 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 48 transitions. [2022-04-28 04:21:05,278 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:21:05,283 INFO L225 Difference]: With dead ends: 249 [2022-04-28 04:21:05,283 INFO L226 Difference]: Without dead ends: 247 [2022-04-28 04:21:05,284 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 126 GetRequests, 114 SyntacticMatches, 2 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=27, Invalid=105, Unknown=0, NotChecked=0, Total=132 [2022-04-28 04:21:05,284 INFO L413 NwaCegarLoop]: 37 mSDtfsCounter, 9 mSDsluCounter, 82 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 119 SdHoareTripleChecker+Invalid, 46 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 04:21:05,285 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [9 Valid, 119 Invalid, 46 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 04:21:05,285 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 247 states. [2022-04-28 04:21:05,840 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 247 to 247. [2022-04-28 04:21:05,840 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:21:05,840 INFO L82 GeneralOperation]: Start isEquivalent. First operand 247 states. Second operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 04:21:05,841 INFO L74 IsIncluded]: Start isIncluded. First operand 247 states. Second operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 04:21:05,841 INFO L87 Difference]: Start difference. First operand 247 states. Second operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 04:21:05,849 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:21:05,849 INFO L93 Difference]: Finished difference Result 247 states and 353 transitions. [2022-04-28 04:21:05,849 INFO L276 IsEmpty]: Start isEmpty. Operand 247 states and 353 transitions. [2022-04-28 04:21:05,850 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:21:05,850 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:21:05,851 INFO L74 IsIncluded]: Start isIncluded. First operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 247 states. [2022-04-28 04:21:05,851 INFO L87 Difference]: Start difference. First operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 247 states. [2022-04-28 04:21:05,859 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:21:05,859 INFO L93 Difference]: Finished difference Result 247 states and 353 transitions. [2022-04-28 04:21:05,859 INFO L276 IsEmpty]: Start isEmpty. Operand 247 states and 353 transitions. [2022-04-28 04:21:05,860 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:21:05,860 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:21:05,860 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:21:05,860 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:21:05,861 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 247 states, 139 states have (on average 1.2158273381294964) internal successors, (169), 146 states have internal predecessors, (169), 93 states have call successors, (93), 15 states have call predecessors, (93), 14 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 04:21:05,869 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 247 states to 247 states and 353 transitions. [2022-04-28 04:21:05,870 INFO L78 Accepts]: Start accepts. Automaton has 247 states and 353 transitions. Word has length 63 [2022-04-28 04:21:05,870 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:21:05,870 INFO L495 AbstractCegarLoop]: Abstraction has 247 states and 353 transitions. [2022-04-28 04:21:05,870 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:21:05,870 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 247 states and 353 transitions. [2022-04-28 04:21:06,649 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 353 edges. 353 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:21:06,650 INFO L276 IsEmpty]: Start isEmpty. Operand 247 states and 353 transitions. [2022-04-28 04:21:06,650 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-04-28 04:21:06,650 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:21:06,651 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:21:06,667 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-04-28 04:21:06,851 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2022-04-28 04:21:06,852 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:21:06,852 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:21:06,852 INFO L85 PathProgramCache]: Analyzing trace with hash 425575998, now seen corresponding path program 1 times [2022-04-28 04:21:06,852 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:21:06,852 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1527394557] [2022-04-28 04:21:06,852 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:21:06,852 INFO L85 PathProgramCache]: Analyzing trace with hash 425575998, now seen corresponding path program 2 times [2022-04-28 04:21:06,852 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:21:06,852 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [926510034] [2022-04-28 04:21:06,853 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:21:06,853 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:21:06,863 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:21:06,863 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1532366427] [2022-04-28 04:21:06,863 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 04:21:06,863 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:21:06,863 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:21:06,864 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:21:06,870 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2022-04-28 04:21:06,916 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 04:21:06,916 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:21:06,918 INFO L263 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-28 04:21:06,931 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:21:06,933 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:21:07,102 INFO L272 TraceCheckUtils]: 0: Hoare triple {12960#true} call ULTIMATE.init(); {12960#true} is VALID [2022-04-28 04:21:07,103 INFO L290 TraceCheckUtils]: 1: Hoare triple {12960#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {12960#true} is VALID [2022-04-28 04:21:07,103 INFO L290 TraceCheckUtils]: 2: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 04:21:07,103 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12960#true} {12960#true} #105#return; {12960#true} is VALID [2022-04-28 04:21:07,103 INFO L272 TraceCheckUtils]: 4: Hoare triple {12960#true} call #t~ret6 := main(); {12960#true} is VALID [2022-04-28 04:21:07,103 INFO L290 TraceCheckUtils]: 5: Hoare triple {12960#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {12960#true} is VALID [2022-04-28 04:21:07,103 INFO L272 TraceCheckUtils]: 6: Hoare triple {12960#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {12960#true} is VALID [2022-04-28 04:21:07,103 INFO L290 TraceCheckUtils]: 7: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-28 04:21:07,103 INFO L290 TraceCheckUtils]: 8: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-28 04:21:07,103 INFO L290 TraceCheckUtils]: 9: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 04:21:07,104 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12960#true} {12960#true} #91#return; {12960#true} is VALID [2022-04-28 04:21:07,104 INFO L272 TraceCheckUtils]: 11: Hoare triple {12960#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12960#true} is VALID [2022-04-28 04:21:07,104 INFO L290 TraceCheckUtils]: 12: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-28 04:21:07,104 INFO L290 TraceCheckUtils]: 13: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-28 04:21:07,104 INFO L290 TraceCheckUtils]: 14: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 04:21:07,104 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {12960#true} {12960#true} #93#return; {12960#true} is VALID [2022-04-28 04:21:07,104 INFO L290 TraceCheckUtils]: 16: Hoare triple {12960#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {12960#true} is VALID [2022-04-28 04:21:07,104 INFO L290 TraceCheckUtils]: 17: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-28 04:21:07,104 INFO L290 TraceCheckUtils]: 18: Hoare triple {12960#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12960#true} is VALID [2022-04-28 04:21:07,104 INFO L290 TraceCheckUtils]: 19: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-28 04:21:07,105 INFO L290 TraceCheckUtils]: 20: Hoare triple {12960#true} assume !(~c~0 >= ~b~0); {12960#true} is VALID [2022-04-28 04:21:07,105 INFO L290 TraceCheckUtils]: 21: Hoare triple {12960#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {12960#true} is VALID [2022-04-28 04:21:07,105 INFO L290 TraceCheckUtils]: 22: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-28 04:21:07,105 INFO L290 TraceCheckUtils]: 23: Hoare triple {12960#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12960#true} is VALID [2022-04-28 04:21:07,105 INFO L290 TraceCheckUtils]: 24: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-28 04:21:07,105 INFO L290 TraceCheckUtils]: 25: Hoare triple {12960#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {12960#true} is VALID [2022-04-28 04:21:07,105 INFO L290 TraceCheckUtils]: 26: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-28 04:21:07,105 INFO L272 TraceCheckUtils]: 27: Hoare triple {12960#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12960#true} is VALID [2022-04-28 04:21:07,105 INFO L290 TraceCheckUtils]: 28: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-28 04:21:07,105 INFO L290 TraceCheckUtils]: 29: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-28 04:21:07,105 INFO L290 TraceCheckUtils]: 30: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 04:21:07,106 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {12960#true} {12960#true} #95#return; {12960#true} is VALID [2022-04-28 04:21:07,106 INFO L272 TraceCheckUtils]: 32: Hoare triple {12960#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {12960#true} is VALID [2022-04-28 04:21:07,111 INFO L290 TraceCheckUtils]: 33: Hoare triple {12960#true} ~cond := #in~cond; {13064#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:21:07,112 INFO L290 TraceCheckUtils]: 34: Hoare triple {13064#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:21:07,112 INFO L290 TraceCheckUtils]: 35: Hoare triple {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:21:07,113 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} {12960#true} #97#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:21:07,113 INFO L272 TraceCheckUtils]: 37: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {12960#true} is VALID [2022-04-28 04:21:07,113 INFO L290 TraceCheckUtils]: 38: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-28 04:21:07,114 INFO L290 TraceCheckUtils]: 39: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-28 04:21:07,114 INFO L290 TraceCheckUtils]: 40: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 04:21:07,114 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {12960#true} {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #99#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:21:07,114 INFO L272 TraceCheckUtils]: 42: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {12960#true} is VALID [2022-04-28 04:21:07,115 INFO L290 TraceCheckUtils]: 43: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-28 04:21:07,115 INFO L290 TraceCheckUtils]: 44: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-28 04:21:07,115 INFO L290 TraceCheckUtils]: 45: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 04:21:07,115 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {12960#true} {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #101#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:21:07,116 INFO L290 TraceCheckUtils]: 47: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:21:07,116 INFO L290 TraceCheckUtils]: 48: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:21:07,117 INFO L290 TraceCheckUtils]: 49: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:21:07,117 INFO L290 TraceCheckUtils]: 50: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:21:07,118 INFO L290 TraceCheckUtils]: 51: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 04:21:07,118 INFO L290 TraceCheckUtils]: 52: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 04:21:07,119 INFO L290 TraceCheckUtils]: 53: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 04:21:07,119 INFO L290 TraceCheckUtils]: 54: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 04:21:07,120 INFO L290 TraceCheckUtils]: 55: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 04:21:07,120 INFO L290 TraceCheckUtils]: 56: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 04:21:07,121 INFO L272 TraceCheckUtils]: 57: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13140#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:21:07,121 INFO L290 TraceCheckUtils]: 58: Hoare triple {13140#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13144#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:21:07,122 INFO L290 TraceCheckUtils]: 59: Hoare triple {13144#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {12961#false} is VALID [2022-04-28 04:21:07,122 INFO L290 TraceCheckUtils]: 60: Hoare triple {12961#false} assume !false; {12961#false} is VALID [2022-04-28 04:21:07,122 INFO L134 CoverageAnalysis]: Checked inductivity of 57 backedges. 25 proven. 9 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2022-04-28 04:21:07,122 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:21:24,091 INFO L290 TraceCheckUtils]: 60: Hoare triple {12961#false} assume !false; {12961#false} is VALID [2022-04-28 04:21:24,091 INFO L290 TraceCheckUtils]: 59: Hoare triple {13144#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {12961#false} is VALID [2022-04-28 04:21:24,092 INFO L290 TraceCheckUtils]: 58: Hoare triple {13140#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13144#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:21:24,092 INFO L272 TraceCheckUtils]: 57: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13140#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:21:24,093 INFO L290 TraceCheckUtils]: 56: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 04:21:24,093 INFO L290 TraceCheckUtils]: 55: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 04:21:24,093 INFO L290 TraceCheckUtils]: 54: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 04:21:24,094 INFO L290 TraceCheckUtils]: 53: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 04:21:24,094 INFO L290 TraceCheckUtils]: 52: Hoare triple {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 04:21:24,094 INFO L290 TraceCheckUtils]: 51: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {13121#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 04:21:24,095 INFO L290 TraceCheckUtils]: 50: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:21:24,095 INFO L290 TraceCheckUtils]: 49: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:21:24,096 INFO L290 TraceCheckUtils]: 48: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:21:24,096 INFO L290 TraceCheckUtils]: 47: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:21:24,097 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {12960#true} {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #101#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:21:24,097 INFO L290 TraceCheckUtils]: 45: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 04:21:24,097 INFO L290 TraceCheckUtils]: 44: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-28 04:21:24,098 INFO L290 TraceCheckUtils]: 43: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-28 04:21:24,098 INFO L272 TraceCheckUtils]: 42: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {12960#true} is VALID [2022-04-28 04:21:24,098 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {12960#true} {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #99#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:21:24,099 INFO L290 TraceCheckUtils]: 40: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 04:21:24,099 INFO L290 TraceCheckUtils]: 39: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-28 04:21:24,099 INFO L290 TraceCheckUtils]: 38: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-28 04:21:24,099 INFO L272 TraceCheckUtils]: 37: Hoare triple {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {12960#true} is VALID [2022-04-28 04:21:24,100 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} {12960#true} #97#return; {13075#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:21:24,100 INFO L290 TraceCheckUtils]: 35: Hoare triple {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:21:24,100 INFO L290 TraceCheckUtils]: 34: Hoare triple {13232#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {13068#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:21:24,101 INFO L290 TraceCheckUtils]: 33: Hoare triple {12960#true} ~cond := #in~cond; {13232#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 04:21:24,101 INFO L272 TraceCheckUtils]: 32: Hoare triple {12960#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {12960#true} is VALID [2022-04-28 04:21:24,101 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {12960#true} {12960#true} #95#return; {12960#true} is VALID [2022-04-28 04:21:24,101 INFO L290 TraceCheckUtils]: 30: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 04:21:24,101 INFO L290 TraceCheckUtils]: 29: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-28 04:21:24,101 INFO L290 TraceCheckUtils]: 28: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-28 04:21:24,101 INFO L272 TraceCheckUtils]: 27: Hoare triple {12960#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12960#true} is VALID [2022-04-28 04:21:24,101 INFO L290 TraceCheckUtils]: 26: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-28 04:21:24,101 INFO L290 TraceCheckUtils]: 25: Hoare triple {12960#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {12960#true} is VALID [2022-04-28 04:21:24,101 INFO L290 TraceCheckUtils]: 24: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-28 04:21:24,101 INFO L290 TraceCheckUtils]: 23: Hoare triple {12960#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12960#true} is VALID [2022-04-28 04:21:24,101 INFO L290 TraceCheckUtils]: 22: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-28 04:21:24,102 INFO L290 TraceCheckUtils]: 21: Hoare triple {12960#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {12960#true} is VALID [2022-04-28 04:21:24,102 INFO L290 TraceCheckUtils]: 20: Hoare triple {12960#true} assume !(~c~0 >= ~b~0); {12960#true} is VALID [2022-04-28 04:21:24,102 INFO L290 TraceCheckUtils]: 19: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-28 04:21:24,102 INFO L290 TraceCheckUtils]: 18: Hoare triple {12960#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12960#true} is VALID [2022-04-28 04:21:24,102 INFO L290 TraceCheckUtils]: 17: Hoare triple {12960#true} assume !false; {12960#true} is VALID [2022-04-28 04:21:24,102 INFO L290 TraceCheckUtils]: 16: Hoare triple {12960#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {12960#true} is VALID [2022-04-28 04:21:24,102 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {12960#true} {12960#true} #93#return; {12960#true} is VALID [2022-04-28 04:21:24,102 INFO L290 TraceCheckUtils]: 14: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 04:21:24,102 INFO L290 TraceCheckUtils]: 13: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-28 04:21:24,102 INFO L290 TraceCheckUtils]: 12: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-28 04:21:24,102 INFO L272 TraceCheckUtils]: 11: Hoare triple {12960#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12960#true} is VALID [2022-04-28 04:21:24,102 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12960#true} {12960#true} #91#return; {12960#true} is VALID [2022-04-28 04:21:24,102 INFO L290 TraceCheckUtils]: 9: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 04:21:24,102 INFO L290 TraceCheckUtils]: 8: Hoare triple {12960#true} assume !(0 == ~cond); {12960#true} is VALID [2022-04-28 04:21:24,103 INFO L290 TraceCheckUtils]: 7: Hoare triple {12960#true} ~cond := #in~cond; {12960#true} is VALID [2022-04-28 04:21:24,103 INFO L272 TraceCheckUtils]: 6: Hoare triple {12960#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {12960#true} is VALID [2022-04-28 04:21:24,103 INFO L290 TraceCheckUtils]: 5: Hoare triple {12960#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {12960#true} is VALID [2022-04-28 04:21:24,103 INFO L272 TraceCheckUtils]: 4: Hoare triple {12960#true} call #t~ret6 := main(); {12960#true} is VALID [2022-04-28 04:21:24,103 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12960#true} {12960#true} #105#return; {12960#true} is VALID [2022-04-28 04:21:24,103 INFO L290 TraceCheckUtils]: 2: Hoare triple {12960#true} assume true; {12960#true} is VALID [2022-04-28 04:21:24,103 INFO L290 TraceCheckUtils]: 1: Hoare triple {12960#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {12960#true} is VALID [2022-04-28 04:21:24,103 INFO L272 TraceCheckUtils]: 0: Hoare triple {12960#true} call ULTIMATE.init(); {12960#true} is VALID [2022-04-28 04:21:24,104 INFO L134 CoverageAnalysis]: Checked inductivity of 57 backedges. 25 proven. 9 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2022-04-28 04:21:24,104 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:21:24,104 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [926510034] [2022-04-28 04:21:24,104 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:21:24,104 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1532366427] [2022-04-28 04:21:24,104 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1532366427] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:21:24,109 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 04:21:24,109 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 04:21:24,109 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:21:24,109 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1527394557] [2022-04-28 04:21:24,110 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1527394557] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:21:24,110 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:21:24,110 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 04:21:24,110 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1585571999] [2022-04-28 04:21:24,110 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:21:24,110 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 61 [2022-04-28 04:21:24,110 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:21:24,111 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:21:24,158 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:21:24,158 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 04:21:24,158 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:21:24,158 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 04:21:24,158 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-28 04:21:24,159 INFO L87 Difference]: Start difference. First operand 247 states and 353 transitions. Second operand has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:21:25,213 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:21:25,213 INFO L93 Difference]: Finished difference Result 261 states and 364 transitions. [2022-04-28 04:21:25,213 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 04:21:25,213 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 61 [2022-04-28 04:21:25,213 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:21:25,214 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:21:25,214 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 53 transitions. [2022-04-28 04:21:25,215 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:21:25,215 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 53 transitions. [2022-04-28 04:21:25,215 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 53 transitions. [2022-04-28 04:21:25,271 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:21:25,277 INFO L225 Difference]: With dead ends: 261 [2022-04-28 04:21:25,278 INFO L226 Difference]: Without dead ends: 259 [2022-04-28 04:21:25,278 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 125 GetRequests, 114 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-28 04:21:25,278 INFO L413 NwaCegarLoop]: 28 mSDtfsCounter, 21 mSDsluCounter, 116 mSDsCounter, 0 mSdLazyCounter, 106 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 144 SdHoareTripleChecker+Invalid, 116 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 106 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 04:21:25,279 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [23 Valid, 144 Invalid, 116 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 106 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 04:21:25,279 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 259 states. [2022-04-28 04:21:25,831 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 259 to 259. [2022-04-28 04:21:25,832 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:21:25,832 INFO L82 GeneralOperation]: Start isEquivalent. First operand 259 states. Second operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 04:21:25,833 INFO L74 IsIncluded]: Start isIncluded. First operand 259 states. Second operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 04:21:25,833 INFO L87 Difference]: Start difference. First operand 259 states. Second operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 04:21:25,841 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:21:25,841 INFO L93 Difference]: Finished difference Result 259 states and 362 transitions. [2022-04-28 04:21:25,841 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 362 transitions. [2022-04-28 04:21:25,842 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:21:25,842 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:21:25,843 INFO L74 IsIncluded]: Start isIncluded. First operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 259 states. [2022-04-28 04:21:25,843 INFO L87 Difference]: Start difference. First operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) Second operand 259 states. [2022-04-28 04:21:25,851 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:21:25,851 INFO L93 Difference]: Finished difference Result 259 states and 362 transitions. [2022-04-28 04:21:25,851 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 362 transitions. [2022-04-28 04:21:25,852 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:21:25,852 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:21:25,852 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:21:25,853 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:21:25,853 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 259 states, 148 states have (on average 1.2027027027027026) internal successors, (178), 155 states have internal predecessors, (178), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 85 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-28 04:21:25,861 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 259 states to 259 states and 362 transitions. [2022-04-28 04:21:25,862 INFO L78 Accepts]: Start accepts. Automaton has 259 states and 362 transitions. Word has length 61 [2022-04-28 04:21:25,862 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:21:25,862 INFO L495 AbstractCegarLoop]: Abstraction has 259 states and 362 transitions. [2022-04-28 04:21:25,862 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.125) internal successors, (33), 7 states have internal predecessors, (33), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:21:25,862 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 259 states and 362 transitions. [2022-04-28 04:21:26,587 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 362 edges. 362 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:21:26,587 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 362 transitions. [2022-04-28 04:21:26,588 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-04-28 04:21:26,588 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:21:26,588 INFO L195 NwaCegarLoop]: trace histogram [7, 6, 6, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:21:26,605 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-04-28 04:21:26,788 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-04-28 04:21:26,789 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:21:26,789 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:21:26,789 INFO L85 PathProgramCache]: Analyzing trace with hash -370317859, now seen corresponding path program 3 times [2022-04-28 04:21:26,789 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:21:26,789 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1392338111] [2022-04-28 04:21:26,789 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:21:26,789 INFO L85 PathProgramCache]: Analyzing trace with hash -370317859, now seen corresponding path program 4 times [2022-04-28 04:21:26,790 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:21:26,790 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1543184637] [2022-04-28 04:21:26,790 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:21:26,790 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:21:26,800 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:21:26,800 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [982346111] [2022-04-28 04:21:26,800 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 04:21:26,800 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:21:26,801 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:21:26,801 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-28 04:21:26,807 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-28 04:21:26,851 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 04:21:26,852 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:21:26,852 INFO L263 TraceCheckSpWp]: Trace formula consists of 156 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-28 04:21:26,863 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:21:26,864 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:21:27,038 INFO L272 TraceCheckUtils]: 0: Hoare triple {14899#true} call ULTIMATE.init(); {14899#true} is VALID [2022-04-28 04:21:27,038 INFO L290 TraceCheckUtils]: 1: Hoare triple {14899#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {14899#true} is VALID [2022-04-28 04:21:27,038 INFO L290 TraceCheckUtils]: 2: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-28 04:21:27,038 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14899#true} {14899#true} #105#return; {14899#true} is VALID [2022-04-28 04:21:27,038 INFO L272 TraceCheckUtils]: 4: Hoare triple {14899#true} call #t~ret6 := main(); {14899#true} is VALID [2022-04-28 04:21:27,038 INFO L290 TraceCheckUtils]: 5: Hoare triple {14899#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {14899#true} is VALID [2022-04-28 04:21:27,038 INFO L272 TraceCheckUtils]: 6: Hoare triple {14899#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {14899#true} is VALID [2022-04-28 04:21:27,038 INFO L290 TraceCheckUtils]: 7: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-28 04:21:27,038 INFO L290 TraceCheckUtils]: 8: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-28 04:21:27,039 INFO L290 TraceCheckUtils]: 9: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-28 04:21:27,039 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14899#true} {14899#true} #91#return; {14899#true} is VALID [2022-04-28 04:21:27,039 INFO L272 TraceCheckUtils]: 11: Hoare triple {14899#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14899#true} is VALID [2022-04-28 04:21:27,039 INFO L290 TraceCheckUtils]: 12: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-28 04:21:27,039 INFO L290 TraceCheckUtils]: 13: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-28 04:21:27,039 INFO L290 TraceCheckUtils]: 14: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-28 04:21:27,039 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {14899#true} {14899#true} #93#return; {14899#true} is VALID [2022-04-28 04:21:27,039 INFO L290 TraceCheckUtils]: 16: Hoare triple {14899#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {14899#true} is VALID [2022-04-28 04:21:27,039 INFO L290 TraceCheckUtils]: 17: Hoare triple {14899#true} assume !false; {14899#true} is VALID [2022-04-28 04:21:27,039 INFO L290 TraceCheckUtils]: 18: Hoare triple {14899#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {14899#true} is VALID [2022-04-28 04:21:27,039 INFO L290 TraceCheckUtils]: 19: Hoare triple {14899#true} assume !false; {14899#true} is VALID [2022-04-28 04:21:27,039 INFO L290 TraceCheckUtils]: 20: Hoare triple {14899#true} assume !(~c~0 >= ~b~0); {14899#true} is VALID [2022-04-28 04:21:27,039 INFO L290 TraceCheckUtils]: 21: Hoare triple {14899#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {14899#true} is VALID [2022-04-28 04:21:27,039 INFO L290 TraceCheckUtils]: 22: Hoare triple {14899#true} assume !false; {14899#true} is VALID [2022-04-28 04:21:27,039 INFO L290 TraceCheckUtils]: 23: Hoare triple {14899#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {14899#true} is VALID [2022-04-28 04:21:27,039 INFO L290 TraceCheckUtils]: 24: Hoare triple {14899#true} assume !false; {14899#true} is VALID [2022-04-28 04:21:27,040 INFO L290 TraceCheckUtils]: 25: Hoare triple {14899#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 04:21:27,040 INFO L290 TraceCheckUtils]: 26: Hoare triple {14979#(<= main_~v~0 main_~b~0)} assume !false; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 04:21:27,040 INFO L272 TraceCheckUtils]: 27: Hoare triple {14979#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14899#true} is VALID [2022-04-28 04:21:27,040 INFO L290 TraceCheckUtils]: 28: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-28 04:21:27,040 INFO L290 TraceCheckUtils]: 29: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-28 04:21:27,040 INFO L290 TraceCheckUtils]: 30: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-28 04:21:27,041 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {14899#true} {14979#(<= main_~v~0 main_~b~0)} #95#return; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 04:21:27,041 INFO L272 TraceCheckUtils]: 32: Hoare triple {14979#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14899#true} is VALID [2022-04-28 04:21:27,041 INFO L290 TraceCheckUtils]: 33: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-28 04:21:27,041 INFO L290 TraceCheckUtils]: 34: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-28 04:21:27,041 INFO L290 TraceCheckUtils]: 35: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-28 04:21:27,042 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14899#true} {14979#(<= main_~v~0 main_~b~0)} #97#return; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 04:21:27,042 INFO L272 TraceCheckUtils]: 37: Hoare triple {14979#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14899#true} is VALID [2022-04-28 04:21:27,042 INFO L290 TraceCheckUtils]: 38: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-28 04:21:27,042 INFO L290 TraceCheckUtils]: 39: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-28 04:21:27,042 INFO L290 TraceCheckUtils]: 40: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-28 04:21:27,042 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {14899#true} {14979#(<= main_~v~0 main_~b~0)} #99#return; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 04:21:27,043 INFO L272 TraceCheckUtils]: 42: Hoare triple {14979#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {14899#true} is VALID [2022-04-28 04:21:27,043 INFO L290 TraceCheckUtils]: 43: Hoare triple {14899#true} ~cond := #in~cond; {14899#true} is VALID [2022-04-28 04:21:27,043 INFO L290 TraceCheckUtils]: 44: Hoare triple {14899#true} assume !(0 == ~cond); {14899#true} is VALID [2022-04-28 04:21:27,043 INFO L290 TraceCheckUtils]: 45: Hoare triple {14899#true} assume true; {14899#true} is VALID [2022-04-28 04:21:27,043 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {14899#true} {14979#(<= main_~v~0 main_~b~0)} #101#return; {14979#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 04:21:27,044 INFO L290 TraceCheckUtils]: 47: Hoare triple {14979#(<= main_~v~0 main_~b~0)} assume !(~c~0 >= 2 * ~v~0); {15046#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-28 04:21:27,044 INFO L290 TraceCheckUtils]: 48: Hoare triple {15046#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {15050#(< main_~c~0 main_~b~0)} is VALID [2022-04-28 04:21:27,045 INFO L290 TraceCheckUtils]: 49: Hoare triple {15050#(< main_~c~0 main_~b~0)} assume !false; {15050#(< main_~c~0 main_~b~0)} is VALID [2022-04-28 04:21:27,045 INFO L290 TraceCheckUtils]: 50: Hoare triple {15050#(< main_~c~0 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {14900#false} is VALID [2022-04-28 04:21:27,045 INFO L290 TraceCheckUtils]: 51: Hoare triple {14900#false} assume !false; {14900#false} is VALID [2022-04-28 04:21:27,045 INFO L272 TraceCheckUtils]: 52: Hoare triple {14900#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14900#false} is VALID [2022-04-28 04:21:27,045 INFO L290 TraceCheckUtils]: 53: Hoare triple {14900#false} ~cond := #in~cond; {14900#false} is VALID [2022-04-28 04:21:27,045 INFO L290 TraceCheckUtils]: 54: Hoare triple {14900#false} assume !(0 == ~cond); {14900#false} is VALID [2022-04-28 04:21:27,045 INFO L290 TraceCheckUtils]: 55: Hoare triple {14900#false} assume true; {14900#false} is VALID [2022-04-28 04:21:27,045 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {14900#false} {14900#false} #95#return; {14900#false} is VALID [2022-04-28 04:21:27,045 INFO L272 TraceCheckUtils]: 57: Hoare triple {14900#false} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14900#false} is VALID [2022-04-28 04:21:27,045 INFO L290 TraceCheckUtils]: 58: Hoare triple {14900#false} ~cond := #in~cond; {14900#false} is VALID [2022-04-28 04:21:27,045 INFO L290 TraceCheckUtils]: 59: Hoare triple {14900#false} assume !(0 == ~cond); {14900#false} is VALID [2022-04-28 04:21:27,045 INFO L290 TraceCheckUtils]: 60: Hoare triple {14900#false} assume true; {14900#false} is VALID [2022-04-28 04:21:27,045 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {14900#false} {14900#false} #97#return; {14900#false} is VALID [2022-04-28 04:21:27,046 INFO L272 TraceCheckUtils]: 62: Hoare triple {14900#false} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14900#false} is VALID [2022-04-28 04:21:27,046 INFO L290 TraceCheckUtils]: 63: Hoare triple {14900#false} ~cond := #in~cond; {14900#false} is VALID [2022-04-28 04:21:27,046 INFO L290 TraceCheckUtils]: 64: Hoare triple {14900#false} assume 0 == ~cond; {14900#false} is VALID [2022-04-28 04:21:27,046 INFO L290 TraceCheckUtils]: 65: Hoare triple {14900#false} assume !false; {14900#false} is VALID [2022-04-28 04:21:27,046 INFO L134 CoverageAnalysis]: Checked inductivity of 88 backedges. 48 proven. 0 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-28 04:21:27,046 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 04:21:27,046 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:21:27,046 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1543184637] [2022-04-28 04:21:27,046 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:21:27,046 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [982346111] [2022-04-28 04:21:27,046 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [982346111] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:21:27,046 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:21:27,046 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 04:21:27,047 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:21:27,047 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1392338111] [2022-04-28 04:21:27,047 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1392338111] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:21:27,047 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:21:27,047 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 04:21:27,047 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2042996013] [2022-04-28 04:21:27,047 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:21:27,047 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 66 [2022-04-28 04:21:27,047 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:21:27,047 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 04:21:27,091 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:21:27,091 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 04:21:27,091 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:21:27,092 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 04:21:27,092 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 04:21:27,092 INFO L87 Difference]: Start difference. First operand 259 states and 362 transitions. Second operand has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 04:21:27,960 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:21:27,960 INFO L93 Difference]: Finished difference Result 445 states and 620 transitions. [2022-04-28 04:21:27,960 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 04:21:27,960 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 66 [2022-04-28 04:21:27,960 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:21:27,961 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 04:21:27,962 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 80 transitions. [2022-04-28 04:21:27,962 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 04:21:27,963 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 80 transitions. [2022-04-28 04:21:27,963 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 80 transitions. [2022-04-28 04:21:28,040 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:21:28,046 INFO L225 Difference]: With dead ends: 445 [2022-04-28 04:21:28,047 INFO L226 Difference]: Without dead ends: 270 [2022-04-28 04:21:28,050 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 67 GetRequests, 63 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-28 04:21:28,050 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 3 mSDsluCounter, 54 mSDsCounter, 0 mSdLazyCounter, 43 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 3 SdHoareTripleChecker+Valid, 94 SdHoareTripleChecker+Invalid, 45 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 43 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 04:21:28,051 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [3 Valid, 94 Invalid, 45 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 43 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 04:21:28,052 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 270 states. [2022-04-28 04:21:28,676 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 270 to 250. [2022-04-28 04:21:28,676 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:21:28,677 INFO L82 GeneralOperation]: Start isEquivalent. First operand 270 states. Second operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-28 04:21:28,677 INFO L74 IsIncluded]: Start isIncluded. First operand 270 states. Second operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-28 04:21:28,678 INFO L87 Difference]: Start difference. First operand 270 states. Second operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-28 04:21:28,685 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:21:28,685 INFO L93 Difference]: Finished difference Result 270 states and 364 transitions. [2022-04-28 04:21:28,685 INFO L276 IsEmpty]: Start isEmpty. Operand 270 states and 364 transitions. [2022-04-28 04:21:28,686 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:21:28,686 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:21:28,688 INFO L74 IsIncluded]: Start isIncluded. First operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) Second operand 270 states. [2022-04-28 04:21:28,688 INFO L87 Difference]: Start difference. First operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) Second operand 270 states. [2022-04-28 04:21:28,695 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:21:28,695 INFO L93 Difference]: Finished difference Result 270 states and 364 transitions. [2022-04-28 04:21:28,695 INFO L276 IsEmpty]: Start isEmpty. Operand 270 states and 364 transitions. [2022-04-28 04:21:28,696 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:21:28,696 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:21:28,696 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:21:28,697 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:21:28,697 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 250 states, 147 states have (on average 1.1972789115646258) internal successors, (176), 148 states have internal predecessors, (176), 85 states have call successors, (85), 18 states have call predecessors, (85), 17 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-28 04:21:28,704 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 250 states to 250 states and 344 transitions. [2022-04-28 04:21:28,705 INFO L78 Accepts]: Start accepts. Automaton has 250 states and 344 transitions. Word has length 66 [2022-04-28 04:21:28,705 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:21:28,705 INFO L495 AbstractCegarLoop]: Abstraction has 250 states and 344 transitions. [2022-04-28 04:21:28,705 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.4) internal successors, (27), 5 states have internal predecessors, (27), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 04:21:28,705 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 250 states and 344 transitions. [2022-04-28 04:21:29,423 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 344 edges. 344 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:21:29,423 INFO L276 IsEmpty]: Start isEmpty. Operand 250 states and 344 transitions. [2022-04-28 04:21:29,424 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-04-28 04:21:29,424 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:21:29,424 INFO L195 NwaCegarLoop]: trace histogram [6, 5, 5, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:21:29,441 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-04-28 04:21:29,624 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable13 [2022-04-28 04:21:29,625 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:21:29,625 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:21:29,625 INFO L85 PathProgramCache]: Analyzing trace with hash -1735826638, now seen corresponding path program 5 times [2022-04-28 04:21:29,625 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:21:29,625 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [669278710] [2022-04-28 04:21:29,626 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:21:29,626 INFO L85 PathProgramCache]: Analyzing trace with hash -1735826638, now seen corresponding path program 6 times [2022-04-28 04:21:29,626 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:21:29,626 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [467078144] [2022-04-28 04:21:29,626 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:21:29,626 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:21:29,651 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:21:29,652 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [146099049] [2022-04-28 04:21:29,652 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 04:21:29,652 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:21:29,652 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:21:29,657 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-28 04:21:29,661 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-28 04:21:29,719 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-28 04:21:29,720 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:21:29,721 INFO L263 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 68 conjunts are in the unsatisfiable core [2022-04-28 04:21:29,736 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:21:29,737 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:22:12,736 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 04:22:22,436 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 04:22:23,206 INFO L272 TraceCheckUtils]: 0: Hoare triple {17034#true} call ULTIMATE.init(); {17034#true} is VALID [2022-04-28 04:22:23,207 INFO L290 TraceCheckUtils]: 1: Hoare triple {17034#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {17034#true} is VALID [2022-04-28 04:22:23,207 INFO L290 TraceCheckUtils]: 2: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 04:22:23,207 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17034#true} {17034#true} #105#return; {17034#true} is VALID [2022-04-28 04:22:23,207 INFO L272 TraceCheckUtils]: 4: Hoare triple {17034#true} call #t~ret6 := main(); {17034#true} is VALID [2022-04-28 04:22:23,207 INFO L290 TraceCheckUtils]: 5: Hoare triple {17034#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {17034#true} is VALID [2022-04-28 04:22:23,207 INFO L272 TraceCheckUtils]: 6: Hoare triple {17034#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17034#true} is VALID [2022-04-28 04:22:23,207 INFO L290 TraceCheckUtils]: 7: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 04:22:23,207 INFO L290 TraceCheckUtils]: 8: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 04:22:23,207 INFO L290 TraceCheckUtils]: 9: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 04:22:23,208 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17034#true} {17034#true} #91#return; {17034#true} is VALID [2022-04-28 04:22:23,208 INFO L272 TraceCheckUtils]: 11: Hoare triple {17034#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17034#true} is VALID [2022-04-28 04:22:23,208 INFO L290 TraceCheckUtils]: 12: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 04:22:23,208 INFO L290 TraceCheckUtils]: 13: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 04:22:23,208 INFO L290 TraceCheckUtils]: 14: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 04:22:23,208 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {17034#true} {17034#true} #93#return; {17034#true} is VALID [2022-04-28 04:22:23,208 INFO L290 TraceCheckUtils]: 16: Hoare triple {17034#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {17087#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 04:22:23,209 INFO L290 TraceCheckUtils]: 17: Hoare triple {17087#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {17087#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 04:22:23,209 INFO L290 TraceCheckUtils]: 18: Hoare triple {17087#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17094#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 04:22:23,210 INFO L290 TraceCheckUtils]: 19: Hoare triple {17094#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {17094#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 04:22:23,210 INFO L290 TraceCheckUtils]: 20: Hoare triple {17094#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {17101#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 04:22:23,211 INFO L290 TraceCheckUtils]: 21: Hoare triple {17101#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {17105#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 04:22:23,211 INFO L290 TraceCheckUtils]: 22: Hoare triple {17105#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {17105#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 04:22:23,212 INFO L290 TraceCheckUtils]: 23: Hoare triple {17105#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17112#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-28 04:22:23,212 INFO L290 TraceCheckUtils]: 24: Hoare triple {17112#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (not (<= main_~c~0 main_~x~0)))} assume !false; {17112#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-28 04:22:23,213 INFO L290 TraceCheckUtils]: 25: Hoare triple {17112#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (not (<= main_~c~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-28 04:22:23,213 INFO L290 TraceCheckUtils]: 26: Hoare triple {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} assume !false; {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-28 04:22:23,214 INFO L272 TraceCheckUtils]: 27: Hoare triple {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17034#true} is VALID [2022-04-28 04:22:23,214 INFO L290 TraceCheckUtils]: 28: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 04:22:23,214 INFO L290 TraceCheckUtils]: 29: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 04:22:23,214 INFO L290 TraceCheckUtils]: 30: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 04:22:23,215 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {17034#true} {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} #95#return; {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-28 04:22:23,215 INFO L272 TraceCheckUtils]: 32: Hoare triple {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17034#true} is VALID [2022-04-28 04:22:23,215 INFO L290 TraceCheckUtils]: 33: Hoare triple {17034#true} ~cond := #in~cond; {17144#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:22:23,215 INFO L290 TraceCheckUtils]: 34: Hoare triple {17144#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:22:23,216 INFO L290 TraceCheckUtils]: 35: Hoare triple {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:22:23,217 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} {17119#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} #97#return; {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-28 04:22:23,217 INFO L272 TraceCheckUtils]: 37: Hoare triple {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17034#true} is VALID [2022-04-28 04:22:23,217 INFO L290 TraceCheckUtils]: 38: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 04:22:23,217 INFO L290 TraceCheckUtils]: 39: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 04:22:23,217 INFO L290 TraceCheckUtils]: 40: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 04:22:23,218 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {17034#true} {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} #99#return; {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-28 04:22:23,218 INFO L272 TraceCheckUtils]: 42: Hoare triple {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17034#true} is VALID [2022-04-28 04:22:23,219 INFO L290 TraceCheckUtils]: 43: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 04:22:23,219 INFO L290 TraceCheckUtils]: 44: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 04:22:23,219 INFO L290 TraceCheckUtils]: 45: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 04:22:23,220 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {17034#true} {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} #101#return; {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-28 04:22:23,220 INFO L290 TraceCheckUtils]: 47: Hoare triple {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} assume !(~c~0 >= 2 * ~v~0); {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-28 04:22:23,221 INFO L290 TraceCheckUtils]: 48: Hoare triple {17155#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= main_~c~0 main_~x~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {17192#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 04:22:23,222 INFO L290 TraceCheckUtils]: 49: Hoare triple {17192#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !false; {17192#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 04:22:23,223 INFO L290 TraceCheckUtils]: 50: Hoare triple {17192#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !(~c~0 >= ~b~0); {17199#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (not (<= main_~b~0 main_~c~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 04:22:23,226 INFO L290 TraceCheckUtils]: 51: Hoare triple {17199#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= (+ main_~c~0 main_~b~0) main_~x~0)) (not (<= main_~b~0 main_~c~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {17203#(and (= main_~s~0 1) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~a~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (<= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)) (not (<= (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0) main_~x~0)))} is VALID [2022-04-28 04:22:23,227 INFO L290 TraceCheckUtils]: 52: Hoare triple {17203#(and (= main_~s~0 1) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~a~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (<= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)) (not (<= (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0) main_~x~0)))} assume !false; {17203#(and (= main_~s~0 1) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~a~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (<= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)) (not (<= (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0) main_~x~0)))} is VALID [2022-04-28 04:22:23,228 INFO L290 TraceCheckUtils]: 53: Hoare triple {17203#(and (= main_~s~0 1) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~a~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (not (<= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)) (not (<= (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0) main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} is VALID [2022-04-28 04:22:23,228 INFO L290 TraceCheckUtils]: 54: Hoare triple {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} assume !false; {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} is VALID [2022-04-28 04:22:23,229 INFO L290 TraceCheckUtils]: 55: Hoare triple {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} is VALID [2022-04-28 04:22:23,230 INFO L290 TraceCheckUtils]: 56: Hoare triple {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} assume !false; {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} is VALID [2022-04-28 04:22:23,230 INFO L272 TraceCheckUtils]: 57: Hoare triple {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17034#true} is VALID [2022-04-28 04:22:23,230 INFO L290 TraceCheckUtils]: 58: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 04:22:23,230 INFO L290 TraceCheckUtils]: 59: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 04:22:23,230 INFO L290 TraceCheckUtils]: 60: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 04:22:23,231 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {17034#true} {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} #95#return; {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} is VALID [2022-04-28 04:22:23,234 INFO L272 TraceCheckUtils]: 62: Hoare triple {17210#(and (= main_~s~0 1) (< main_~b~0 (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0)) (= (+ (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~q~0) 0) (= (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~x~0) (= (mod (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) 0) (< main_~x~0 (+ (* (div (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) main_~x~0) main_~b~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17238#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:22:23,234 INFO L290 TraceCheckUtils]: 63: Hoare triple {17238#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {17242#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:22:23,235 INFO L290 TraceCheckUtils]: 64: Hoare triple {17242#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {17035#false} is VALID [2022-04-28 04:22:23,235 INFO L290 TraceCheckUtils]: 65: Hoare triple {17035#false} assume !false; {17035#false} is VALID [2022-04-28 04:22:23,236 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 12 proven. 32 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-04-28 04:22:23,236 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:22:42,415 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 04:22:47,003 INFO L290 TraceCheckUtils]: 65: Hoare triple {17035#false} assume !false; {17035#false} is VALID [2022-04-28 04:22:47,003 INFO L290 TraceCheckUtils]: 64: Hoare triple {17242#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {17035#false} is VALID [2022-04-28 04:22:47,003 INFO L290 TraceCheckUtils]: 63: Hoare triple {17238#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {17242#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:22:47,004 INFO L272 TraceCheckUtils]: 62: Hoare triple {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17238#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:22:47,005 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {17034#true} {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #95#return; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:22:47,005 INFO L290 TraceCheckUtils]: 60: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 04:22:47,005 INFO L290 TraceCheckUtils]: 59: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 04:22:47,005 INFO L290 TraceCheckUtils]: 58: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 04:22:47,005 INFO L272 TraceCheckUtils]: 57: Hoare triple {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17034#true} is VALID [2022-04-28 04:22:47,005 INFO L290 TraceCheckUtils]: 56: Hoare triple {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:22:47,006 INFO L290 TraceCheckUtils]: 55: Hoare triple {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:22:47,006 INFO L290 TraceCheckUtils]: 54: Hoare triple {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:22:47,006 INFO L290 TraceCheckUtils]: 53: Hoare triple {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:22:47,007 INFO L290 TraceCheckUtils]: 52: Hoare triple {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:22:49,008 WARN L290 TraceCheckUtils]: 51: Hoare triple {17292#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {17258#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-28 04:22:49,009 INFO L290 TraceCheckUtils]: 50: Hoare triple {17296#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} assume !(~c~0 >= ~b~0); {17292#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-28 04:22:49,010 INFO L290 TraceCheckUtils]: 49: Hoare triple {17296#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} assume !false; {17296#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 04:22:49,391 INFO L290 TraceCheckUtils]: 48: Hoare triple {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {17296#(or (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 04:22:49,392 INFO L290 TraceCheckUtils]: 47: Hoare triple {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:22:49,393 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {17034#true} {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #101#return; {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:22:49,393 INFO L290 TraceCheckUtils]: 45: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 04:22:49,393 INFO L290 TraceCheckUtils]: 44: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 04:22:49,393 INFO L290 TraceCheckUtils]: 43: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 04:22:49,393 INFO L272 TraceCheckUtils]: 42: Hoare triple {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17034#true} is VALID [2022-04-28 04:22:49,394 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {17034#true} {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #99#return; {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:22:49,394 INFO L290 TraceCheckUtils]: 40: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 04:22:49,394 INFO L290 TraceCheckUtils]: 39: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 04:22:49,394 INFO L290 TraceCheckUtils]: 38: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 04:22:49,394 INFO L272 TraceCheckUtils]: 37: Hoare triple {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17034#true} is VALID [2022-04-28 04:22:49,395 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #97#return; {17303#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:22:49,395 INFO L290 TraceCheckUtils]: 35: Hoare triple {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:22:49,396 INFO L290 TraceCheckUtils]: 34: Hoare triple {17350#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {17148#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:22:49,396 INFO L290 TraceCheckUtils]: 33: Hoare triple {17034#true} ~cond := #in~cond; {17350#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 04:22:49,396 INFO L272 TraceCheckUtils]: 32: Hoare triple {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17034#true} is VALID [2022-04-28 04:22:49,397 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {17034#true} {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #95#return; {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:22:49,397 INFO L290 TraceCheckUtils]: 30: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 04:22:49,397 INFO L290 TraceCheckUtils]: 29: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 04:22:49,397 INFO L290 TraceCheckUtils]: 28: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 04:22:49,397 INFO L272 TraceCheckUtils]: 27: Hoare triple {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17034#true} is VALID [2022-04-28 04:22:49,398 INFO L290 TraceCheckUtils]: 26: Hoare triple {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:22:49,399 INFO L290 TraceCheckUtils]: 25: Hoare triple {17375#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {17340#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:22:49,399 INFO L290 TraceCheckUtils]: 24: Hoare triple {17375#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {17375#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:22:49,400 INFO L290 TraceCheckUtils]: 23: Hoare triple {17382#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 2) main_~a~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17375#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:22:49,400 INFO L290 TraceCheckUtils]: 22: Hoare triple {17382#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 2) main_~a~0))} assume !false; {17382#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 2) main_~a~0))} is VALID [2022-04-28 04:22:51,403 WARN L290 TraceCheckUtils]: 21: Hoare triple {17389#(and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0))))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {17382#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 2) main_~a~0))} is UNKNOWN [2022-04-28 04:22:51,405 INFO L290 TraceCheckUtils]: 20: Hoare triple {17393#(or (<= main_~b~0 main_~c~0) (and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0)))))))} assume !(~c~0 >= ~b~0); {17389#(and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0))))))} is VALID [2022-04-28 04:22:51,406 INFO L290 TraceCheckUtils]: 19: Hoare triple {17393#(or (<= main_~b~0 main_~c~0) (and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0)))))))} assume !false; {17393#(or (<= main_~b~0 main_~c~0) (and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0)))))))} is VALID [2022-04-28 04:22:51,408 INFO L290 TraceCheckUtils]: 18: Hoare triple {17400#(or (and (or (forall ((main_~p~0 Int)) (or (= (+ (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) main_~b~0))) (not (= 0 (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)))) (not (= main_~x~0 0))) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) main_~a~0) main_~x~0)))) main_~b~0) (not (= (mod (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) 0)) (= main_~x~0 0) (= (+ (* main_~y~0 main_~r~0 1) (* (- 1) (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0)) main_~b~0 (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0 1) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (<= main_~b~0 main_~a~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17393#(or (<= main_~b~0 main_~c~0) (and (or (not (= (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) 0)) (forall ((main_~p~0 Int)) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (not (= main_~x~0 0))) (or (= main_~x~0 0) (not (= (mod (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0) 0)) (<= (+ (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0))) (* (* main_~y~0 main_~r~0) 2)) (+ (* 2 (* main_~q~0 main_~k~0 main_~x~0)) main_~b~0 (* (* main_~k~0 main_~y~0 main_~s~0) 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0 (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0 1) (* (- 1) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0)) (* (- 1) (* (+ (* (- 1) main_~q~0 main_~k~0) (div (+ (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)) main_~x~0)) main_~x~0)))))))} is VALID [2022-04-28 04:22:51,410 INFO L290 TraceCheckUtils]: 17: Hoare triple {17400#(or (and (or (forall ((main_~p~0 Int)) (or (= (+ (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) main_~b~0))) (not (= 0 (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)))) (not (= main_~x~0 0))) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) main_~a~0) main_~x~0)))) main_~b~0) (not (= (mod (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) 0)) (= main_~x~0 0) (= (+ (* main_~y~0 main_~r~0 1) (* (- 1) (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0)) main_~b~0 (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0 1) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (<= main_~b~0 main_~a~0))} assume !false; {17400#(or (and (or (forall ((main_~p~0 Int)) (or (= (+ (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) main_~b~0))) (not (= 0 (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)))) (not (= main_~x~0 0))) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) main_~a~0) main_~x~0)))) main_~b~0) (not (= (mod (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) 0)) (= main_~x~0 0) (= (+ (* main_~y~0 main_~r~0 1) (* (- 1) (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0)) main_~b~0 (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0 1) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (<= main_~b~0 main_~a~0))} is VALID [2022-04-28 04:22:51,411 INFO L290 TraceCheckUtils]: 16: Hoare triple {17034#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {17400#(or (and (or (forall ((main_~p~0 Int)) (or (= (+ (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) main_~b~0))) (not (= 0 (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)))) (not (= main_~x~0 0))) (or (<= (+ (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~x~0 (div (+ (* (- 1) main_~y~0 main_~r~0) main_~a~0) main_~x~0)))) main_~b~0) (not (= (mod (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) 0)) (= main_~x~0 0) (= (+ (* main_~y~0 main_~r~0 1) (* (- 1) (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0)) main_~b~0 (* (div (+ (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 (* main_~y~0 main_~s~0 0)) main_~x~0) main_~x~0 1) (* (- 1) (* main_~y~0 main_~r~0))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))) (<= main_~b~0 main_~a~0))} is VALID [2022-04-28 04:22:51,411 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {17034#true} {17034#true} #93#return; {17034#true} is VALID [2022-04-28 04:22:51,411 INFO L290 TraceCheckUtils]: 14: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 04:22:51,411 INFO L290 TraceCheckUtils]: 13: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 04:22:51,411 INFO L290 TraceCheckUtils]: 12: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 04:22:51,411 INFO L272 TraceCheckUtils]: 11: Hoare triple {17034#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17034#true} is VALID [2022-04-28 04:22:51,411 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17034#true} {17034#true} #91#return; {17034#true} is VALID [2022-04-28 04:22:51,411 INFO L290 TraceCheckUtils]: 9: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 04:22:51,411 INFO L290 TraceCheckUtils]: 8: Hoare triple {17034#true} assume !(0 == ~cond); {17034#true} is VALID [2022-04-28 04:22:51,412 INFO L290 TraceCheckUtils]: 7: Hoare triple {17034#true} ~cond := #in~cond; {17034#true} is VALID [2022-04-28 04:22:51,412 INFO L272 TraceCheckUtils]: 6: Hoare triple {17034#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17034#true} is VALID [2022-04-28 04:22:51,412 INFO L290 TraceCheckUtils]: 5: Hoare triple {17034#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {17034#true} is VALID [2022-04-28 04:22:51,412 INFO L272 TraceCheckUtils]: 4: Hoare triple {17034#true} call #t~ret6 := main(); {17034#true} is VALID [2022-04-28 04:22:51,412 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17034#true} {17034#true} #105#return; {17034#true} is VALID [2022-04-28 04:22:51,412 INFO L290 TraceCheckUtils]: 2: Hoare triple {17034#true} assume true; {17034#true} is VALID [2022-04-28 04:22:51,412 INFO L290 TraceCheckUtils]: 1: Hoare triple {17034#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {17034#true} is VALID [2022-04-28 04:22:51,412 INFO L272 TraceCheckUtils]: 0: Hoare triple {17034#true} call ULTIMATE.init(); {17034#true} is VALID [2022-04-28 04:22:51,413 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 16 proven. 28 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-04-28 04:22:51,413 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:22:51,413 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [467078144] [2022-04-28 04:22:51,413 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:22:51,413 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [146099049] [2022-04-28 04:22:51,413 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [146099049] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:22:51,413 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 04:22:51,413 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 16] total 28 [2022-04-28 04:22:51,413 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:22:51,414 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [669278710] [2022-04-28 04:22:51,414 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [669278710] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:22:51,414 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:22:51,414 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-28 04:22:51,414 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [718032425] [2022-04-28 04:22:51,414 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:22:51,414 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 66 [2022-04-28 04:22:51,415 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:22:51,415 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 04:22:51,472 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:22:51,472 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-28 04:22:51,472 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:22:51,473 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-28 04:22:51,473 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=124, Invalid=632, Unknown=0, NotChecked=0, Total=756 [2022-04-28 04:22:51,473 INFO L87 Difference]: Start difference. First operand 250 states and 344 transitions. Second operand has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 04:22:58,357 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:22:58,358 INFO L93 Difference]: Finished difference Result 321 states and 431 transitions. [2022-04-28 04:22:58,358 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 04:22:58,358 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 66 [2022-04-28 04:22:58,358 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:22:58,358 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 04:22:58,361 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 143 transitions. [2022-04-28 04:22:58,361 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 04:22:58,363 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 143 transitions. [2022-04-28 04:22:58,363 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 143 transitions. [2022-04-28 04:22:58,542 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 143 edges. 143 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:22:58,550 INFO L225 Difference]: With dead ends: 321 [2022-04-28 04:22:58,550 INFO L226 Difference]: Without dead ends: 319 [2022-04-28 04:22:58,551 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 140 GetRequests, 104 SyntacticMatches, 1 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 226 ImplicationChecksByTransitivity, 4.0s TimeCoverageRelationStatistics Valid=222, Invalid=1110, Unknown=0, NotChecked=0, Total=1332 [2022-04-28 04:22:58,557 INFO L413 NwaCegarLoop]: 45 mSDtfsCounter, 61 mSDsluCounter, 350 mSDsCounter, 0 mSdLazyCounter, 920 mSolverCounterSat, 40 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 73 SdHoareTripleChecker+Valid, 395 SdHoareTripleChecker+Invalid, 960 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 40 IncrementalHoareTripleChecker+Valid, 920 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.3s IncrementalHoareTripleChecker+Time [2022-04-28 04:22:58,558 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [73 Valid, 395 Invalid, 960 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [40 Valid, 920 Invalid, 0 Unknown, 0 Unchecked, 2.3s Time] [2022-04-28 04:22:58,559 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 319 states. [2022-04-28 04:22:59,381 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 319 to 305. [2022-04-28 04:22:59,381 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:22:59,382 INFO L82 GeneralOperation]: Start isEquivalent. First operand 319 states. Second operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) [2022-04-28 04:22:59,382 INFO L74 IsIncluded]: Start isIncluded. First operand 319 states. Second operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) [2022-04-28 04:22:59,387 INFO L87 Difference]: Start difference. First operand 319 states. Second operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) [2022-04-28 04:22:59,397 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:22:59,397 INFO L93 Difference]: Finished difference Result 319 states and 429 transitions. [2022-04-28 04:22:59,397 INFO L276 IsEmpty]: Start isEmpty. Operand 319 states and 429 transitions. [2022-04-28 04:22:59,398 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:22:59,398 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:22:59,399 INFO L74 IsIncluded]: Start isIncluded. First operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) Second operand 319 states. [2022-04-28 04:22:59,400 INFO L87 Difference]: Start difference. First operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) Second operand 319 states. [2022-04-28 04:22:59,409 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:22:59,409 INFO L93 Difference]: Finished difference Result 319 states and 429 transitions. [2022-04-28 04:22:59,409 INFO L276 IsEmpty]: Start isEmpty. Operand 319 states and 429 transitions. [2022-04-28 04:22:59,411 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:22:59,411 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:22:59,411 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:22:59,411 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:22:59,412 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 305 states, 181 states have (on average 1.1878453038674033) internal successors, (215), 182 states have internal predecessors, (215), 101 states have call successors, (101), 23 states have call predecessors, (101), 22 states have return successors, (99), 99 states have call predecessors, (99), 99 states have call successors, (99) [2022-04-28 04:22:59,422 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 305 states to 305 states and 415 transitions. [2022-04-28 04:22:59,423 INFO L78 Accepts]: Start accepts. Automaton has 305 states and 415 transitions. Word has length 66 [2022-04-28 04:22:59,423 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:22:59,423 INFO L495 AbstractCegarLoop]: Abstraction has 305 states and 415 transitions. [2022-04-28 04:22:59,423 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 16 states have internal predecessors, (36), 4 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-28 04:22:59,424 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 305 states and 415 transitions. [2022-04-28 04:23:00,441 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 415 edges. 415 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:23:00,441 INFO L276 IsEmpty]: Start isEmpty. Operand 305 states and 415 transitions. [2022-04-28 04:23:00,442 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-04-28 04:23:00,442 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:23:00,442 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:23:00,462 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Ended with exit code 0 [2022-04-28 04:23:00,651 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:23:00,652 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:23:00,652 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:23:00,652 INFO L85 PathProgramCache]: Analyzing trace with hash -1596323007, now seen corresponding path program 1 times [2022-04-28 04:23:00,652 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:23:00,652 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1920737208] [2022-04-28 04:23:00,653 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:23:00,653 INFO L85 PathProgramCache]: Analyzing trace with hash -1596323007, now seen corresponding path program 2 times [2022-04-28 04:23:00,653 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:23:00,653 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [816897681] [2022-04-28 04:23:00,653 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:23:00,653 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:23:00,665 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:23:00,665 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [249638753] [2022-04-28 04:23:00,665 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 04:23:00,665 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:23:00,666 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:23:00,667 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-28 04:23:00,672 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-28 04:23:00,717 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 04:23:00,718 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:23:00,719 INFO L263 TraceCheckSpWp]: Trace formula consists of 201 conjuncts, 62 conjunts are in the unsatisfiable core [2022-04-28 04:23:00,732 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:23:00,734 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:23:01,590 INFO L272 TraceCheckUtils]: 0: Hoare triple {19365#true} call ULTIMATE.init(); {19365#true} is VALID [2022-04-28 04:23:01,590 INFO L290 TraceCheckUtils]: 1: Hoare triple {19365#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {19365#true} is VALID [2022-04-28 04:23:01,590 INFO L290 TraceCheckUtils]: 2: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-28 04:23:01,591 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19365#true} {19365#true} #105#return; {19365#true} is VALID [2022-04-28 04:23:01,591 INFO L272 TraceCheckUtils]: 4: Hoare triple {19365#true} call #t~ret6 := main(); {19365#true} is VALID [2022-04-28 04:23:01,591 INFO L290 TraceCheckUtils]: 5: Hoare triple {19365#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {19365#true} is VALID [2022-04-28 04:23:01,591 INFO L272 TraceCheckUtils]: 6: Hoare triple {19365#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {19365#true} is VALID [2022-04-28 04:23:01,591 INFO L290 TraceCheckUtils]: 7: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-28 04:23:01,591 INFO L290 TraceCheckUtils]: 8: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-28 04:23:01,591 INFO L290 TraceCheckUtils]: 9: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-28 04:23:01,591 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {19365#true} {19365#true} #91#return; {19365#true} is VALID [2022-04-28 04:23:01,591 INFO L272 TraceCheckUtils]: 11: Hoare triple {19365#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {19365#true} is VALID [2022-04-28 04:23:01,591 INFO L290 TraceCheckUtils]: 12: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-28 04:23:01,591 INFO L290 TraceCheckUtils]: 13: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-28 04:23:01,591 INFO L290 TraceCheckUtils]: 14: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-28 04:23:01,591 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {19365#true} {19365#true} #93#return; {19365#true} is VALID [2022-04-28 04:23:01,592 INFO L290 TraceCheckUtils]: 16: Hoare triple {19365#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {19418#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:23:01,592 INFO L290 TraceCheckUtils]: 17: Hoare triple {19418#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {19418#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:23:01,592 INFO L290 TraceCheckUtils]: 18: Hoare triple {19418#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {19425#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:23:01,593 INFO L290 TraceCheckUtils]: 19: Hoare triple {19425#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {19425#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:23:01,593 INFO L290 TraceCheckUtils]: 20: Hoare triple {19425#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:23:01,594 INFO L290 TraceCheckUtils]: 21: Hoare triple {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:23:01,594 INFO L272 TraceCheckUtils]: 22: Hoare triple {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {19365#true} is VALID [2022-04-28 04:23:01,594 INFO L290 TraceCheckUtils]: 23: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-28 04:23:01,594 INFO L290 TraceCheckUtils]: 24: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-28 04:23:01,594 INFO L290 TraceCheckUtils]: 25: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-28 04:23:01,596 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {19365#true} {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} #95#return; {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:23:01,596 INFO L272 TraceCheckUtils]: 27: Hoare triple {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {19365#true} is VALID [2022-04-28 04:23:01,596 INFO L290 TraceCheckUtils]: 28: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-28 04:23:01,596 INFO L290 TraceCheckUtils]: 29: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-28 04:23:01,596 INFO L290 TraceCheckUtils]: 30: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-28 04:23:01,597 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {19365#true} {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} #97#return; {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:23:01,597 INFO L272 TraceCheckUtils]: 32: Hoare triple {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {19365#true} is VALID [2022-04-28 04:23:01,598 INFO L290 TraceCheckUtils]: 33: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-28 04:23:01,598 INFO L290 TraceCheckUtils]: 34: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-28 04:23:01,598 INFO L290 TraceCheckUtils]: 35: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-28 04:23:01,599 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {19365#true} {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} #99#return; {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:23:01,599 INFO L272 TraceCheckUtils]: 37: Hoare triple {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {19365#true} is VALID [2022-04-28 04:23:01,599 INFO L290 TraceCheckUtils]: 38: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-28 04:23:01,599 INFO L290 TraceCheckUtils]: 39: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-28 04:23:01,599 INFO L290 TraceCheckUtils]: 40: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-28 04:23:01,600 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {19365#true} {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} #101#return; {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:23:01,600 INFO L290 TraceCheckUtils]: 42: Hoare triple {19432#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {19499#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:23:01,601 INFO L290 TraceCheckUtils]: 43: Hoare triple {19499#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {19499#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:23:01,601 INFO L272 TraceCheckUtils]: 44: Hoare triple {19499#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {19365#true} is VALID [2022-04-28 04:23:01,601 INFO L290 TraceCheckUtils]: 45: Hoare triple {19365#true} ~cond := #in~cond; {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:23:01,601 INFO L290 TraceCheckUtils]: 46: Hoare triple {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:23:01,602 INFO L290 TraceCheckUtils]: 47: Hoare triple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:23:01,603 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} {19499#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~p~0 1))} #95#return; {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-28 04:23:01,603 INFO L272 TraceCheckUtils]: 49: Hoare triple {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {19365#true} is VALID [2022-04-28 04:23:01,603 INFO L290 TraceCheckUtils]: 50: Hoare triple {19365#true} ~cond := #in~cond; {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:23:01,603 INFO L290 TraceCheckUtils]: 51: Hoare triple {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:23:01,604 INFO L290 TraceCheckUtils]: 52: Hoare triple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:23:01,605 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} #97#return; {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-28 04:23:01,605 INFO L272 TraceCheckUtils]: 54: Hoare triple {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {19365#true} is VALID [2022-04-28 04:23:01,605 INFO L290 TraceCheckUtils]: 55: Hoare triple {19365#true} ~cond := #in~cond; {19365#true} is VALID [2022-04-28 04:23:01,605 INFO L290 TraceCheckUtils]: 56: Hoare triple {19365#true} assume !(0 == ~cond); {19365#true} is VALID [2022-04-28 04:23:01,605 INFO L290 TraceCheckUtils]: 57: Hoare triple {19365#true} assume true; {19365#true} is VALID [2022-04-28 04:23:01,605 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {19365#true} {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} #99#return; {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-28 04:23:01,606 INFO L272 TraceCheckUtils]: 59: Hoare triple {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {19365#true} is VALID [2022-04-28 04:23:01,606 INFO L290 TraceCheckUtils]: 60: Hoare triple {19365#true} ~cond := #in~cond; {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:23:01,606 INFO L290 TraceCheckUtils]: 61: Hoare triple {19509#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:23:01,606 INFO L290 TraceCheckUtils]: 62: Hoare triple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:23:01,607 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {19513#(not (= |__VERIFIER_assert_#in~cond| 0))} {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} #101#return; {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-28 04:23:01,608 INFO L290 TraceCheckUtils]: 64: Hoare triple {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-28 04:23:01,609 INFO L290 TraceCheckUtils]: 65: Hoare triple {19520#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:23:01,609 INFO L290 TraceCheckUtils]: 66: Hoare triple {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:23:01,610 INFO L290 TraceCheckUtils]: 67: Hoare triple {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:23:01,610 INFO L290 TraceCheckUtils]: 68: Hoare triple {19572#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {19582#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 04:23:01,611 INFO L290 TraceCheckUtils]: 69: Hoare triple {19582#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !false; {19582#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 04:23:01,611 INFO L290 TraceCheckUtils]: 70: Hoare triple {19582#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !(0 != ~b~0); {19589#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~x~0 (* (- 2) main_~a~0)) 0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 04:23:01,612 INFO L272 TraceCheckUtils]: 71: Hoare triple {19589#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~x~0 (* (- 2) main_~a~0)) 0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {19593#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:23:01,612 INFO L290 TraceCheckUtils]: 72: Hoare triple {19593#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {19597#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:23:01,612 INFO L290 TraceCheckUtils]: 73: Hoare triple {19597#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {19366#false} is VALID [2022-04-28 04:23:01,612 INFO L290 TraceCheckUtils]: 74: Hoare triple {19366#false} assume !false; {19366#false} is VALID [2022-04-28 04:23:01,613 INFO L134 CoverageAnalysis]: Checked inductivity of 142 backedges. 52 proven. 19 refuted. 0 times theorem prover too weak. 71 trivial. 0 not checked. [2022-04-28 04:23:01,613 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:23:54,441 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 04:23:56,478 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 04:24:13,440 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:24:13,440 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [816897681] [2022-04-28 04:24:13,440 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:24:13,440 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [249638753] [2022-04-28 04:24:13,440 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [249638753] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:24:13,440 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 04:24:13,441 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14] total 14 [2022-04-28 04:24:13,441 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:24:13,441 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1920737208] [2022-04-28 04:24:13,441 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1920737208] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:24:13,441 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:24:13,441 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 04:24:13,441 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1083235969] [2022-04-28 04:24:13,441 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:24:13,442 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 75 [2022-04-28 04:24:13,442 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:24:13,442 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 04:24:13,503 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:24:13,504 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 04:24:13,504 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:24:13,504 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 04:24:13,504 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=69, Invalid=392, Unknown=1, NotChecked=0, Total=462 [2022-04-28 04:24:13,504 INFO L87 Difference]: Start difference. First operand 305 states and 415 transitions. Second operand has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 04:24:17,550 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:24:17,550 INFO L93 Difference]: Finished difference Result 388 states and 532 transitions. [2022-04-28 04:24:17,550 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 04:24:17,550 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 75 [2022-04-28 04:24:17,550 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:24:17,551 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 04:24:17,553 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 138 transitions. [2022-04-28 04:24:17,553 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 04:24:17,555 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 138 transitions. [2022-04-28 04:24:17,555 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 138 transitions. [2022-04-28 04:24:17,756 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 138 edges. 138 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:24:17,767 INFO L225 Difference]: With dead ends: 388 [2022-04-28 04:24:17,767 INFO L226 Difference]: Without dead ends: 385 [2022-04-28 04:24:17,768 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 105 GetRequests, 80 SyntacticMatches, 1 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 132 ImplicationChecksByTransitivity, 7.5s TimeCoverageRelationStatistics Valid=100, Invalid=549, Unknown=1, NotChecked=0, Total=650 [2022-04-28 04:24:17,768 INFO L413 NwaCegarLoop]: 49 mSDtfsCounter, 41 mSDsluCounter, 282 mSDsCounter, 0 mSdLazyCounter, 795 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 58 SdHoareTripleChecker+Valid, 331 SdHoareTripleChecker+Invalid, 825 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 795 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.3s IncrementalHoareTripleChecker+Time [2022-04-28 04:24:17,769 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [58 Valid, 331 Invalid, 825 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 795 Invalid, 0 Unknown, 0 Unchecked, 1.3s Time] [2022-04-28 04:24:17,769 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 385 states. [2022-04-28 04:24:18,680 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 385 to 318. [2022-04-28 04:24:18,680 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:24:18,681 INFO L82 GeneralOperation]: Start isEquivalent. First operand 385 states. Second operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-28 04:24:18,681 INFO L74 IsIncluded]: Start isIncluded. First operand 385 states. Second operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-28 04:24:18,682 INFO L87 Difference]: Start difference. First operand 385 states. Second operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-28 04:24:18,694 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:24:18,694 INFO L93 Difference]: Finished difference Result 385 states and 528 transitions. [2022-04-28 04:24:18,694 INFO L276 IsEmpty]: Start isEmpty. Operand 385 states and 528 transitions. [2022-04-28 04:24:18,696 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:24:18,696 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:24:18,697 INFO L74 IsIncluded]: Start isIncluded. First operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) Second operand 385 states. [2022-04-28 04:24:18,697 INFO L87 Difference]: Start difference. First operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) Second operand 385 states. [2022-04-28 04:24:18,709 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:24:18,710 INFO L93 Difference]: Finished difference Result 385 states and 528 transitions. [2022-04-28 04:24:18,710 INFO L276 IsEmpty]: Start isEmpty. Operand 385 states and 528 transitions. [2022-04-28 04:24:18,711 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:24:18,711 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:24:18,711 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:24:18,712 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:24:18,712 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 318 states, 189 states have (on average 1.1904761904761905) internal successors, (225), 190 states have internal predecessors, (225), 105 states have call successors, (105), 24 states have call predecessors, (105), 23 states have return successors, (103), 103 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-28 04:24:18,727 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 318 states to 318 states and 433 transitions. [2022-04-28 04:24:18,727 INFO L78 Accepts]: Start accepts. Automaton has 318 states and 433 transitions. Word has length 75 [2022-04-28 04:24:18,728 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:24:18,728 INFO L495 AbstractCegarLoop]: Abstraction has 318 states and 433 transitions. [2022-04-28 04:24:18,728 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 2.3076923076923075) internal successors, (30), 13 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 04:24:18,728 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 318 states and 433 transitions. [2022-04-28 04:24:19,905 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 433 edges. 433 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:24:19,905 INFO L276 IsEmpty]: Start isEmpty. Operand 318 states and 433 transitions. [2022-04-28 04:24:19,906 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 81 [2022-04-28 04:24:19,906 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:24:19,906 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:24:19,930 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Ended with exit code 0 [2022-04-28 04:24:20,107 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable15 [2022-04-28 04:24:20,107 INFO L420 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:24:20,107 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:24:20,107 INFO L85 PathProgramCache]: Analyzing trace with hash 2103910188, now seen corresponding path program 3 times [2022-04-28 04:24:20,108 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:24:20,108 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [37108698] [2022-04-28 04:24:20,108 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:24:20,108 INFO L85 PathProgramCache]: Analyzing trace with hash 2103910188, now seen corresponding path program 4 times [2022-04-28 04:24:20,108 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:24:20,108 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1508664232] [2022-04-28 04:24:20,108 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:24:20,108 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:24:20,122 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:24:20,122 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [653022476] [2022-04-28 04:24:20,122 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 04:24:20,122 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:24:20,122 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:24:20,132 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-28 04:24:20,146 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-28 04:24:20,192 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 04:24:20,192 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:24:20,193 INFO L263 TraceCheckSpWp]: Trace formula consists of 192 conjuncts, 83 conjunts are in the unsatisfiable core [2022-04-28 04:24:20,209 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:24:20,211 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:24:21,552 INFO L272 TraceCheckUtils]: 0: Hoare triple {21882#true} call ULTIMATE.init(); {21882#true} is VALID [2022-04-28 04:24:21,552 INFO L290 TraceCheckUtils]: 1: Hoare triple {21882#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {21882#true} is VALID [2022-04-28 04:24:21,552 INFO L290 TraceCheckUtils]: 2: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 04:24:21,552 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21882#true} {21882#true} #105#return; {21882#true} is VALID [2022-04-28 04:24:21,552 INFO L272 TraceCheckUtils]: 4: Hoare triple {21882#true} call #t~ret6 := main(); {21882#true} is VALID [2022-04-28 04:24:21,552 INFO L290 TraceCheckUtils]: 5: Hoare triple {21882#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {21882#true} is VALID [2022-04-28 04:24:21,552 INFO L272 TraceCheckUtils]: 6: Hoare triple {21882#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21882#true} is VALID [2022-04-28 04:24:21,552 INFO L290 TraceCheckUtils]: 7: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 04:24:21,552 INFO L290 TraceCheckUtils]: 8: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 04:24:21,552 INFO L290 TraceCheckUtils]: 9: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 04:24:21,552 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21882#true} {21882#true} #91#return; {21882#true} is VALID [2022-04-28 04:24:21,553 INFO L272 TraceCheckUtils]: 11: Hoare triple {21882#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21882#true} is VALID [2022-04-28 04:24:21,553 INFO L290 TraceCheckUtils]: 12: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 04:24:21,553 INFO L290 TraceCheckUtils]: 13: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 04:24:21,553 INFO L290 TraceCheckUtils]: 14: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 04:24:21,553 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21882#true} {21882#true} #93#return; {21882#true} is VALID [2022-04-28 04:24:21,555 INFO L290 TraceCheckUtils]: 16: Hoare triple {21882#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {21935#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 04:24:21,556 INFO L290 TraceCheckUtils]: 17: Hoare triple {21935#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {21935#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 04:24:21,556 INFO L290 TraceCheckUtils]: 18: Hoare triple {21935#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21942#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 04:24:21,557 INFO L290 TraceCheckUtils]: 19: Hoare triple {21942#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {21942#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 04:24:21,557 INFO L290 TraceCheckUtils]: 20: Hoare triple {21942#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {21942#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 04:24:21,558 INFO L290 TraceCheckUtils]: 21: Hoare triple {21942#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {21952#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 04:24:21,559 INFO L290 TraceCheckUtils]: 22: Hoare triple {21952#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {21952#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 04:24:21,559 INFO L290 TraceCheckUtils]: 23: Hoare triple {21952#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21959#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 04:24:21,560 INFO L290 TraceCheckUtils]: 24: Hoare triple {21959#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {21959#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 04:24:21,560 INFO L290 TraceCheckUtils]: 25: Hoare triple {21959#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 04:24:21,561 INFO L290 TraceCheckUtils]: 26: Hoare triple {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !false; {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 04:24:21,561 INFO L272 TraceCheckUtils]: 27: Hoare triple {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21882#true} is VALID [2022-04-28 04:24:21,561 INFO L290 TraceCheckUtils]: 28: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 04:24:21,561 INFO L290 TraceCheckUtils]: 29: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 04:24:21,561 INFO L290 TraceCheckUtils]: 30: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 04:24:21,562 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {21882#true} {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #95#return; {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 04:24:21,562 INFO L272 TraceCheckUtils]: 32: Hoare triple {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21882#true} is VALID [2022-04-28 04:24:21,563 INFO L290 TraceCheckUtils]: 33: Hoare triple {21882#true} ~cond := #in~cond; {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:24:21,563 INFO L290 TraceCheckUtils]: 34: Hoare triple {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:24:21,564 INFO L290 TraceCheckUtils]: 35: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:24:21,565 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {21966#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #97#return; {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 04:24:21,565 INFO L272 TraceCheckUtils]: 37: Hoare triple {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21882#true} is VALID [2022-04-28 04:24:21,565 INFO L290 TraceCheckUtils]: 38: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 04:24:21,565 INFO L290 TraceCheckUtils]: 39: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 04:24:21,565 INFO L290 TraceCheckUtils]: 40: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 04:24:21,566 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21882#true} {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #99#return; {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 04:24:21,566 INFO L272 TraceCheckUtils]: 42: Hoare triple {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {21882#true} is VALID [2022-04-28 04:24:21,567 INFO L290 TraceCheckUtils]: 43: Hoare triple {21882#true} ~cond := #in~cond; {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:24:21,567 INFO L290 TraceCheckUtils]: 44: Hoare triple {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:24:21,568 INFO L290 TraceCheckUtils]: 45: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:24:21,569 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #101#return; {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 04:24:21,569 INFO L290 TraceCheckUtils]: 47: Hoare triple {22002#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {22036#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-28 04:24:21,570 INFO L290 TraceCheckUtils]: 48: Hoare triple {22036#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} assume !false; {22036#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-28 04:24:21,570 INFO L272 TraceCheckUtils]: 49: Hoare triple {22036#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21882#true} is VALID [2022-04-28 04:24:21,570 INFO L290 TraceCheckUtils]: 50: Hoare triple {21882#true} ~cond := #in~cond; {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:24:21,571 INFO L290 TraceCheckUtils]: 51: Hoare triple {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:24:21,571 INFO L290 TraceCheckUtils]: 52: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:24:21,573 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22036#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} #95#return; {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:24:21,573 INFO L272 TraceCheckUtils]: 54: Hoare triple {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21882#true} is VALID [2022-04-28 04:24:21,573 INFO L290 TraceCheckUtils]: 55: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 04:24:21,573 INFO L290 TraceCheckUtils]: 56: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 04:24:21,573 INFO L290 TraceCheckUtils]: 57: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 04:24:21,574 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {21882#true} {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:24:21,574 INFO L272 TraceCheckUtils]: 59: Hoare triple {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21882#true} is VALID [2022-04-28 04:24:21,574 INFO L290 TraceCheckUtils]: 60: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 04:24:21,574 INFO L290 TraceCheckUtils]: 61: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 04:24:21,574 INFO L290 TraceCheckUtils]: 62: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 04:24:21,575 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {21882#true} {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #99#return; {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:24:21,575 INFO L272 TraceCheckUtils]: 64: Hoare triple {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {21882#true} is VALID [2022-04-28 04:24:21,576 INFO L290 TraceCheckUtils]: 65: Hoare triple {21882#true} ~cond := #in~cond; {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:24:21,576 INFO L290 TraceCheckUtils]: 66: Hoare triple {21991#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:24:21,576 INFO L290 TraceCheckUtils]: 67: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:24:21,577 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #101#return; {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:24:21,578 INFO L290 TraceCheckUtils]: 69: Hoare triple {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:24:21,579 INFO L290 TraceCheckUtils]: 70: Hoare triple {22055#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~0 2))} is VALID [2022-04-28 04:24:21,580 INFO L290 TraceCheckUtils]: 71: Hoare triple {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~0 2))} assume !false; {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~0 2))} is VALID [2022-04-28 04:24:21,581 INFO L290 TraceCheckUtils]: 72: Hoare triple {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~0 2))} assume !(~c~0 >= ~b~0); {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~0 2))} is VALID [2022-04-28 04:24:21,581 INFO L290 TraceCheckUtils]: 73: Hoare triple {22107#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~x~0) (= main_~k~0 2))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {22117#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-28 04:24:21,582 INFO L290 TraceCheckUtils]: 74: Hoare triple {22117#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !false; {22117#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-28 04:24:21,583 INFO L290 TraceCheckUtils]: 75: Hoare triple {22117#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !(0 != ~b~0); {22124#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= (+ main_~y~0 (* (- 2) main_~a~0)) 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-28 04:24:21,586 INFO L272 TraceCheckUtils]: 76: Hoare triple {22124#(and (= main_~r~0 0) (= main_~s~0 (+ (* (- 2) main_~r~0) 1)) (= (+ main_~y~0 (* (- 2) main_~a~0)) 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {22128#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:24:21,586 INFO L290 TraceCheckUtils]: 77: Hoare triple {22128#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {22132#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:24:21,587 INFO L290 TraceCheckUtils]: 78: Hoare triple {22132#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {21883#false} is VALID [2022-04-28 04:24:21,587 INFO L290 TraceCheckUtils]: 79: Hoare triple {21883#false} assume !false; {21883#false} is VALID [2022-04-28 04:24:21,587 INFO L134 CoverageAnalysis]: Checked inductivity of 151 backedges. 39 proven. 44 refuted. 0 times theorem prover too weak. 68 trivial. 0 not checked. [2022-04-28 04:24:21,587 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:25:02,571 INFO L290 TraceCheckUtils]: 79: Hoare triple {21883#false} assume !false; {21883#false} is VALID [2022-04-28 04:25:02,572 INFO L290 TraceCheckUtils]: 78: Hoare triple {22132#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {21883#false} is VALID [2022-04-28 04:25:02,572 INFO L290 TraceCheckUtils]: 77: Hoare triple {22128#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {22132#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:25:02,573 INFO L272 TraceCheckUtils]: 76: Hoare triple {22148#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {22128#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:25:02,573 INFO L290 TraceCheckUtils]: 75: Hoare triple {22152#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {22148#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 04:25:02,574 INFO L290 TraceCheckUtils]: 74: Hoare triple {22152#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {22152#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 04:25:02,613 INFO L290 TraceCheckUtils]: 73: Hoare triple {22159#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {22152#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 04:25:02,614 INFO L290 TraceCheckUtils]: 72: Hoare triple {22159#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {22159#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 04:25:02,614 INFO L290 TraceCheckUtils]: 71: Hoare triple {22159#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {22159#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 04:25:02,661 INFO L290 TraceCheckUtils]: 70: Hoare triple {22169#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {22159#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 04:25:02,662 INFO L290 TraceCheckUtils]: 69: Hoare triple {22169#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {22169#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 04:25:02,663 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #101#return; {22169#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 04:25:02,663 INFO L290 TraceCheckUtils]: 67: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:25:02,663 INFO L290 TraceCheckUtils]: 66: Hoare triple {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:25:02,664 INFO L290 TraceCheckUtils]: 65: Hoare triple {21882#true} ~cond := #in~cond; {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 04:25:02,664 INFO L272 TraceCheckUtils]: 64: Hoare triple {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {21882#true} is VALID [2022-04-28 04:25:02,665 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {21882#true} {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #99#return; {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 04:25:02,665 INFO L290 TraceCheckUtils]: 62: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 04:25:02,665 INFO L290 TraceCheckUtils]: 61: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 04:25:02,665 INFO L290 TraceCheckUtils]: 60: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 04:25:02,665 INFO L272 TraceCheckUtils]: 59: Hoare triple {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21882#true} is VALID [2022-04-28 04:25:02,665 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {21882#true} {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #97#return; {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 04:25:02,666 INFO L290 TraceCheckUtils]: 57: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 04:25:02,666 INFO L290 TraceCheckUtils]: 56: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 04:25:02,666 INFO L290 TraceCheckUtils]: 55: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 04:25:02,666 INFO L272 TraceCheckUtils]: 54: Hoare triple {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21882#true} is VALID [2022-04-28 04:25:02,667 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22223#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #95#return; {22176#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 04:25:02,667 INFO L290 TraceCheckUtils]: 52: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:25:02,667 INFO L290 TraceCheckUtils]: 51: Hoare triple {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:25:02,668 INFO L290 TraceCheckUtils]: 50: Hoare triple {21882#true} ~cond := #in~cond; {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 04:25:02,668 INFO L272 TraceCheckUtils]: 49: Hoare triple {22223#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21882#true} is VALID [2022-04-28 04:25:02,668 INFO L290 TraceCheckUtils]: 48: Hoare triple {22223#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {22223#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 04:25:02,707 INFO L290 TraceCheckUtils]: 47: Hoare triple {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {22223#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 04:25:02,708 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21882#true} {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #101#return; {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 04:25:02,708 INFO L290 TraceCheckUtils]: 45: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 04:25:02,708 INFO L290 TraceCheckUtils]: 44: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 04:25:02,708 INFO L290 TraceCheckUtils]: 43: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 04:25:02,708 INFO L272 TraceCheckUtils]: 42: Hoare triple {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {21882#true} is VALID [2022-04-28 04:25:02,709 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21882#true} {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #99#return; {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 04:25:02,709 INFO L290 TraceCheckUtils]: 40: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 04:25:02,709 INFO L290 TraceCheckUtils]: 39: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 04:25:02,709 INFO L290 TraceCheckUtils]: 38: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 04:25:02,709 INFO L272 TraceCheckUtils]: 37: Hoare triple {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21882#true} is VALID [2022-04-28 04:25:02,711 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #97#return; {22242#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 04:25:02,711 INFO L290 TraceCheckUtils]: 35: Hoare triple {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:25:02,711 INFO L290 TraceCheckUtils]: 34: Hoare triple {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {21995#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:25:02,712 INFO L290 TraceCheckUtils]: 33: Hoare triple {21882#true} ~cond := #in~cond; {22186#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 04:25:02,712 INFO L272 TraceCheckUtils]: 32: Hoare triple {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21882#true} is VALID [2022-04-28 04:25:02,712 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {21882#true} {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #95#return; {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 04:25:02,712 INFO L290 TraceCheckUtils]: 30: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 04:25:02,713 INFO L290 TraceCheckUtils]: 29: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 04:25:02,713 INFO L290 TraceCheckUtils]: 28: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 04:25:02,713 INFO L272 TraceCheckUtils]: 27: Hoare triple {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21882#true} is VALID [2022-04-28 04:25:02,713 INFO L290 TraceCheckUtils]: 26: Hoare triple {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !false; {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 04:25:02,714 INFO L290 TraceCheckUtils]: 25: Hoare triple {22310#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {22276#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 04:25:02,715 INFO L290 TraceCheckUtils]: 24: Hoare triple {22310#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !false; {22310#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 04:25:02,716 INFO L290 TraceCheckUtils]: 23: Hoare triple {21882#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {22310#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 04:25:02,716 INFO L290 TraceCheckUtils]: 22: Hoare triple {21882#true} assume !false; {21882#true} is VALID [2022-04-28 04:25:02,716 INFO L290 TraceCheckUtils]: 21: Hoare triple {21882#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {21882#true} is VALID [2022-04-28 04:25:02,716 INFO L290 TraceCheckUtils]: 20: Hoare triple {21882#true} assume !(~c~0 >= ~b~0); {21882#true} is VALID [2022-04-28 04:25:02,717 INFO L290 TraceCheckUtils]: 19: Hoare triple {21882#true} assume !false; {21882#true} is VALID [2022-04-28 04:25:02,717 INFO L290 TraceCheckUtils]: 18: Hoare triple {21882#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21882#true} is VALID [2022-04-28 04:25:02,717 INFO L290 TraceCheckUtils]: 17: Hoare triple {21882#true} assume !false; {21882#true} is VALID [2022-04-28 04:25:02,717 INFO L290 TraceCheckUtils]: 16: Hoare triple {21882#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {21882#true} is VALID [2022-04-28 04:25:02,717 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21882#true} {21882#true} #93#return; {21882#true} is VALID [2022-04-28 04:25:02,717 INFO L290 TraceCheckUtils]: 14: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 04:25:02,717 INFO L290 TraceCheckUtils]: 13: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 04:25:02,717 INFO L290 TraceCheckUtils]: 12: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 04:25:02,717 INFO L272 TraceCheckUtils]: 11: Hoare triple {21882#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21882#true} is VALID [2022-04-28 04:25:02,717 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21882#true} {21882#true} #91#return; {21882#true} is VALID [2022-04-28 04:25:02,717 INFO L290 TraceCheckUtils]: 9: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 04:25:02,717 INFO L290 TraceCheckUtils]: 8: Hoare triple {21882#true} assume !(0 == ~cond); {21882#true} is VALID [2022-04-28 04:25:02,717 INFO L290 TraceCheckUtils]: 7: Hoare triple {21882#true} ~cond := #in~cond; {21882#true} is VALID [2022-04-28 04:25:02,717 INFO L272 TraceCheckUtils]: 6: Hoare triple {21882#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21882#true} is VALID [2022-04-28 04:25:02,717 INFO L290 TraceCheckUtils]: 5: Hoare triple {21882#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {21882#true} is VALID [2022-04-28 04:25:02,717 INFO L272 TraceCheckUtils]: 4: Hoare triple {21882#true} call #t~ret6 := main(); {21882#true} is VALID [2022-04-28 04:25:02,717 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21882#true} {21882#true} #105#return; {21882#true} is VALID [2022-04-28 04:25:02,717 INFO L290 TraceCheckUtils]: 2: Hoare triple {21882#true} assume true; {21882#true} is VALID [2022-04-28 04:25:02,718 INFO L290 TraceCheckUtils]: 1: Hoare triple {21882#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {21882#true} is VALID [2022-04-28 04:25:02,718 INFO L272 TraceCheckUtils]: 0: Hoare triple {21882#true} call ULTIMATE.init(); {21882#true} is VALID [2022-04-28 04:25:02,718 INFO L134 CoverageAnalysis]: Checked inductivity of 151 backedges. 49 proven. 29 refuted. 0 times theorem prover too weak. 73 trivial. 0 not checked. [2022-04-28 04:25:02,718 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:25:02,718 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1508664232] [2022-04-28 04:25:02,718 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:25:02,718 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [653022476] [2022-04-28 04:25:02,718 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [653022476] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:25:02,719 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 04:25:02,719 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 15] total 27 [2022-04-28 04:25:02,719 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:25:02,719 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [37108698] [2022-04-28 04:25:02,719 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [37108698] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:25:02,719 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:25:02,719 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-28 04:25:02,719 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1444983442] [2022-04-28 04:25:02,719 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:25:02,719 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) Word has length 80 [2022-04-28 04:25:02,720 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:25:02,720 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-28 04:25:02,784 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-28 04:25:02,784 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-28 04:25:02,784 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:25:02,785 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-28 04:25:02,785 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=109, Invalid=593, Unknown=0, NotChecked=0, Total=702 [2022-04-28 04:25:02,785 INFO L87 Difference]: Start difference. First operand 318 states and 433 transitions. Second operand has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-28 04:25:08,507 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:25:08,507 INFO L93 Difference]: Finished difference Result 406 states and 555 transitions. [2022-04-28 04:25:08,507 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 04:25:08,508 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) Word has length 80 [2022-04-28 04:25:08,508 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:25:08,508 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-28 04:25:08,511 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 170 transitions. [2022-04-28 04:25:08,511 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-28 04:25:08,513 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 170 transitions. [2022-04-28 04:25:08,513 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 170 transitions. [2022-04-28 04:25:08,781 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 170 edges. 170 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:25:08,794 INFO L225 Difference]: With dead ends: 406 [2022-04-28 04:25:08,794 INFO L226 Difference]: Without dead ends: 403 [2022-04-28 04:25:08,795 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 164 GetRequests, 131 SyntacticMatches, 3 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 183 ImplicationChecksByTransitivity, 6.0s TimeCoverageRelationStatistics Valid=148, Invalid=844, Unknown=0, NotChecked=0, Total=992 [2022-04-28 04:25:08,795 INFO L413 NwaCegarLoop]: 54 mSDtfsCounter, 69 mSDsluCounter, 325 mSDsCounter, 0 mSdLazyCounter, 1112 mSolverCounterSat, 77 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 90 SdHoareTripleChecker+Valid, 379 SdHoareTripleChecker+Invalid, 1189 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 77 IncrementalHoareTripleChecker+Valid, 1112 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.8s IncrementalHoareTripleChecker+Time [2022-04-28 04:25:08,795 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [90 Valid, 379 Invalid, 1189 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [77 Valid, 1112 Invalid, 0 Unknown, 0 Unchecked, 1.8s Time] [2022-04-28 04:25:08,796 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 403 states. [2022-04-28 04:25:09,833 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 403 to 387. [2022-04-28 04:25:09,833 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:25:09,834 INFO L82 GeneralOperation]: Start isEquivalent. First operand 403 states. Second operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 04:25:09,835 INFO L74 IsIncluded]: Start isIncluded. First operand 403 states. Second operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 04:25:09,835 INFO L87 Difference]: Start difference. First operand 403 states. Second operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 04:25:09,848 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:25:09,848 INFO L93 Difference]: Finished difference Result 403 states and 551 transitions. [2022-04-28 04:25:09,848 INFO L276 IsEmpty]: Start isEmpty. Operand 403 states and 551 transitions. [2022-04-28 04:25:09,850 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:25:09,850 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:25:09,851 INFO L74 IsIncluded]: Start isIncluded. First operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) Second operand 403 states. [2022-04-28 04:25:09,851 INFO L87 Difference]: Start difference. First operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) Second operand 403 states. [2022-04-28 04:25:09,864 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:25:09,864 INFO L93 Difference]: Finished difference Result 403 states and 551 transitions. [2022-04-28 04:25:09,865 INFO L276 IsEmpty]: Start isEmpty. Operand 403 states and 551 transitions. [2022-04-28 04:25:09,866 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:25:09,866 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:25:09,866 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:25:09,866 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:25:09,867 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 387 states, 226 states have (on average 1.1991150442477876) internal successors, (271), 227 states have internal predecessors, (271), 133 states have call successors, (133), 28 states have call predecessors, (133), 27 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 04:25:09,882 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 387 states to 387 states and 535 transitions. [2022-04-28 04:25:09,882 INFO L78 Accepts]: Start accepts. Automaton has 387 states and 535 transitions. Word has length 80 [2022-04-28 04:25:09,882 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:25:09,883 INFO L495 AbstractCegarLoop]: Abstraction has 387 states and 535 transitions. [2022-04-28 04:25:09,883 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 16 states have (on average 2.1875) internal successors, (35), 15 states have internal predecessors, (35), 6 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-28 04:25:09,883 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 387 states and 535 transitions. [2022-04-28 04:25:11,629 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 535 edges. 535 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:25:11,629 INFO L276 IsEmpty]: Start isEmpty. Operand 387 states and 535 transitions. [2022-04-28 04:25:11,630 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 84 [2022-04-28 04:25:11,630 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:25:11,630 INFO L195 NwaCegarLoop]: trace histogram [11, 10, 10, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:25:11,655 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Forceful destruction successful, exit code 0 [2022-04-28 04:25:11,831 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2022-04-28 04:25:11,831 INFO L420 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:25:11,831 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:25:11,831 INFO L85 PathProgramCache]: Analyzing trace with hash -1121309837, now seen corresponding path program 1 times [2022-04-28 04:25:11,832 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:25:11,832 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [193931700] [2022-04-28 04:25:11,832 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:25:11,832 INFO L85 PathProgramCache]: Analyzing trace with hash -1121309837, now seen corresponding path program 2 times [2022-04-28 04:25:11,832 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:25:11,832 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1886785022] [2022-04-28 04:25:11,832 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:25:11,833 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:25:11,851 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:25:11,851 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1222801074] [2022-04-28 04:25:11,851 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 04:25:11,851 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:25:11,852 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:25:11,860 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-28 04:25:11,863 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-28 04:25:11,917 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 04:25:11,917 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:25:11,919 INFO L263 TraceCheckSpWp]: Trace formula consists of 207 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-28 04:25:11,934 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:25:11,935 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:25:12,484 INFO L272 TraceCheckUtils]: 0: Hoare triple {24790#true} call ULTIMATE.init(); {24790#true} is VALID [2022-04-28 04:25:12,484 INFO L290 TraceCheckUtils]: 1: Hoare triple {24790#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {24790#true} is VALID [2022-04-28 04:25:12,484 INFO L290 TraceCheckUtils]: 2: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:12,484 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24790#true} {24790#true} #105#return; {24790#true} is VALID [2022-04-28 04:25:12,484 INFO L272 TraceCheckUtils]: 4: Hoare triple {24790#true} call #t~ret6 := main(); {24790#true} is VALID [2022-04-28 04:25:12,484 INFO L290 TraceCheckUtils]: 5: Hoare triple {24790#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {24790#true} is VALID [2022-04-28 04:25:12,485 INFO L272 TraceCheckUtils]: 6: Hoare triple {24790#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:12,485 INFO L290 TraceCheckUtils]: 7: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:12,485 INFO L290 TraceCheckUtils]: 8: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:12,485 INFO L290 TraceCheckUtils]: 9: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:12,485 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24790#true} {24790#true} #91#return; {24790#true} is VALID [2022-04-28 04:25:12,485 INFO L272 TraceCheckUtils]: 11: Hoare triple {24790#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:12,485 INFO L290 TraceCheckUtils]: 12: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:12,485 INFO L290 TraceCheckUtils]: 13: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:12,485 INFO L290 TraceCheckUtils]: 14: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:12,485 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24790#true} {24790#true} #93#return; {24790#true} is VALID [2022-04-28 04:25:12,485 INFO L290 TraceCheckUtils]: 16: Hoare triple {24790#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {24790#true} is VALID [2022-04-28 04:25:12,485 INFO L290 TraceCheckUtils]: 17: Hoare triple {24790#true} assume !false; {24790#true} is VALID [2022-04-28 04:25:12,485 INFO L290 TraceCheckUtils]: 18: Hoare triple {24790#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24849#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 04:25:12,486 INFO L290 TraceCheckUtils]: 19: Hoare triple {24849#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !false; {24849#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 04:25:12,486 INFO L290 TraceCheckUtils]: 20: Hoare triple {24849#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-28 04:25:12,486 INFO L290 TraceCheckUtils]: 21: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} assume !false; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-28 04:25:12,487 INFO L272 TraceCheckUtils]: 22: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:12,487 INFO L290 TraceCheckUtils]: 23: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:12,487 INFO L290 TraceCheckUtils]: 24: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:12,487 INFO L290 TraceCheckUtils]: 25: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:12,487 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {24790#true} {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} #95#return; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-28 04:25:12,487 INFO L272 TraceCheckUtils]: 27: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:12,488 INFO L290 TraceCheckUtils]: 28: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:12,488 INFO L290 TraceCheckUtils]: 29: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:12,488 INFO L290 TraceCheckUtils]: 30: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:12,488 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {24790#true} {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} #97#return; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-28 04:25:12,488 INFO L272 TraceCheckUtils]: 32: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:12,488 INFO L290 TraceCheckUtils]: 33: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:12,488 INFO L290 TraceCheckUtils]: 34: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:12,489 INFO L290 TraceCheckUtils]: 35: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:12,489 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24790#true} {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} #99#return; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-28 04:25:12,489 INFO L272 TraceCheckUtils]: 37: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:12,489 INFO L290 TraceCheckUtils]: 38: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:12,489 INFO L290 TraceCheckUtils]: 39: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:12,489 INFO L290 TraceCheckUtils]: 40: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:12,490 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24790#true} {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} #101#return; {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} is VALID [2022-04-28 04:25:12,490 INFO L290 TraceCheckUtils]: 42: Hoare triple {24856#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~d~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-28 04:25:12,491 INFO L290 TraceCheckUtils]: 43: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} assume !false; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-28 04:25:12,491 INFO L272 TraceCheckUtils]: 44: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:12,491 INFO L290 TraceCheckUtils]: 45: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:12,491 INFO L290 TraceCheckUtils]: 46: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:12,491 INFO L290 TraceCheckUtils]: 47: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:12,491 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {24790#true} {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} #95#return; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-28 04:25:12,492 INFO L272 TraceCheckUtils]: 49: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:12,492 INFO L290 TraceCheckUtils]: 50: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:12,492 INFO L290 TraceCheckUtils]: 51: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:12,492 INFO L290 TraceCheckUtils]: 52: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:12,492 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {24790#true} {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} #97#return; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-28 04:25:12,492 INFO L272 TraceCheckUtils]: 54: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:12,492 INFO L290 TraceCheckUtils]: 55: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:12,493 INFO L290 TraceCheckUtils]: 56: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:12,493 INFO L290 TraceCheckUtils]: 57: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:12,493 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {24790#true} {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} #99#return; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-28 04:25:12,493 INFO L272 TraceCheckUtils]: 59: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:12,493 INFO L290 TraceCheckUtils]: 60: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:12,493 INFO L290 TraceCheckUtils]: 61: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:12,493 INFO L290 TraceCheckUtils]: 62: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:12,494 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {24790#true} {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} #101#return; {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} is VALID [2022-04-28 04:25:12,494 INFO L290 TraceCheckUtils]: 64: Hoare triple {24923#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2))} assume !(~c~0 >= 2 * ~v~0); {24990#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-28 04:25:12,495 INFO L290 TraceCheckUtils]: 65: Hoare triple {24990#(and (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~d~0 2) (not (<= (* main_~v~0 2) main_~c~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {24994#(and (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-28 04:25:12,496 INFO L290 TraceCheckUtils]: 66: Hoare triple {24994#(and (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} assume !false; {24994#(and (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-28 04:25:12,496 INFO L290 TraceCheckUtils]: 67: Hoare triple {24994#(and (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-28 04:25:12,497 INFO L290 TraceCheckUtils]: 68: Hoare triple {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} assume !false; {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-28 04:25:12,497 INFO L272 TraceCheckUtils]: 69: Hoare triple {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:12,497 INFO L290 TraceCheckUtils]: 70: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:12,497 INFO L290 TraceCheckUtils]: 71: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:12,497 INFO L290 TraceCheckUtils]: 72: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:12,497 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {24790#true} {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} #95#return; {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-28 04:25:12,497 INFO L272 TraceCheckUtils]: 74: Hoare triple {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:12,497 INFO L290 TraceCheckUtils]: 75: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:12,498 INFO L290 TraceCheckUtils]: 76: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:12,498 INFO L290 TraceCheckUtils]: 77: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:12,498 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {24790#true} {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} #97#return; {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} is VALID [2022-04-28 04:25:12,499 INFO L272 TraceCheckUtils]: 79: Hoare triple {25001#(and (<= main_~b~0 main_~c~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (not (<= (* main_~b~0 4) main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {25038#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:25:12,499 INFO L290 TraceCheckUtils]: 80: Hoare triple {25038#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {25042#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:25:12,499 INFO L290 TraceCheckUtils]: 81: Hoare triple {25042#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {24791#false} is VALID [2022-04-28 04:25:12,500 INFO L290 TraceCheckUtils]: 82: Hoare triple {24791#false} assume !false; {24791#false} is VALID [2022-04-28 04:25:12,500 INFO L134 CoverageAnalysis]: Checked inductivity of 220 backedges. 20 proven. 16 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-28 04:25:12,500 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:25:49,723 INFO L290 TraceCheckUtils]: 82: Hoare triple {24791#false} assume !false; {24791#false} is VALID [2022-04-28 04:25:49,724 INFO L290 TraceCheckUtils]: 81: Hoare triple {25042#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {24791#false} is VALID [2022-04-28 04:25:49,724 INFO L290 TraceCheckUtils]: 80: Hoare triple {25038#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {25042#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:25:49,725 INFO L272 TraceCheckUtils]: 79: Hoare triple {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {25038#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:25:49,726 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {24790#true} {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #97#return; {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 04:25:49,726 INFO L290 TraceCheckUtils]: 77: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:49,726 INFO L290 TraceCheckUtils]: 76: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:49,726 INFO L290 TraceCheckUtils]: 75: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:49,726 INFO L272 TraceCheckUtils]: 74: Hoare triple {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:49,727 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {24790#true} {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #95#return; {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 04:25:49,727 INFO L290 TraceCheckUtils]: 72: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:49,727 INFO L290 TraceCheckUtils]: 71: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:49,727 INFO L290 TraceCheckUtils]: 70: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:49,727 INFO L272 TraceCheckUtils]: 69: Hoare triple {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:49,727 INFO L290 TraceCheckUtils]: 68: Hoare triple {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 04:25:49,728 INFO L290 TraceCheckUtils]: 67: Hoare triple {25095#(or (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (not (<= main_~b~0 main_~c~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {25058#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 04:25:49,728 INFO L290 TraceCheckUtils]: 66: Hoare triple {25095#(or (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (not (<= main_~b~0 main_~c~0)))} assume !false; {25095#(or (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-28 04:25:49,731 INFO L290 TraceCheckUtils]: 65: Hoare triple {25102#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {25095#(or (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-28 04:25:49,731 INFO L290 TraceCheckUtils]: 64: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} assume !(~c~0 >= 2 * ~v~0); {25102#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))))} is VALID [2022-04-28 04:25:49,732 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {24790#true} {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} #101#return; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-28 04:25:49,732 INFO L290 TraceCheckUtils]: 62: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:49,732 INFO L290 TraceCheckUtils]: 61: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:49,732 INFO L290 TraceCheckUtils]: 60: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:49,732 INFO L272 TraceCheckUtils]: 59: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:49,733 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {24790#true} {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} #99#return; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-28 04:25:49,733 INFO L290 TraceCheckUtils]: 57: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:49,733 INFO L290 TraceCheckUtils]: 56: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:49,733 INFO L290 TraceCheckUtils]: 55: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:49,733 INFO L272 TraceCheckUtils]: 54: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:49,734 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {24790#true} {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} #97#return; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-28 04:25:49,734 INFO L290 TraceCheckUtils]: 52: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:49,734 INFO L290 TraceCheckUtils]: 51: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:49,734 INFO L290 TraceCheckUtils]: 50: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:49,734 INFO L272 TraceCheckUtils]: 49: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:49,735 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {24790#true} {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} #95#return; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-28 04:25:49,735 INFO L290 TraceCheckUtils]: 47: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:49,735 INFO L290 TraceCheckUtils]: 46: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:49,735 INFO L290 TraceCheckUtils]: 45: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:49,735 INFO L272 TraceCheckUtils]: 44: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:49,736 INFO L290 TraceCheckUtils]: 43: Hoare triple {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} assume !false; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-28 04:25:49,739 INFO L290 TraceCheckUtils]: 42: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {25106#(or (not (<= (+ main_~b~0 main_~v~0) main_~c~0)) (= main_~a~0 (+ main_~c~0 (* main_~b~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~v~0))) (<= (* main_~v~0 2) main_~c~0))} is VALID [2022-04-28 04:25:49,740 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24790#true} {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} #101#return; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-28 04:25:49,740 INFO L290 TraceCheckUtils]: 40: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:49,740 INFO L290 TraceCheckUtils]: 39: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:49,740 INFO L290 TraceCheckUtils]: 38: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:49,740 INFO L272 TraceCheckUtils]: 37: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:49,741 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24790#true} {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} #99#return; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-28 04:25:49,741 INFO L290 TraceCheckUtils]: 35: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:49,741 INFO L290 TraceCheckUtils]: 34: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:49,741 INFO L290 TraceCheckUtils]: 33: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:49,741 INFO L272 TraceCheckUtils]: 32: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:49,742 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {24790#true} {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} #97#return; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-28 04:25:49,742 INFO L290 TraceCheckUtils]: 30: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:49,742 INFO L290 TraceCheckUtils]: 29: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:49,742 INFO L290 TraceCheckUtils]: 28: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:49,743 INFO L272 TraceCheckUtils]: 27: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:49,743 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {24790#true} {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} #95#return; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-28 04:25:49,744 INFO L290 TraceCheckUtils]: 25: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:49,744 INFO L290 TraceCheckUtils]: 24: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:49,744 INFO L290 TraceCheckUtils]: 23: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:49,744 INFO L272 TraceCheckUtils]: 22: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:49,744 INFO L290 TraceCheckUtils]: 21: Hoare triple {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} assume !false; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-28 04:25:49,746 INFO L290 TraceCheckUtils]: 20: Hoare triple {25240#(forall ((main_~b~0 Int)) (or (not (<= (* main_~b~0 3) main_~c~0)) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~c~0 (* (+ main_~k~0 2) main_~b~0))) (<= (* main_~b~0 4) main_~c~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {25173#(or (<= (* main_~v~0 4) main_~c~0) (= main_~a~0 (+ main_~c~0 (* (+ main_~k~0 (* main_~d~0 2)) main_~b~0) (* (- 2) main_~v~0))) (not (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0)))} is VALID [2022-04-28 04:25:49,747 INFO L290 TraceCheckUtils]: 19: Hoare triple {25240#(forall ((main_~b~0 Int)) (or (not (<= (* main_~b~0 3) main_~c~0)) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~c~0 (* (+ main_~k~0 2) main_~b~0))) (<= (* main_~b~0 4) main_~c~0)))} assume !false; {25240#(forall ((main_~b~0 Int)) (or (not (<= (* main_~b~0 3) main_~c~0)) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~c~0 (* (+ main_~k~0 2) main_~b~0))) (<= (* main_~b~0 4) main_~c~0)))} is VALID [2022-04-28 04:25:49,748 INFO L290 TraceCheckUtils]: 18: Hoare triple {24790#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {25240#(forall ((main_~b~0 Int)) (or (not (<= (* main_~b~0 3) main_~c~0)) (= main_~a~0 (+ (* (- 2) main_~b~0) main_~c~0 (* (+ main_~k~0 2) main_~b~0))) (<= (* main_~b~0 4) main_~c~0)))} is VALID [2022-04-28 04:25:49,748 INFO L290 TraceCheckUtils]: 17: Hoare triple {24790#true} assume !false; {24790#true} is VALID [2022-04-28 04:25:49,748 INFO L290 TraceCheckUtils]: 16: Hoare triple {24790#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {24790#true} is VALID [2022-04-28 04:25:49,748 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24790#true} {24790#true} #93#return; {24790#true} is VALID [2022-04-28 04:25:49,748 INFO L290 TraceCheckUtils]: 14: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:49,748 INFO L290 TraceCheckUtils]: 13: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:49,748 INFO L290 TraceCheckUtils]: 12: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:49,748 INFO L272 TraceCheckUtils]: 11: Hoare triple {24790#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:49,748 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24790#true} {24790#true} #91#return; {24790#true} is VALID [2022-04-28 04:25:49,748 INFO L290 TraceCheckUtils]: 9: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:49,749 INFO L290 TraceCheckUtils]: 8: Hoare triple {24790#true} assume !(0 == ~cond); {24790#true} is VALID [2022-04-28 04:25:49,749 INFO L290 TraceCheckUtils]: 7: Hoare triple {24790#true} ~cond := #in~cond; {24790#true} is VALID [2022-04-28 04:25:49,749 INFO L272 TraceCheckUtils]: 6: Hoare triple {24790#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {24790#true} is VALID [2022-04-28 04:25:49,749 INFO L290 TraceCheckUtils]: 5: Hoare triple {24790#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {24790#true} is VALID [2022-04-28 04:25:49,749 INFO L272 TraceCheckUtils]: 4: Hoare triple {24790#true} call #t~ret6 := main(); {24790#true} is VALID [2022-04-28 04:25:49,749 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24790#true} {24790#true} #105#return; {24790#true} is VALID [2022-04-28 04:25:49,749 INFO L290 TraceCheckUtils]: 2: Hoare triple {24790#true} assume true; {24790#true} is VALID [2022-04-28 04:25:49,749 INFO L290 TraceCheckUtils]: 1: Hoare triple {24790#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {24790#true} is VALID [2022-04-28 04:25:49,749 INFO L272 TraceCheckUtils]: 0: Hoare triple {24790#true} call ULTIMATE.init(); {24790#true} is VALID [2022-04-28 04:25:49,749 INFO L134 CoverageAnalysis]: Checked inductivity of 220 backedges. 20 proven. 16 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-28 04:25:49,750 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:25:49,750 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1886785022] [2022-04-28 04:25:49,750 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:25:49,750 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1222801074] [2022-04-28 04:25:49,750 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1222801074] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:25:49,750 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 04:25:49,750 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 16 [2022-04-28 04:25:49,750 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:25:49,750 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [193931700] [2022-04-28 04:25:49,750 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [193931700] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:25:49,750 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:25:49,750 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 04:25:49,751 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [212935691] [2022-04-28 04:25:49,751 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:25:49,751 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) Word has length 83 [2022-04-28 04:25:49,751 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:25:49,751 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 04:25:49,815 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:25:49,816 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 04:25:49,816 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:25:49,816 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 04:25:49,816 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=65, Invalid=175, Unknown=0, NotChecked=0, Total=240 [2022-04-28 04:25:49,817 INFO L87 Difference]: Start difference. First operand 387 states and 535 transitions. Second operand has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 04:25:52,575 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:25:52,576 INFO L93 Difference]: Finished difference Result 540 states and 774 transitions. [2022-04-28 04:25:52,576 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 04:25:52,576 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) Word has length 83 [2022-04-28 04:25:52,576 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:25:52,576 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 04:25:52,578 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 100 transitions. [2022-04-28 04:25:52,578 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 04:25:52,579 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 100 transitions. [2022-04-28 04:25:52,579 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 100 transitions. [2022-04-28 04:25:52,706 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 100 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:25:52,725 INFO L225 Difference]: With dead ends: 540 [2022-04-28 04:25:52,725 INFO L226 Difference]: Without dead ends: 538 [2022-04-28 04:25:52,726 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 166 GetRequests, 150 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 73 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=69, Invalid=203, Unknown=0, NotChecked=0, Total=272 [2022-04-28 04:25:52,726 INFO L413 NwaCegarLoop]: 55 mSDtfsCounter, 20 mSDsluCounter, 189 mSDsCounter, 0 mSdLazyCounter, 268 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 26 SdHoareTripleChecker+Valid, 244 SdHoareTripleChecker+Invalid, 285 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 268 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-28 04:25:52,726 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [26 Valid, 244 Invalid, 285 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 268 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-28 04:25:52,727 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 538 states. [2022-04-28 04:25:54,250 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 538 to 520. [2022-04-28 04:25:54,251 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:25:54,252 INFO L82 GeneralOperation]: Start isEquivalent. First operand 538 states. Second operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) [2022-04-28 04:25:54,252 INFO L74 IsIncluded]: Start isIncluded. First operand 538 states. Second operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) [2022-04-28 04:25:54,253 INFO L87 Difference]: Start difference. First operand 538 states. Second operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) [2022-04-28 04:25:54,275 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:25:54,275 INFO L93 Difference]: Finished difference Result 538 states and 772 transitions. [2022-04-28 04:25:54,275 INFO L276 IsEmpty]: Start isEmpty. Operand 538 states and 772 transitions. [2022-04-28 04:25:54,277 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:25:54,277 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:25:54,278 INFO L74 IsIncluded]: Start isIncluded. First operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) Second operand 538 states. [2022-04-28 04:25:54,279 INFO L87 Difference]: Start difference. First operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) Second operand 538 states. [2022-04-28 04:25:54,300 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:25:54,300 INFO L93 Difference]: Finished difference Result 538 states and 772 transitions. [2022-04-28 04:25:54,300 INFO L276 IsEmpty]: Start isEmpty. Operand 538 states and 772 transitions. [2022-04-28 04:25:54,302 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:25:54,302 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:25:54,302 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:25:54,302 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:25:54,303 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 520 states, 287 states have (on average 1.2334494773519165) internal successors, (354), 288 states have internal predecessors, (354), 201 states have call successors, (201), 32 states have call predecessors, (201), 31 states have return successors, (199), 199 states have call predecessors, (199), 199 states have call successors, (199) [2022-04-28 04:25:54,328 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 520 states to 520 states and 754 transitions. [2022-04-28 04:25:54,329 INFO L78 Accepts]: Start accepts. Automaton has 520 states and 754 transitions. Word has length 83 [2022-04-28 04:25:54,329 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:25:54,329 INFO L495 AbstractCegarLoop]: Abstraction has 520 states and 754 transitions. [2022-04-28 04:25:54,329 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 4 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 04:25:54,329 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 520 states and 754 transitions. [2022-04-28 04:25:56,724 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 754 edges. 754 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:25:56,725 INFO L276 IsEmpty]: Start isEmpty. Operand 520 states and 754 transitions. [2022-04-28 04:25:56,726 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-28 04:25:56,726 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:25:56,726 INFO L195 NwaCegarLoop]: trace histogram [10, 9, 9, 5, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:25:56,751 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-28 04:25:56,951 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable17 [2022-04-28 04:25:56,951 INFO L420 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:25:56,951 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:25:56,952 INFO L85 PathProgramCache]: Analyzing trace with hash 1195310033, now seen corresponding path program 7 times [2022-04-28 04:25:56,952 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:25:56,952 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1276075420] [2022-04-28 04:25:56,952 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:25:56,952 INFO L85 PathProgramCache]: Analyzing trace with hash 1195310033, now seen corresponding path program 8 times [2022-04-28 04:25:56,952 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:25:56,952 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1395402690] [2022-04-28 04:25:56,952 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:25:56,952 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:25:56,964 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:25:56,964 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1386357437] [2022-04-28 04:25:56,964 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 04:25:56,964 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:25:56,964 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:25:56,966 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-28 04:25:56,967 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-28 04:25:57,024 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 04:25:57,024 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:25:57,026 INFO L263 TraceCheckSpWp]: Trace formula consists of 248 conjuncts, 98 conjunts are in the unsatisfiable core [2022-04-28 04:25:57,047 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:25:57,049 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:26:03,204 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 04:27:53,125 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 04:27:59,184 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 04:28:01,841 INFO L272 TraceCheckUtils]: 0: Hoare triple {28501#true} call ULTIMATE.init(); {28501#true} is VALID [2022-04-28 04:28:01,841 INFO L290 TraceCheckUtils]: 1: Hoare triple {28501#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {28501#true} is VALID [2022-04-28 04:28:01,841 INFO L290 TraceCheckUtils]: 2: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 04:28:01,841 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28501#true} {28501#true} #105#return; {28501#true} is VALID [2022-04-28 04:28:01,841 INFO L272 TraceCheckUtils]: 4: Hoare triple {28501#true} call #t~ret6 := main(); {28501#true} is VALID [2022-04-28 04:28:01,841 INFO L290 TraceCheckUtils]: 5: Hoare triple {28501#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {28501#true} is VALID [2022-04-28 04:28:01,841 INFO L272 TraceCheckUtils]: 6: Hoare triple {28501#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {28501#true} is VALID [2022-04-28 04:28:01,842 INFO L290 TraceCheckUtils]: 7: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 04:28:01,842 INFO L290 TraceCheckUtils]: 8: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 04:28:01,842 INFO L290 TraceCheckUtils]: 9: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 04:28:01,842 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {28501#true} {28501#true} #91#return; {28501#true} is VALID [2022-04-28 04:28:01,842 INFO L272 TraceCheckUtils]: 11: Hoare triple {28501#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {28501#true} is VALID [2022-04-28 04:28:01,842 INFO L290 TraceCheckUtils]: 12: Hoare triple {28501#true} ~cond := #in~cond; {28542#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 04:28:01,843 INFO L290 TraceCheckUtils]: 13: Hoare triple {28542#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {28546#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:28:01,843 INFO L290 TraceCheckUtils]: 14: Hoare triple {28546#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {28546#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:28:01,843 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {28546#(not (= |assume_abort_if_not_#in~cond| 0))} {28501#true} #93#return; {28553#(<= 1 main_~y~0)} is VALID [2022-04-28 04:28:01,844 INFO L290 TraceCheckUtils]: 16: Hoare triple {28553#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {28557#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:28:01,844 INFO L290 TraceCheckUtils]: 17: Hoare triple {28557#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {28557#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:28:01,844 INFO L290 TraceCheckUtils]: 18: Hoare triple {28557#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {28564#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:28:01,845 INFO L290 TraceCheckUtils]: 19: Hoare triple {28564#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {28564#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:28:01,845 INFO L290 TraceCheckUtils]: 20: Hoare triple {28564#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28571#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:28:01,846 INFO L290 TraceCheckUtils]: 21: Hoare triple {28571#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {28571#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:28:01,846 INFO L272 TraceCheckUtils]: 22: Hoare triple {28571#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 04:28:01,846 INFO L290 TraceCheckUtils]: 23: Hoare triple {28501#true} ~cond := #in~cond; {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:28:01,846 INFO L290 TraceCheckUtils]: 24: Hoare triple {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:28:01,847 INFO L290 TraceCheckUtils]: 25: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:28:01,848 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28571#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:28:01,848 INFO L272 TraceCheckUtils]: 27: Hoare triple {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 04:28:01,848 INFO L290 TraceCheckUtils]: 28: Hoare triple {28501#true} ~cond := #in~cond; {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:28:01,848 INFO L290 TraceCheckUtils]: 29: Hoare triple {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:28:01,849 INFO L290 TraceCheckUtils]: 30: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:28:01,849 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:28:01,849 INFO L272 TraceCheckUtils]: 32: Hoare triple {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 04:28:01,849 INFO L290 TraceCheckUtils]: 33: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 04:28:01,849 INFO L290 TraceCheckUtils]: 34: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 04:28:01,850 INFO L290 TraceCheckUtils]: 35: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 04:28:01,850 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {28501#true} {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #99#return; {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:28:01,850 INFO L272 TraceCheckUtils]: 37: Hoare triple {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 04:28:01,850 INFO L290 TraceCheckUtils]: 38: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 04:28:01,850 INFO L290 TraceCheckUtils]: 39: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 04:28:01,850 INFO L290 TraceCheckUtils]: 40: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 04:28:01,851 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {28501#true} {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #101#return; {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:28:01,852 INFO L290 TraceCheckUtils]: 42: Hoare triple {28592#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {28641#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= (* main_~v~0 2) main_~c~0)) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:28:01,852 INFO L290 TraceCheckUtils]: 43: Hoare triple {28641#(and (= main_~b~0 main_~v~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= (* main_~v~0 2) main_~c~0)) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-28 04:28:01,853 INFO L290 TraceCheckUtils]: 44: Hoare triple {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} assume !false; {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-28 04:28:01,853 INFO L290 TraceCheckUtils]: 45: Hoare triple {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-28 04:28:01,871 INFO L290 TraceCheckUtils]: 46: Hoare triple {28645#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {28655#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 04:28:01,872 INFO L290 TraceCheckUtils]: 47: Hoare triple {28655#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {28655#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 04:28:01,873 INFO L290 TraceCheckUtils]: 48: Hoare triple {28655#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {28662#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 04:28:01,874 INFO L290 TraceCheckUtils]: 49: Hoare triple {28662#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {28662#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 04:28:01,876 INFO L290 TraceCheckUtils]: 50: Hoare triple {28662#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28669#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 04:28:01,877 INFO L290 TraceCheckUtils]: 51: Hoare triple {28669#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} assume !false; {28669#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 04:28:01,877 INFO L272 TraceCheckUtils]: 52: Hoare triple {28669#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 04:28:01,877 INFO L290 TraceCheckUtils]: 53: Hoare triple {28501#true} ~cond := #in~cond; {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:28:01,877 INFO L290 TraceCheckUtils]: 54: Hoare triple {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:28:01,877 INFO L290 TraceCheckUtils]: 55: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:28:01,879 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28669#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (exists ((main_~k~0 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) main_~x~0) (< (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~k~0 main_~x~0) (* main_~k~0 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} #95#return; {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:28:01,879 INFO L272 TraceCheckUtils]: 57: Hoare triple {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 04:28:01,879 INFO L290 TraceCheckUtils]: 58: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 04:28:01,879 INFO L290 TraceCheckUtils]: 59: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 04:28:01,879 INFO L290 TraceCheckUtils]: 60: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 04:28:01,880 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {28501#true} {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:28:01,880 INFO L272 TraceCheckUtils]: 62: Hoare triple {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 04:28:01,880 INFO L290 TraceCheckUtils]: 63: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 04:28:01,880 INFO L290 TraceCheckUtils]: 64: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 04:28:01,880 INFO L290 TraceCheckUtils]: 65: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 04:28:01,881 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {28501#true} {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #99#return; {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:28:01,881 INFO L272 TraceCheckUtils]: 67: Hoare triple {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 04:28:01,881 INFO L290 TraceCheckUtils]: 68: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 04:28:01,881 INFO L290 TraceCheckUtils]: 69: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 04:28:01,881 INFO L290 TraceCheckUtils]: 70: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 04:28:01,882 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {28501#true} {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #101#return; {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:28:01,883 INFO L290 TraceCheckUtils]: 72: Hoare triple {28688#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {28737#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (not (<= (* main_~v~0 2) main_~c~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:28:01,884 INFO L290 TraceCheckUtils]: 73: Hoare triple {28737#(and (= main_~b~0 main_~v~0) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (not (<= (* main_~v~0 2) main_~c~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:28:01,885 INFO L290 TraceCheckUtils]: 74: Hoare triple {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !false; {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:28:01,886 INFO L290 TraceCheckUtils]: 75: Hoare triple {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:28:03,888 WARN L290 TraceCheckUtils]: 76: Hoare triple {28741#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (exists ((v_main_~k~0_35 Int)) (and (= (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 main_~y~0)) (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))) (< (+ (* main_~q~0 main_~x~0) (* v_main_~k~0_35 main_~p~0 main_~x~0) (* v_main_~k~0_35 main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)) (* main_~y~0 2)))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is UNKNOWN [2022-04-28 04:28:03,890 INFO L290 TraceCheckUtils]: 77: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 04:28:03,890 INFO L290 TraceCheckUtils]: 78: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 04:28:03,891 INFO L290 TraceCheckUtils]: 79: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 04:28:03,892 INFO L290 TraceCheckUtils]: 80: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 04:28:03,893 INFO L290 TraceCheckUtils]: 81: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 04:28:03,893 INFO L272 TraceCheckUtils]: 82: Hoare triple {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 04:28:03,893 INFO L290 TraceCheckUtils]: 83: Hoare triple {28501#true} ~cond := #in~cond; {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:28:03,893 INFO L290 TraceCheckUtils]: 84: Hoare triple {28581#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:28:03,894 INFO L290 TraceCheckUtils]: 85: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:28:03,932 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28751#(and (< (+ (* main_~y~0 main_~r~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0))))) (* main_~y~0 2)) (= main_~b~0 (+ (* (- 1) main_~a~0) (* (+ main_~s~0 main_~r~0) main_~y~0))) (not (= main_~y~0 0)) (= (+ main_~s~0 main_~r~0) 1) (= main_~x~0 (+ (* (+ main_~s~0 main_~r~0) (div (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) main_~y~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= (* main_~a~0 2) (+ (* main_~y~0 main_~r~0) (* main_~y~0 main_~s~0)))) (= (mod (+ (* (- 1) main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) main_~a~0 main_~y~0) (* (+ main_~s~0 main_~r~0) main_~y~0)) 0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #95#return; {28782#(and (< (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) main_~y~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* (div main_~y~0 main_~y~0) main_~y~0) main_~y~0) (+ (* main_~q~0 main_~x~0) main_~x~0 (* main_~y~0 main_~s~0))) (< (* (div main_~y~0 main_~y~0) main_~y~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~y~0 main_~s~0))) (= (+ main_~q~0 1) 0))} is VALID [2022-04-28 04:28:03,933 INFO L272 TraceCheckUtils]: 87: Hoare triple {28782#(and (< (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) main_~y~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* (div main_~y~0 main_~y~0) main_~y~0) main_~y~0) (+ (* main_~q~0 main_~x~0) main_~x~0 (* main_~y~0 main_~s~0))) (< (* (div main_~y~0 main_~y~0) main_~y~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~y~0 main_~s~0))) (= (+ main_~q~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {28786#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:28:03,934 INFO L290 TraceCheckUtils]: 88: Hoare triple {28786#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {28790#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:28:03,934 INFO L290 TraceCheckUtils]: 89: Hoare triple {28790#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {28502#false} is VALID [2022-04-28 04:28:03,934 INFO L290 TraceCheckUtils]: 90: Hoare triple {28502#false} assume !false; {28502#false} is VALID [2022-04-28 04:28:03,935 INFO L134 CoverageAnalysis]: Checked inductivity of 206 backedges. 38 proven. 83 refuted. 0 times theorem prover too weak. 85 trivial. 0 not checked. [2022-04-28 04:28:03,935 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:28:49,432 INFO L290 TraceCheckUtils]: 90: Hoare triple {28502#false} assume !false; {28502#false} is VALID [2022-04-28 04:28:49,432 INFO L290 TraceCheckUtils]: 89: Hoare triple {28790#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {28502#false} is VALID [2022-04-28 04:28:49,433 INFO L290 TraceCheckUtils]: 88: Hoare triple {28786#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {28790#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:28:49,433 INFO L272 TraceCheckUtils]: 87: Hoare triple {28806#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {28786#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:28:49,434 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #95#return; {28806#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:28:49,434 INFO L290 TraceCheckUtils]: 85: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:28:49,435 INFO L290 TraceCheckUtils]: 84: Hoare triple {28820#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:28:49,435 INFO L290 TraceCheckUtils]: 83: Hoare triple {28501#true} ~cond := #in~cond; {28820#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 04:28:49,435 INFO L272 TraceCheckUtils]: 82: Hoare triple {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 04:28:49,435 INFO L290 TraceCheckUtils]: 81: Hoare triple {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 04:28:49,436 INFO L290 TraceCheckUtils]: 80: Hoare triple {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 04:28:49,436 INFO L290 TraceCheckUtils]: 79: Hoare triple {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 04:28:49,437 INFO L290 TraceCheckUtils]: 78: Hoare triple {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 04:28:49,437 INFO L290 TraceCheckUtils]: 77: Hoare triple {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 04:28:49,497 INFO L290 TraceCheckUtils]: 76: Hoare triple {28842#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {28810#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 04:28:49,497 INFO L290 TraceCheckUtils]: 75: Hoare triple {28842#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= ~b~0); {28842#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:28:49,498 INFO L290 TraceCheckUtils]: 74: Hoare triple {28842#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {28842#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:28:49,503 INFO L290 TraceCheckUtils]: 73: Hoare triple {28852#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {28842#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:28:49,504 INFO L290 TraceCheckUtils]: 72: Hoare triple {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= 2 * ~v~0); {28852#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:28:49,505 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {28501#true} {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #101#return; {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:28:49,505 INFO L290 TraceCheckUtils]: 70: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 04:28:49,505 INFO L290 TraceCheckUtils]: 69: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 04:28:49,505 INFO L290 TraceCheckUtils]: 68: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 04:28:49,505 INFO L272 TraceCheckUtils]: 67: Hoare triple {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 04:28:49,506 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {28501#true} {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #99#return; {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:28:49,506 INFO L290 TraceCheckUtils]: 65: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 04:28:49,506 INFO L290 TraceCheckUtils]: 64: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 04:28:49,506 INFO L290 TraceCheckUtils]: 63: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 04:28:49,506 INFO L272 TraceCheckUtils]: 62: Hoare triple {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 04:28:49,507 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {28501#true} {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #97#return; {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:28:49,507 INFO L290 TraceCheckUtils]: 60: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 04:28:49,507 INFO L290 TraceCheckUtils]: 59: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 04:28:49,507 INFO L290 TraceCheckUtils]: 58: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 04:28:49,507 INFO L272 TraceCheckUtils]: 57: Hoare triple {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 04:28:49,508 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} {28905#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #95#return; {28856#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:28:49,508 INFO L290 TraceCheckUtils]: 55: Hoare triple {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:28:49,509 INFO L290 TraceCheckUtils]: 54: Hoare triple {28820#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {28585#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:28:49,509 INFO L290 TraceCheckUtils]: 53: Hoare triple {28501#true} ~cond := #in~cond; {28820#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 04:28:49,509 INFO L272 TraceCheckUtils]: 52: Hoare triple {28905#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 04:28:49,509 INFO L290 TraceCheckUtils]: 51: Hoare triple {28905#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {28905#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:28:49,510 INFO L290 TraceCheckUtils]: 50: Hoare triple {28924#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28905#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:28:49,511 INFO L290 TraceCheckUtils]: 49: Hoare triple {28924#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {28924#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:28:49,512 INFO L290 TraceCheckUtils]: 48: Hoare triple {28501#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {28924#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:28:49,513 INFO L290 TraceCheckUtils]: 47: Hoare triple {28501#true} assume !false; {28501#true} is VALID [2022-04-28 04:28:49,513 INFO L290 TraceCheckUtils]: 46: Hoare triple {28501#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {28501#true} is VALID [2022-04-28 04:28:49,513 INFO L290 TraceCheckUtils]: 45: Hoare triple {28501#true} assume !(~c~0 >= ~b~0); {28501#true} is VALID [2022-04-28 04:28:49,513 INFO L290 TraceCheckUtils]: 44: Hoare triple {28501#true} assume !false; {28501#true} is VALID [2022-04-28 04:28:49,513 INFO L290 TraceCheckUtils]: 43: Hoare triple {28501#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {28501#true} is VALID [2022-04-28 04:28:49,513 INFO L290 TraceCheckUtils]: 42: Hoare triple {28501#true} assume !(~c~0 >= 2 * ~v~0); {28501#true} is VALID [2022-04-28 04:28:49,513 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {28501#true} {28501#true} #101#return; {28501#true} is VALID [2022-04-28 04:28:49,513 INFO L290 TraceCheckUtils]: 40: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 04:28:49,513 INFO L290 TraceCheckUtils]: 39: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 04:28:49,513 INFO L290 TraceCheckUtils]: 38: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 04:28:49,513 INFO L272 TraceCheckUtils]: 37: Hoare triple {28501#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 04:28:49,513 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {28501#true} {28501#true} #99#return; {28501#true} is VALID [2022-04-28 04:28:49,513 INFO L290 TraceCheckUtils]: 35: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 04:28:49,513 INFO L290 TraceCheckUtils]: 34: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 04:28:49,513 INFO L290 TraceCheckUtils]: 33: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 04:28:49,513 INFO L272 TraceCheckUtils]: 32: Hoare triple {28501#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 04:28:49,513 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {28501#true} {28501#true} #97#return; {28501#true} is VALID [2022-04-28 04:28:49,513 INFO L290 TraceCheckUtils]: 30: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 04:28:49,514 INFO L290 TraceCheckUtils]: 29: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 04:28:49,514 INFO L290 TraceCheckUtils]: 28: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 04:28:49,514 INFO L272 TraceCheckUtils]: 27: Hoare triple {28501#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 04:28:49,514 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {28501#true} {28501#true} #95#return; {28501#true} is VALID [2022-04-28 04:28:49,514 INFO L290 TraceCheckUtils]: 25: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 04:28:49,514 INFO L290 TraceCheckUtils]: 24: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 04:28:49,514 INFO L290 TraceCheckUtils]: 23: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 04:28:49,514 INFO L272 TraceCheckUtils]: 22: Hoare triple {28501#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {28501#true} is VALID [2022-04-28 04:28:49,514 INFO L290 TraceCheckUtils]: 21: Hoare triple {28501#true} assume !false; {28501#true} is VALID [2022-04-28 04:28:49,514 INFO L290 TraceCheckUtils]: 20: Hoare triple {28501#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28501#true} is VALID [2022-04-28 04:28:49,514 INFO L290 TraceCheckUtils]: 19: Hoare triple {28501#true} assume !false; {28501#true} is VALID [2022-04-28 04:28:49,514 INFO L290 TraceCheckUtils]: 18: Hoare triple {28501#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {28501#true} is VALID [2022-04-28 04:28:49,514 INFO L290 TraceCheckUtils]: 17: Hoare triple {28501#true} assume !false; {28501#true} is VALID [2022-04-28 04:28:49,514 INFO L290 TraceCheckUtils]: 16: Hoare triple {28501#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {28501#true} is VALID [2022-04-28 04:28:49,514 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {28501#true} {28501#true} #93#return; {28501#true} is VALID [2022-04-28 04:28:49,514 INFO L290 TraceCheckUtils]: 14: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 04:28:49,514 INFO L290 TraceCheckUtils]: 13: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 04:28:49,514 INFO L290 TraceCheckUtils]: 12: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 04:28:49,514 INFO L272 TraceCheckUtils]: 11: Hoare triple {28501#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {28501#true} is VALID [2022-04-28 04:28:49,514 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {28501#true} {28501#true} #91#return; {28501#true} is VALID [2022-04-28 04:28:49,515 INFO L290 TraceCheckUtils]: 9: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 04:28:49,515 INFO L290 TraceCheckUtils]: 8: Hoare triple {28501#true} assume !(0 == ~cond); {28501#true} is VALID [2022-04-28 04:28:49,515 INFO L290 TraceCheckUtils]: 7: Hoare triple {28501#true} ~cond := #in~cond; {28501#true} is VALID [2022-04-28 04:28:49,515 INFO L272 TraceCheckUtils]: 6: Hoare triple {28501#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {28501#true} is VALID [2022-04-28 04:28:49,515 INFO L290 TraceCheckUtils]: 5: Hoare triple {28501#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {28501#true} is VALID [2022-04-28 04:28:49,515 INFO L272 TraceCheckUtils]: 4: Hoare triple {28501#true} call #t~ret6 := main(); {28501#true} is VALID [2022-04-28 04:28:49,515 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28501#true} {28501#true} #105#return; {28501#true} is VALID [2022-04-28 04:28:49,515 INFO L290 TraceCheckUtils]: 2: Hoare triple {28501#true} assume true; {28501#true} is VALID [2022-04-28 04:28:49,515 INFO L290 TraceCheckUtils]: 1: Hoare triple {28501#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {28501#true} is VALID [2022-04-28 04:28:49,515 INFO L272 TraceCheckUtils]: 0: Hoare triple {28501#true} call ULTIMATE.init(); {28501#true} is VALID [2022-04-28 04:28:49,515 INFO L134 CoverageAnalysis]: Checked inductivity of 206 backedges. 78 proven. 18 refuted. 0 times theorem prover too weak. 110 trivial. 0 not checked. [2022-04-28 04:28:49,516 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:28:49,516 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1395402690] [2022-04-28 04:28:49,516 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:28:49,516 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1386357437] [2022-04-28 04:28:49,516 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1386357437] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:28:49,516 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 04:28:49,516 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [23, 13] total 31 [2022-04-28 04:28:49,516 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:28:49,516 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1276075420] [2022-04-28 04:28:49,516 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1276075420] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:28:49,516 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:28:49,516 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [23] imperfect sequences [] total 23 [2022-04-28 04:28:49,516 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [434829110] [2022-04-28 04:28:49,516 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:28:49,517 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) Word has length 91 [2022-04-28 04:28:49,517 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:28:49,517 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-28 04:28:56,277 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 67 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-28 04:28:56,277 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 23 states [2022-04-28 04:28:56,277 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:28:56,278 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-04-28 04:28:56,278 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=134, Invalid=796, Unknown=0, NotChecked=0, Total=930 [2022-04-28 04:28:56,278 INFO L87 Difference]: Start difference. First operand 520 states and 754 transitions. Second operand has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-28 04:29:13,017 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:29:13,017 INFO L93 Difference]: Finished difference Result 606 states and 880 transitions. [2022-04-28 04:29:13,017 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-28 04:29:13,018 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) Word has length 91 [2022-04-28 04:29:13,018 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:29:13,018 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-28 04:29:13,020 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 135 transitions. [2022-04-28 04:29:13,020 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-28 04:29:13,022 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 135 transitions. [2022-04-28 04:29:13,022 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 135 transitions. [2022-04-28 04:29:17,425 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 134 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 04:29:17,448 INFO L225 Difference]: With dead ends: 606 [2022-04-28 04:29:17,448 INFO L226 Difference]: Without dead ends: 604 [2022-04-28 04:29:17,449 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 187 GetRequests, 150 SyntacticMatches, 2 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 364 ImplicationChecksByTransitivity, 5.3s TimeCoverageRelationStatistics Valid=177, Invalid=1155, Unknown=0, NotChecked=0, Total=1332 [2022-04-28 04:29:17,449 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 69 mSDsluCounter, 390 mSDsCounter, 0 mSdLazyCounter, 679 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 6.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 86 SdHoareTripleChecker+Valid, 433 SdHoareTripleChecker+Invalid, 1127 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 679 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 412 IncrementalHoareTripleChecker+Unchecked, 6.3s IncrementalHoareTripleChecker+Time [2022-04-28 04:29:17,449 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [86 Valid, 433 Invalid, 1127 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 679 Invalid, 0 Unknown, 412 Unchecked, 6.3s Time] [2022-04-28 04:29:17,450 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 604 states. [2022-04-28 04:29:19,226 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 604 to 595. [2022-04-28 04:29:19,226 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:29:19,227 INFO L82 GeneralOperation]: Start isEquivalent. First operand 604 states. Second operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) [2022-04-28 04:29:19,228 INFO L74 IsIncluded]: Start isIncluded. First operand 604 states. Second operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) [2022-04-28 04:29:19,228 INFO L87 Difference]: Start difference. First operand 604 states. Second operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) [2022-04-28 04:29:19,257 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:29:19,258 INFO L93 Difference]: Finished difference Result 604 states and 878 transitions. [2022-04-28 04:29:19,258 INFO L276 IsEmpty]: Start isEmpty. Operand 604 states and 878 transitions. [2022-04-28 04:29:19,260 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:29:19,260 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:29:19,261 INFO L74 IsIncluded]: Start isIncluded. First operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) Second operand 604 states. [2022-04-28 04:29:19,262 INFO L87 Difference]: Start difference. First operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) Second operand 604 states. [2022-04-28 04:29:19,285 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:29:19,285 INFO L93 Difference]: Finished difference Result 604 states and 878 transitions. [2022-04-28 04:29:19,285 INFO L276 IsEmpty]: Start isEmpty. Operand 604 states and 878 transitions. [2022-04-28 04:29:19,287 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:29:19,287 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:29:19,287 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:29:19,287 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:29:19,289 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 595 states, 328 states have (on average 1.2347560975609757) internal successors, (405), 329 states have internal predecessors, (405), 233 states have call successors, (233), 34 states have call predecessors, (233), 33 states have return successors, (231), 231 states have call predecessors, (231), 231 states have call successors, (231) [2022-04-28 04:29:19,317 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 595 states to 595 states and 869 transitions. [2022-04-28 04:29:19,318 INFO L78 Accepts]: Start accepts. Automaton has 595 states and 869 transitions. Word has length 91 [2022-04-28 04:29:19,318 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:29:19,318 INFO L495 AbstractCegarLoop]: Abstraction has 595 states and 869 transitions. [2022-04-28 04:29:19,318 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 23 states, 22 states have (on average 2.0) internal successors, (44), 18 states have internal predecessors, (44), 7 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-28 04:29:19,319 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 595 states and 869 transitions. [2022-04-28 04:29:21,954 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 869 edges. 869 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:29:21,955 INFO L276 IsEmpty]: Start isEmpty. Operand 595 states and 869 transitions. [2022-04-28 04:29:21,956 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2022-04-28 04:29:21,956 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:29:21,956 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:29:21,981 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-28 04:29:22,175 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:29:22,175 INFO L420 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:29:22,176 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:29:22,176 INFO L85 PathProgramCache]: Analyzing trace with hash 1995925058, now seen corresponding path program 5 times [2022-04-28 04:29:22,176 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:29:22,176 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [453198603] [2022-04-28 04:29:22,176 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:29:22,176 INFO L85 PathProgramCache]: Analyzing trace with hash 1995925058, now seen corresponding path program 6 times [2022-04-28 04:29:22,176 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:29:22,176 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2019059247] [2022-04-28 04:29:22,176 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:29:22,177 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:29:22,185 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:29:22,185 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2046068078] [2022-04-28 04:29:22,185 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 04:29:22,185 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:29:22,185 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:29:22,186 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-28 04:29:22,198 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-28 04:29:22,258 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 04:29:22,258 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:29:22,259 INFO L263 TraceCheckSpWp]: Trace formula consists of 210 conjuncts, 53 conjunts are in the unsatisfiable core [2022-04-28 04:29:22,277 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:29:22,278 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:29:51,950 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 04:30:01,973 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 04:30:02,088 INFO L272 TraceCheckUtils]: 0: Hoare triple {32699#true} call ULTIMATE.init(); {32699#true} is VALID [2022-04-28 04:30:02,088 INFO L290 TraceCheckUtils]: 1: Hoare triple {32699#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {32699#true} is VALID [2022-04-28 04:30:02,088 INFO L290 TraceCheckUtils]: 2: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 04:30:02,088 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {32699#true} {32699#true} #105#return; {32699#true} is VALID [2022-04-28 04:30:02,088 INFO L272 TraceCheckUtils]: 4: Hoare triple {32699#true} call #t~ret6 := main(); {32699#true} is VALID [2022-04-28 04:30:02,088 INFO L290 TraceCheckUtils]: 5: Hoare triple {32699#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {32699#true} is VALID [2022-04-28 04:30:02,088 INFO L272 TraceCheckUtils]: 6: Hoare triple {32699#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {32699#true} is VALID [2022-04-28 04:30:02,088 INFO L290 TraceCheckUtils]: 7: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 04:30:02,088 INFO L290 TraceCheckUtils]: 8: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 04:30:02,088 INFO L290 TraceCheckUtils]: 9: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 04:30:02,088 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {32699#true} {32699#true} #91#return; {32699#true} is VALID [2022-04-28 04:30:02,088 INFO L272 TraceCheckUtils]: 11: Hoare triple {32699#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {32699#true} is VALID [2022-04-28 04:30:02,088 INFO L290 TraceCheckUtils]: 12: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 04:30:02,089 INFO L290 TraceCheckUtils]: 13: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 04:30:02,089 INFO L290 TraceCheckUtils]: 14: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 04:30:02,089 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {32699#true} {32699#true} #93#return; {32699#true} is VALID [2022-04-28 04:30:02,089 INFO L290 TraceCheckUtils]: 16: Hoare triple {32699#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {32752#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,089 INFO L290 TraceCheckUtils]: 17: Hoare triple {32752#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {32752#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,090 INFO L290 TraceCheckUtils]: 18: Hoare triple {32752#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,090 INFO L290 TraceCheckUtils]: 19: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,090 INFO L290 TraceCheckUtils]: 20: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,091 INFO L290 TraceCheckUtils]: 21: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,091 INFO L272 TraceCheckUtils]: 22: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {32699#true} is VALID [2022-04-28 04:30:02,091 INFO L290 TraceCheckUtils]: 23: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 04:30:02,091 INFO L290 TraceCheckUtils]: 24: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 04:30:02,091 INFO L290 TraceCheckUtils]: 25: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 04:30:02,092 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,092 INFO L272 TraceCheckUtils]: 27: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {32699#true} is VALID [2022-04-28 04:30:02,092 INFO L290 TraceCheckUtils]: 28: Hoare triple {32699#true} ~cond := #in~cond; {32790#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:30:02,092 INFO L290 TraceCheckUtils]: 29: Hoare triple {32790#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:30:02,093 INFO L290 TraceCheckUtils]: 30: Hoare triple {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:30:02,093 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,093 INFO L272 TraceCheckUtils]: 32: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {32699#true} is VALID [2022-04-28 04:30:02,093 INFO L290 TraceCheckUtils]: 33: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 04:30:02,093 INFO L290 TraceCheckUtils]: 34: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 04:30:02,093 INFO L290 TraceCheckUtils]: 35: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 04:30:02,094 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #99#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,094 INFO L272 TraceCheckUtils]: 37: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {32699#true} is VALID [2022-04-28 04:30:02,094 INFO L290 TraceCheckUtils]: 38: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 04:30:02,094 INFO L290 TraceCheckUtils]: 39: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 04:30:02,094 INFO L290 TraceCheckUtils]: 40: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 04:30:02,095 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #101#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,095 INFO L290 TraceCheckUtils]: 42: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,096 INFO L290 TraceCheckUtils]: 43: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,096 INFO L272 TraceCheckUtils]: 44: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {32699#true} is VALID [2022-04-28 04:30:02,096 INFO L290 TraceCheckUtils]: 45: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 04:30:02,096 INFO L290 TraceCheckUtils]: 46: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 04:30:02,096 INFO L290 TraceCheckUtils]: 47: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 04:30:02,097 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,097 INFO L272 TraceCheckUtils]: 49: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {32699#true} is VALID [2022-04-28 04:30:02,097 INFO L290 TraceCheckUtils]: 50: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 04:30:02,097 INFO L290 TraceCheckUtils]: 51: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 04:30:02,097 INFO L290 TraceCheckUtils]: 52: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 04:30:02,097 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,098 INFO L272 TraceCheckUtils]: 54: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {32699#true} is VALID [2022-04-28 04:30:02,098 INFO L290 TraceCheckUtils]: 55: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 04:30:02,098 INFO L290 TraceCheckUtils]: 56: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 04:30:02,098 INFO L290 TraceCheckUtils]: 57: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 04:30:02,099 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #99#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,099 INFO L272 TraceCheckUtils]: 59: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {32699#true} is VALID [2022-04-28 04:30:02,099 INFO L290 TraceCheckUtils]: 60: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 04:30:02,099 INFO L290 TraceCheckUtils]: 61: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 04:30:02,099 INFO L290 TraceCheckUtils]: 62: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 04:30:02,100 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #101#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,101 INFO L290 TraceCheckUtils]: 64: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,101 INFO L290 TraceCheckUtils]: 65: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,101 INFO L272 TraceCheckUtils]: 66: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {32699#true} is VALID [2022-04-28 04:30:02,101 INFO L290 TraceCheckUtils]: 67: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 04:30:02,101 INFO L290 TraceCheckUtils]: 68: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 04:30:02,102 INFO L290 TraceCheckUtils]: 69: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 04:30:02,102 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,103 INFO L272 TraceCheckUtils]: 71: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {32699#true} is VALID [2022-04-28 04:30:02,103 INFO L290 TraceCheckUtils]: 72: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 04:30:02,103 INFO L290 TraceCheckUtils]: 73: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 04:30:02,103 INFO L290 TraceCheckUtils]: 74: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 04:30:02,104 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,104 INFO L272 TraceCheckUtils]: 76: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {32699#true} is VALID [2022-04-28 04:30:02,104 INFO L290 TraceCheckUtils]: 77: Hoare triple {32699#true} ~cond := #in~cond; {32699#true} is VALID [2022-04-28 04:30:02,104 INFO L290 TraceCheckUtils]: 78: Hoare triple {32699#true} assume !(0 == ~cond); {32699#true} is VALID [2022-04-28 04:30:02,104 INFO L290 TraceCheckUtils]: 79: Hoare triple {32699#true} assume true; {32699#true} is VALID [2022-04-28 04:30:02,105 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {32699#true} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #99#return; {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,105 INFO L272 TraceCheckUtils]: 81: Hoare triple {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {32699#true} is VALID [2022-04-28 04:30:02,105 INFO L290 TraceCheckUtils]: 82: Hoare triple {32699#true} ~cond := #in~cond; {32790#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:30:02,105 INFO L290 TraceCheckUtils]: 83: Hoare triple {32790#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:30:02,106 INFO L290 TraceCheckUtils]: 84: Hoare triple {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:30:02,106 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {32794#(not (= |__VERIFIER_assert_#in~cond| 0))} {32759#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #101#return; {32963#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,107 INFO L290 TraceCheckUtils]: 86: Hoare triple {32963#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {32963#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,109 INFO L290 TraceCheckUtils]: 87: Hoare triple {32963#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {32970#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,110 INFO L290 TraceCheckUtils]: 88: Hoare triple {32970#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {32970#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,110 INFO L290 TraceCheckUtils]: 89: Hoare triple {32970#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {32970#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:02,111 INFO L290 TraceCheckUtils]: 90: Hoare triple {32970#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {32980#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 (* main_~a~0 (div (* (- 1) main_~s~0) main_~r~0)))))} is VALID [2022-04-28 04:30:02,112 INFO L290 TraceCheckUtils]: 91: Hoare triple {32980#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 (* main_~a~0 (div (* (- 1) main_~s~0) main_~r~0)))))} assume !false; {32980#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 (* main_~a~0 (div (* (- 1) main_~s~0) main_~r~0)))))} is VALID [2022-04-28 04:30:02,112 INFO L290 TraceCheckUtils]: 92: Hoare triple {32980#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= main_~x~0 (+ main_~b~0 (* main_~a~0 (div (* (- 1) main_~s~0) main_~r~0)))))} assume !(0 != ~b~0); {32987#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (* main_~a~0 (div (* (- 1) main_~s~0) main_~r~0))) (= main_~q~0 1))} is VALID [2022-04-28 04:30:02,113 INFO L272 TraceCheckUtils]: 93: Hoare triple {32987#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (* main_~a~0 (div (* (- 1) main_~s~0) main_~r~0))) (= main_~q~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {32991#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:30:02,114 INFO L290 TraceCheckUtils]: 94: Hoare triple {32991#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {32995#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:30:02,114 INFO L290 TraceCheckUtils]: 95: Hoare triple {32995#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {32700#false} is VALID [2022-04-28 04:30:02,114 INFO L290 TraceCheckUtils]: 96: Hoare triple {32700#false} assume !false; {32700#false} is VALID [2022-04-28 04:30:02,115 INFO L134 CoverageAnalysis]: Checked inductivity of 314 backedges. 57 proven. 33 refuted. 0 times theorem prover too weak. 224 trivial. 0 not checked. [2022-04-28 04:30:02,115 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:30:17,886 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 04:30:18,320 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:30:18,321 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2019059247] [2022-04-28 04:30:18,321 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:30:18,321 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2046068078] [2022-04-28 04:30:18,321 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2046068078] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:30:18,321 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 04:30:18,321 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12] total 12 [2022-04-28 04:30:18,321 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:30:18,321 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [453198603] [2022-04-28 04:30:18,321 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [453198603] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:30:18,321 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:30:18,321 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 04:30:18,321 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [310976925] [2022-04-28 04:30:18,322 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:30:18,322 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) Word has length 97 [2022-04-28 04:30:18,322 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:30:18,322 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 04:30:18,376 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:30:18,376 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 04:30:18,376 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:30:18,377 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 04:30:18,377 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=224, Unknown=0, NotChecked=0, Total=272 [2022-04-28 04:30:18,377 INFO L87 Difference]: Start difference. First operand 595 states and 869 transitions. Second operand has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 04:30:21,877 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:30:21,878 INFO L93 Difference]: Finished difference Result 686 states and 997 transitions. [2022-04-28 04:30:21,878 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 04:30:21,878 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) Word has length 97 [2022-04-28 04:30:21,878 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:30:21,878 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 04:30:21,879 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 109 transitions. [2022-04-28 04:30:21,879 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 04:30:21,881 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 109 transitions. [2022-04-28 04:30:21,881 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 109 transitions. [2022-04-28 04:30:22,014 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-28 04:30:22,045 INFO L225 Difference]: With dead ends: 686 [2022-04-28 04:30:22,046 INFO L226 Difference]: Without dead ends: 683 [2022-04-28 04:30:22,046 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 114 GetRequests, 92 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 62 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=93, Invalid=413, Unknown=0, NotChecked=0, Total=506 [2022-04-28 04:30:22,047 INFO L413 NwaCegarLoop]: 36 mSDtfsCounter, 43 mSDsluCounter, 211 mSDsCounter, 0 mSdLazyCounter, 453 mSolverCounterSat, 35 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 247 SdHoareTripleChecker+Invalid, 488 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 35 IncrementalHoareTripleChecker+Valid, 453 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-28 04:30:22,047 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [50 Valid, 247 Invalid, 488 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [35 Valid, 453 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-28 04:30:22,048 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 683 states. [2022-04-28 04:30:24,008 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 683 to 675. [2022-04-28 04:30:24,008 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:30:24,010 INFO L82 GeneralOperation]: Start isEquivalent. First operand 683 states. Second operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) [2022-04-28 04:30:24,011 INFO L74 IsIncluded]: Start isIncluded. First operand 683 states. Second operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) [2022-04-28 04:30:24,012 INFO L87 Difference]: Start difference. First operand 683 states. Second operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) [2022-04-28 04:30:24,037 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:30:24,037 INFO L93 Difference]: Finished difference Result 683 states and 993 transitions. [2022-04-28 04:30:24,038 INFO L276 IsEmpty]: Start isEmpty. Operand 683 states and 993 transitions. [2022-04-28 04:30:24,040 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:30:24,040 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:30:24,041 INFO L74 IsIncluded]: Start isIncluded. First operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) Second operand 683 states. [2022-04-28 04:30:24,042 INFO L87 Difference]: Start difference. First operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) Second operand 683 states. [2022-04-28 04:30:24,069 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:30:24,069 INFO L93 Difference]: Finished difference Result 683 states and 993 transitions. [2022-04-28 04:30:24,069 INFO L276 IsEmpty]: Start isEmpty. Operand 683 states and 993 transitions. [2022-04-28 04:30:24,071 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:30:24,071 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:30:24,071 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:30:24,071 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:30:24,072 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 675 states, 372 states have (on average 1.2338709677419355) internal successors, (459), 374 states have internal predecessors, (459), 264 states have call successors, (264), 39 states have call predecessors, (264), 38 states have return successors, (262), 261 states have call predecessors, (262), 262 states have call successors, (262) [2022-04-28 04:30:24,103 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 675 states to 675 states and 985 transitions. [2022-04-28 04:30:24,104 INFO L78 Accepts]: Start accepts. Automaton has 675 states and 985 transitions. Word has length 97 [2022-04-28 04:30:24,104 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:30:24,104 INFO L495 AbstractCegarLoop]: Abstraction has 675 states and 985 transitions. [2022-04-28 04:30:24,104 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 11 states have internal predecessors, (29), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 04:30:24,104 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 675 states and 985 transitions. [2022-04-28 04:30:26,815 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 985 edges. 985 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:30:26,815 INFO L276 IsEmpty]: Start isEmpty. Operand 675 states and 985 transitions. [2022-04-28 04:30:26,820 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 97 [2022-04-28 04:30:26,821 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:30:26,821 INFO L195 NwaCegarLoop]: trace histogram [10, 9, 9, 6, 4, 4, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:30:26,837 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-28 04:30:27,023 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:30:27,023 INFO L420 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:30:27,024 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:30:27,024 INFO L85 PathProgramCache]: Analyzing trace with hash 288676284, now seen corresponding path program 9 times [2022-04-28 04:30:27,024 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:30:27,024 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [913516655] [2022-04-28 04:30:27,024 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:30:27,024 INFO L85 PathProgramCache]: Analyzing trace with hash 288676284, now seen corresponding path program 10 times [2022-04-28 04:30:27,025 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:30:27,025 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [910214844] [2022-04-28 04:30:27,025 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:30:27,025 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:30:27,034 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:30:27,034 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [744157467] [2022-04-28 04:30:27,034 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 04:30:27,035 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:30:27,035 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:30:27,036 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-28 04:30:27,036 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-28 04:30:27,098 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 04:30:27,098 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:30:27,100 INFO L263 TraceCheckSpWp]: Trace formula consists of 239 conjuncts, 107 conjunts are in the unsatisfiable core [2022-04-28 04:30:27,116 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:30:27,118 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:30:30,528 INFO L272 TraceCheckUtils]: 0: Hoare triple {37142#true} call ULTIMATE.init(); {37142#true} is VALID [2022-04-28 04:30:30,528 INFO L290 TraceCheckUtils]: 1: Hoare triple {37142#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {37142#true} is VALID [2022-04-28 04:30:30,528 INFO L290 TraceCheckUtils]: 2: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 04:30:30,528 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37142#true} {37142#true} #105#return; {37142#true} is VALID [2022-04-28 04:30:30,528 INFO L272 TraceCheckUtils]: 4: Hoare triple {37142#true} call #t~ret6 := main(); {37142#true} is VALID [2022-04-28 04:30:30,528 INFO L290 TraceCheckUtils]: 5: Hoare triple {37142#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {37142#true} is VALID [2022-04-28 04:30:30,528 INFO L272 TraceCheckUtils]: 6: Hoare triple {37142#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {37142#true} is VALID [2022-04-28 04:30:30,528 INFO L290 TraceCheckUtils]: 7: Hoare triple {37142#true} ~cond := #in~cond; {37168#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 04:30:30,529 INFO L290 TraceCheckUtils]: 8: Hoare triple {37168#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {37172#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:30:30,529 INFO L290 TraceCheckUtils]: 9: Hoare triple {37172#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {37172#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 04:30:30,529 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {37172#(not (= |assume_abort_if_not_#in~cond| 0))} {37142#true} #91#return; {37179#(<= 1 main_~x~0)} is VALID [2022-04-28 04:30:30,530 INFO L272 TraceCheckUtils]: 11: Hoare triple {37179#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {37142#true} is VALID [2022-04-28 04:30:30,530 INFO L290 TraceCheckUtils]: 12: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 04:30:30,530 INFO L290 TraceCheckUtils]: 13: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 04:30:30,530 INFO L290 TraceCheckUtils]: 14: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 04:30:30,530 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {37142#true} {37179#(<= 1 main_~x~0)} #93#return; {37179#(<= 1 main_~x~0)} is VALID [2022-04-28 04:30:30,530 INFO L290 TraceCheckUtils]: 16: Hoare triple {37179#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {37198#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:30,531 INFO L290 TraceCheckUtils]: 17: Hoare triple {37198#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {37198#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:30,531 INFO L290 TraceCheckUtils]: 18: Hoare triple {37198#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37205#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:30,532 INFO L290 TraceCheckUtils]: 19: Hoare triple {37205#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {37205#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:30,532 INFO L290 TraceCheckUtils]: 20: Hoare triple {37205#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {37205#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:30:30,533 INFO L290 TraceCheckUtils]: 21: Hoare triple {37205#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {37215#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 04:30:30,533 INFO L290 TraceCheckUtils]: 22: Hoare triple {37215#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {37215#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 04:30:30,533 INFO L290 TraceCheckUtils]: 23: Hoare triple {37215#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37222#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 04:30:30,534 INFO L290 TraceCheckUtils]: 24: Hoare triple {37222#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {37222#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 04:30:30,534 INFO L290 TraceCheckUtils]: 25: Hoare triple {37222#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37229#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 04:30:30,535 INFO L290 TraceCheckUtils]: 26: Hoare triple {37229#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} assume !false; {37229#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 04:30:30,535 INFO L272 TraceCheckUtils]: 27: Hoare triple {37229#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 04:30:30,535 INFO L290 TraceCheckUtils]: 28: Hoare triple {37142#true} ~cond := #in~cond; {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:30:30,535 INFO L290 TraceCheckUtils]: 29: Hoare triple {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:30:30,535 INFO L290 TraceCheckUtils]: 30: Hoare triple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:30:30,536 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} {37229#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #95#return; {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:30:30,536 INFO L272 TraceCheckUtils]: 32: Hoare triple {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 04:30:30,537 INFO L290 TraceCheckUtils]: 33: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 04:30:30,537 INFO L290 TraceCheckUtils]: 34: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 04:30:30,537 INFO L290 TraceCheckUtils]: 35: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 04:30:30,537 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {37142#true} {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:30:30,537 INFO L272 TraceCheckUtils]: 37: Hoare triple {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 04:30:30,537 INFO L290 TraceCheckUtils]: 38: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 04:30:30,538 INFO L290 TraceCheckUtils]: 39: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 04:30:30,538 INFO L290 TraceCheckUtils]: 40: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 04:30:30,538 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {37142#true} {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #99#return; {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:30:30,538 INFO L272 TraceCheckUtils]: 42: Hoare triple {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 04:30:30,538 INFO L290 TraceCheckUtils]: 43: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 04:30:30,538 INFO L290 TraceCheckUtils]: 44: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 04:30:30,538 INFO L290 TraceCheckUtils]: 45: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 04:30:30,539 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {37142#true} {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #101#return; {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:30:30,540 INFO L290 TraceCheckUtils]: 47: Hoare triple {37250#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {37299#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= (* main_~v~0 2) main_~c~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:30:30,540 INFO L290 TraceCheckUtils]: 48: Hoare triple {37299#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (not (<= (* main_~v~0 2) main_~c~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:30:30,541 INFO L290 TraceCheckUtils]: 49: Hoare triple {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !false; {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:30:30,541 INFO L290 TraceCheckUtils]: 50: Hoare triple {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 04:30:30,544 INFO L290 TraceCheckUtils]: 51: Hoare triple {37303#(and (not (<= (* main_~b~0 2) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {37313#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-28 04:30:30,544 INFO L290 TraceCheckUtils]: 52: Hoare triple {37313#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} assume !false; {37313#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-28 04:30:30,545 INFO L290 TraceCheckUtils]: 53: Hoare triple {37313#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37320#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-28 04:30:30,546 INFO L290 TraceCheckUtils]: 54: Hoare triple {37320#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} assume !false; {37320#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-28 04:30:30,546 INFO L290 TraceCheckUtils]: 55: Hoare triple {37320#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37327#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~d~0 1) (= main_~p~0 1))} is VALID [2022-04-28 04:30:30,547 INFO L290 TraceCheckUtils]: 56: Hoare triple {37327#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~d~0 1) (= main_~p~0 1))} assume !false; {37327#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~d~0 1) (= main_~p~0 1))} is VALID [2022-04-28 04:30:30,547 INFO L272 TraceCheckUtils]: 57: Hoare triple {37327#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~d~0 1) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 04:30:30,547 INFO L290 TraceCheckUtils]: 58: Hoare triple {37142#true} ~cond := #in~cond; {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:30:30,547 INFO L290 TraceCheckUtils]: 59: Hoare triple {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:30:30,548 INFO L290 TraceCheckUtils]: 60: Hoare triple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:30:30,549 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} {37327#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (not (<= (* main_~a~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)))) (<= 1 main_~x~0) (= main_~k~0 0) (= (+ main_~y~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) main_~y~0) (= main_~s~0 1) (= main_~d~0 1) (= main_~p~0 1))} #95#return; {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 04:30:30,550 INFO L272 TraceCheckUtils]: 62: Hoare triple {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 04:30:30,550 INFO L290 TraceCheckUtils]: 63: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 04:30:30,550 INFO L290 TraceCheckUtils]: 64: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 04:30:30,550 INFO L290 TraceCheckUtils]: 65: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 04:30:30,550 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {37142#true} {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} #97#return; {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 04:30:30,551 INFO L272 TraceCheckUtils]: 67: Hoare triple {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 04:30:30,551 INFO L290 TraceCheckUtils]: 68: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 04:30:30,551 INFO L290 TraceCheckUtils]: 69: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 04:30:30,551 INFO L290 TraceCheckUtils]: 70: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 04:30:30,551 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {37142#true} {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} #99#return; {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 04:30:30,552 INFO L272 TraceCheckUtils]: 72: Hoare triple {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 04:30:30,552 INFO L290 TraceCheckUtils]: 73: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 04:30:30,552 INFO L290 TraceCheckUtils]: 74: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 04:30:30,552 INFO L290 TraceCheckUtils]: 75: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 04:30:30,552 INFO L284 TraceCheckUtils]: 76: Hoare quadruple {37142#true} {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} #101#return; {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 04:30:30,553 INFO L290 TraceCheckUtils]: 77: Hoare triple {37346#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {37395#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< main_~c~0 (* main_~v~0 2)) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 04:30:30,554 INFO L290 TraceCheckUtils]: 78: Hoare triple {37395#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (< main_~c~0 (* main_~v~0 2)) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 04:30:30,555 INFO L290 TraceCheckUtils]: 79: Hoare triple {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} assume !false; {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 04:30:30,555 INFO L290 TraceCheckUtils]: 80: Hoare triple {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 04:30:30,558 INFO L290 TraceCheckUtils]: 81: Hoare triple {37399#(and (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (* main_~b~0 3)) (= main_~r~0 0) (< (* main_~b~0 2) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ (* main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) 0) (= (+ (* main_~q~0 main_~x~0) (* (- 2) main_~b~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~c~0) (= main_~s~0 1) (= main_~k~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-28 04:30:30,558 INFO L290 TraceCheckUtils]: 82: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} assume !false; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-28 04:30:30,559 INFO L290 TraceCheckUtils]: 83: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-28 04:30:30,559 INFO L290 TraceCheckUtils]: 84: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} assume !false; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-28 04:30:30,560 INFO L290 TraceCheckUtils]: 85: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-28 04:30:30,560 INFO L290 TraceCheckUtils]: 86: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} assume !false; {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} is VALID [2022-04-28 04:30:30,560 INFO L272 TraceCheckUtils]: 87: Hoare triple {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 04:30:30,561 INFO L290 TraceCheckUtils]: 88: Hoare triple {37142#true} ~cond := #in~cond; {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:30:30,561 INFO L290 TraceCheckUtils]: 89: Hoare triple {37239#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:30:30,561 INFO L290 TraceCheckUtils]: 90: Hoare triple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:30:30,563 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} {37409#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (= (+ main_~x~0 (* main_~p~0 main_~x~0)) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~r~0 1) (< main_~x~0 (+ (* main_~y~0 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ main_~s~0 1) 0) (< (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= (+ main_~x~0 (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0)) main_~b~0))} #95#return; {37440#(and (= main_~b~0 (+ main_~x~0 (* (- 1) (* main_~x~0 (+ (* (- 1) main_~q~0) 1))) (* (- 1) main_~y~0))) (= (+ main_~x~0 (* main_~x~0 (+ (* (- 1) main_~q~0) 1))) 0) (< (* (* main_~q~0 main_~x~0) 2) (+ main_~x~0 (* main_~y~0 2))) (< main_~y~0 (* main_~q~0 main_~x~0)) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 04:30:30,564 INFO L272 TraceCheckUtils]: 92: Hoare triple {37440#(and (= main_~b~0 (+ main_~x~0 (* (- 1) (* main_~x~0 (+ (* (- 1) main_~q~0) 1))) (* (- 1) main_~y~0))) (= (+ main_~x~0 (* main_~x~0 (+ (* (- 1) main_~q~0) 1))) 0) (< (* (* main_~q~0 main_~x~0) 2) (+ main_~x~0 (* main_~y~0 2))) (< main_~y~0 (* main_~q~0 main_~x~0)) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37444#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:30:30,564 INFO L290 TraceCheckUtils]: 93: Hoare triple {37444#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {37448#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:30:30,565 INFO L290 TraceCheckUtils]: 94: Hoare triple {37448#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {37143#false} is VALID [2022-04-28 04:30:30,565 INFO L290 TraceCheckUtils]: 95: Hoare triple {37143#false} assume !false; {37143#false} is VALID [2022-04-28 04:30:30,565 INFO L134 CoverageAnalysis]: Checked inductivity of 224 backedges. 42 proven. 91 refuted. 0 times theorem prover too weak. 91 trivial. 0 not checked. [2022-04-28 04:30:30,565 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:31:19,931 INFO L290 TraceCheckUtils]: 95: Hoare triple {37143#false} assume !false; {37143#false} is VALID [2022-04-28 04:31:19,932 INFO L290 TraceCheckUtils]: 94: Hoare triple {37448#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {37143#false} is VALID [2022-04-28 04:31:19,932 INFO L290 TraceCheckUtils]: 93: Hoare triple {37444#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {37448#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:31:19,933 INFO L272 TraceCheckUtils]: 92: Hoare triple {37464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37444#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:31:19,933 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #95#return; {37464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 04:31:19,934 INFO L290 TraceCheckUtils]: 90: Hoare triple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:31:19,934 INFO L290 TraceCheckUtils]: 89: Hoare triple {37478#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:31:19,934 INFO L290 TraceCheckUtils]: 88: Hoare triple {37142#true} ~cond := #in~cond; {37478#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 04:31:19,934 INFO L272 TraceCheckUtils]: 87: Hoare triple {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 04:31:19,935 INFO L290 TraceCheckUtils]: 86: Hoare triple {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 04:31:19,935 INFO L290 TraceCheckUtils]: 85: Hoare triple {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 04:31:19,935 INFO L290 TraceCheckUtils]: 84: Hoare triple {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 04:31:19,936 INFO L290 TraceCheckUtils]: 83: Hoare triple {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 04:31:19,936 INFO L290 TraceCheckUtils]: 82: Hoare triple {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 04:31:19,999 INFO L290 TraceCheckUtils]: 81: Hoare triple {37500#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {37468#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 04:31:19,999 INFO L290 TraceCheckUtils]: 80: Hoare triple {37500#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= ~b~0); {37500#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:31:20,000 INFO L290 TraceCheckUtils]: 79: Hoare triple {37500#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {37500#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:31:20,005 INFO L290 TraceCheckUtils]: 78: Hoare triple {37510#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {37500#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:31:20,005 INFO L290 TraceCheckUtils]: 77: Hoare triple {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= 2 * ~v~0); {37510#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:31:20,006 INFO L284 TraceCheckUtils]: 76: Hoare quadruple {37142#true} {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #101#return; {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:31:20,006 INFO L290 TraceCheckUtils]: 75: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 04:31:20,006 INFO L290 TraceCheckUtils]: 74: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 04:31:20,006 INFO L290 TraceCheckUtils]: 73: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 04:31:20,006 INFO L272 TraceCheckUtils]: 72: Hoare triple {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 04:31:20,007 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {37142#true} {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #99#return; {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:31:20,007 INFO L290 TraceCheckUtils]: 70: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 04:31:20,007 INFO L290 TraceCheckUtils]: 69: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 04:31:20,007 INFO L290 TraceCheckUtils]: 68: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 04:31:20,007 INFO L272 TraceCheckUtils]: 67: Hoare triple {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 04:31:20,008 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {37142#true} {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #97#return; {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:31:20,008 INFO L290 TraceCheckUtils]: 65: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 04:31:20,008 INFO L290 TraceCheckUtils]: 64: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 04:31:20,008 INFO L290 TraceCheckUtils]: 63: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 04:31:20,008 INFO L272 TraceCheckUtils]: 62: Hoare triple {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 04:31:20,009 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} {37563#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #95#return; {37514#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:31:20,009 INFO L290 TraceCheckUtils]: 60: Hoare triple {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:31:20,010 INFO L290 TraceCheckUtils]: 59: Hoare triple {37478#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {37243#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:31:20,010 INFO L290 TraceCheckUtils]: 58: Hoare triple {37142#true} ~cond := #in~cond; {37478#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 04:31:20,010 INFO L272 TraceCheckUtils]: 57: Hoare triple {37563#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 04:31:20,011 INFO L290 TraceCheckUtils]: 56: Hoare triple {37563#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {37563#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:31:20,011 INFO L290 TraceCheckUtils]: 55: Hoare triple {37582#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37563#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:31:20,012 INFO L290 TraceCheckUtils]: 54: Hoare triple {37582#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {37582#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:31:20,014 INFO L290 TraceCheckUtils]: 53: Hoare triple {37142#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37582#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 04:31:20,014 INFO L290 TraceCheckUtils]: 52: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-28 04:31:20,014 INFO L290 TraceCheckUtils]: 51: Hoare triple {37142#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {37142#true} is VALID [2022-04-28 04:31:20,014 INFO L290 TraceCheckUtils]: 50: Hoare triple {37142#true} assume !(~c~0 >= ~b~0); {37142#true} is VALID [2022-04-28 04:31:20,014 INFO L290 TraceCheckUtils]: 49: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-28 04:31:20,014 INFO L290 TraceCheckUtils]: 48: Hoare triple {37142#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {37142#true} is VALID [2022-04-28 04:31:20,014 INFO L290 TraceCheckUtils]: 47: Hoare triple {37142#true} assume !(~c~0 >= 2 * ~v~0); {37142#true} is VALID [2022-04-28 04:31:20,014 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {37142#true} {37142#true} #101#return; {37142#true} is VALID [2022-04-28 04:31:20,014 INFO L290 TraceCheckUtils]: 45: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 04:31:20,014 INFO L290 TraceCheckUtils]: 44: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 04:31:20,014 INFO L290 TraceCheckUtils]: 43: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 04:31:20,014 INFO L272 TraceCheckUtils]: 42: Hoare triple {37142#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 04:31:20,014 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {37142#true} {37142#true} #99#return; {37142#true} is VALID [2022-04-28 04:31:20,014 INFO L290 TraceCheckUtils]: 40: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 04:31:20,015 INFO L290 TraceCheckUtils]: 39: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 04:31:20,015 INFO L290 TraceCheckUtils]: 38: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 04:31:20,015 INFO L272 TraceCheckUtils]: 37: Hoare triple {37142#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 04:31:20,015 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {37142#true} {37142#true} #97#return; {37142#true} is VALID [2022-04-28 04:31:20,015 INFO L290 TraceCheckUtils]: 35: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 04:31:20,015 INFO L290 TraceCheckUtils]: 34: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 04:31:20,015 INFO L290 TraceCheckUtils]: 33: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 04:31:20,015 INFO L272 TraceCheckUtils]: 32: Hoare triple {37142#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 04:31:20,015 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {37142#true} {37142#true} #95#return; {37142#true} is VALID [2022-04-28 04:31:20,015 INFO L290 TraceCheckUtils]: 30: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 04:31:20,015 INFO L290 TraceCheckUtils]: 29: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 04:31:20,015 INFO L290 TraceCheckUtils]: 28: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 04:31:20,015 INFO L272 TraceCheckUtils]: 27: Hoare triple {37142#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37142#true} is VALID [2022-04-28 04:31:20,015 INFO L290 TraceCheckUtils]: 26: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-28 04:31:20,015 INFO L290 TraceCheckUtils]: 25: Hoare triple {37142#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37142#true} is VALID [2022-04-28 04:31:20,015 INFO L290 TraceCheckUtils]: 24: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-28 04:31:20,016 INFO L290 TraceCheckUtils]: 23: Hoare triple {37142#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37142#true} is VALID [2022-04-28 04:31:20,016 INFO L290 TraceCheckUtils]: 22: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-28 04:31:20,016 INFO L290 TraceCheckUtils]: 21: Hoare triple {37142#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {37142#true} is VALID [2022-04-28 04:31:20,016 INFO L290 TraceCheckUtils]: 20: Hoare triple {37142#true} assume !(~c~0 >= ~b~0); {37142#true} is VALID [2022-04-28 04:31:20,016 INFO L290 TraceCheckUtils]: 19: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-28 04:31:20,016 INFO L290 TraceCheckUtils]: 18: Hoare triple {37142#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37142#true} is VALID [2022-04-28 04:31:20,016 INFO L290 TraceCheckUtils]: 17: Hoare triple {37142#true} assume !false; {37142#true} is VALID [2022-04-28 04:31:20,016 INFO L290 TraceCheckUtils]: 16: Hoare triple {37142#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {37142#true} is VALID [2022-04-28 04:31:20,016 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {37142#true} {37142#true} #93#return; {37142#true} is VALID [2022-04-28 04:31:20,016 INFO L290 TraceCheckUtils]: 14: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 04:31:20,016 INFO L290 TraceCheckUtils]: 13: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 04:31:20,016 INFO L290 TraceCheckUtils]: 12: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 04:31:20,016 INFO L272 TraceCheckUtils]: 11: Hoare triple {37142#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {37142#true} is VALID [2022-04-28 04:31:20,017 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {37142#true} {37142#true} #91#return; {37142#true} is VALID [2022-04-28 04:31:20,017 INFO L290 TraceCheckUtils]: 9: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 04:31:20,017 INFO L290 TraceCheckUtils]: 8: Hoare triple {37142#true} assume !(0 == ~cond); {37142#true} is VALID [2022-04-28 04:31:20,017 INFO L290 TraceCheckUtils]: 7: Hoare triple {37142#true} ~cond := #in~cond; {37142#true} is VALID [2022-04-28 04:31:20,017 INFO L272 TraceCheckUtils]: 6: Hoare triple {37142#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {37142#true} is VALID [2022-04-28 04:31:20,017 INFO L290 TraceCheckUtils]: 5: Hoare triple {37142#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {37142#true} is VALID [2022-04-28 04:31:20,017 INFO L272 TraceCheckUtils]: 4: Hoare triple {37142#true} call #t~ret6 := main(); {37142#true} is VALID [2022-04-28 04:31:20,017 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37142#true} {37142#true} #105#return; {37142#true} is VALID [2022-04-28 04:31:20,017 INFO L290 TraceCheckUtils]: 2: Hoare triple {37142#true} assume true; {37142#true} is VALID [2022-04-28 04:31:20,017 INFO L290 TraceCheckUtils]: 1: Hoare triple {37142#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {37142#true} is VALID [2022-04-28 04:31:20,017 INFO L272 TraceCheckUtils]: 0: Hoare triple {37142#true} call ULTIMATE.init(); {37142#true} is VALID [2022-04-28 04:31:20,018 INFO L134 CoverageAnalysis]: Checked inductivity of 224 backedges. 87 proven. 18 refuted. 0 times theorem prover too weak. 119 trivial. 0 not checked. [2022-04-28 04:31:20,018 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:31:20,018 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [910214844] [2022-04-28 04:31:20,018 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 04:31:20,018 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [744157467] [2022-04-28 04:31:20,018 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [744157467] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:31:20,018 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 04:31:20,018 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [25, 13] total 33 [2022-04-28 04:31:20,019 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:31:20,019 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [913516655] [2022-04-28 04:31:20,019 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [913516655] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:31:20,019 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:31:20,019 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [25] imperfect sequences [] total 25 [2022-04-28 04:31:20,019 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1875771957] [2022-04-28 04:31:20,019 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:31:20,019 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) Word has length 96 [2022-04-28 04:31:20,020 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:31:20,020 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-28 04:31:20,106 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:31:20,106 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-04-28 04:31:20,107 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:31:20,107 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-04-28 04:31:20,107 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=171, Invalid=885, Unknown=0, NotChecked=0, Total=1056 [2022-04-28 04:31:20,107 INFO L87 Difference]: Start difference. First operand 675 states and 985 transitions. Second operand has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-28 04:31:29,073 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:31:29,073 INFO L93 Difference]: Finished difference Result 767 states and 1110 transitions. [2022-04-28 04:31:29,073 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-28 04:31:29,073 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) Word has length 96 [2022-04-28 04:31:29,073 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:31:29,073 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-28 04:31:29,075 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 190 transitions. [2022-04-28 04:31:29,075 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-28 04:31:29,078 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 190 transitions. [2022-04-28 04:31:29,078 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 190 transitions. [2022-04-28 04:31:29,345 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 190 edges. 190 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:31:29,373 INFO L225 Difference]: With dead ends: 767 [2022-04-28 04:31:29,373 INFO L226 Difference]: Without dead ends: 765 [2022-04-28 04:31:29,374 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 199 GetRequests, 159 SyntacticMatches, 1 SemanticMatches, 39 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 424 ImplicationChecksByTransitivity, 2.3s TimeCoverageRelationStatistics Valid=245, Invalid=1395, Unknown=0, NotChecked=0, Total=1640 [2022-04-28 04:31:29,375 INFO L413 NwaCegarLoop]: 47 mSDtfsCounter, 105 mSDsluCounter, 417 mSDsCounter, 0 mSdLazyCounter, 1605 mSolverCounterSat, 92 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 141 SdHoareTripleChecker+Valid, 464 SdHoareTripleChecker+Invalid, 1697 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 92 IncrementalHoareTripleChecker+Valid, 1605 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.9s IncrementalHoareTripleChecker+Time [2022-04-28 04:31:29,375 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [141 Valid, 464 Invalid, 1697 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [92 Valid, 1605 Invalid, 0 Unknown, 0 Unchecked, 2.9s Time] [2022-04-28 04:31:29,376 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 765 states. [2022-04-28 04:31:31,692 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 765 to 747. [2022-04-28 04:31:31,692 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:31:31,694 INFO L82 GeneralOperation]: Start isEquivalent. First operand 765 states. Second operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) [2022-04-28 04:31:31,695 INFO L74 IsIncluded]: Start isIncluded. First operand 765 states. Second operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) [2022-04-28 04:31:31,696 INFO L87 Difference]: Start difference. First operand 765 states. Second operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) [2022-04-28 04:31:31,729 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:31:31,729 INFO L93 Difference]: Finished difference Result 765 states and 1108 transitions. [2022-04-28 04:31:31,729 INFO L276 IsEmpty]: Start isEmpty. Operand 765 states and 1108 transitions. [2022-04-28 04:31:31,731 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:31:31,731 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:31:31,732 INFO L74 IsIncluded]: Start isIncluded. First operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) Second operand 765 states. [2022-04-28 04:31:31,733 INFO L87 Difference]: Start difference. First operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) Second operand 765 states. [2022-04-28 04:31:31,764 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:31:31,765 INFO L93 Difference]: Finished difference Result 765 states and 1108 transitions. [2022-04-28 04:31:31,765 INFO L276 IsEmpty]: Start isEmpty. Operand 765 states and 1108 transitions. [2022-04-28 04:31:31,767 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:31:31,767 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:31:31,767 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:31:31,767 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:31:31,768 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 747 states, 412 states have (on average 1.233009708737864) internal successors, (508), 414 states have internal predecessors, (508), 292 states have call successors, (292), 43 states have call predecessors, (292), 42 states have return successors, (290), 289 states have call predecessors, (290), 290 states have call successors, (290) [2022-04-28 04:31:31,808 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 747 states to 747 states and 1090 transitions. [2022-04-28 04:31:31,809 INFO L78 Accepts]: Start accepts. Automaton has 747 states and 1090 transitions. Word has length 96 [2022-04-28 04:31:31,809 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:31:31,809 INFO L495 AbstractCegarLoop]: Abstraction has 747 states and 1090 transitions. [2022-04-28 04:31:31,809 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 25 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 20 states have internal predecessors, (49), 8 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-28 04:31:31,809 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 747 states and 1090 transitions. [2022-04-28 04:31:34,979 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1090 edges. 1090 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:31:34,980 INFO L276 IsEmpty]: Start isEmpty. Operand 747 states and 1090 transitions. [2022-04-28 04:31:34,980 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 101 [2022-04-28 04:31:34,980 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:31:34,980 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:31:34,997 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-28 04:31:35,181 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 21 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable20 [2022-04-28 04:31:35,181 INFO L420 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:31:35,181 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:31:35,182 INFO L85 PathProgramCache]: Analyzing trace with hash 1467188192, now seen corresponding path program 7 times [2022-04-28 04:31:35,182 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:31:35,182 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2137142551] [2022-04-28 04:31:35,182 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:31:35,182 INFO L85 PathProgramCache]: Analyzing trace with hash 1467188192, now seen corresponding path program 8 times [2022-04-28 04:31:35,182 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:31:35,182 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [308581084] [2022-04-28 04:31:35,182 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:31:35,182 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:31:35,192 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 04:31:35,192 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1828591361] [2022-04-28 04:31:35,192 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 04:31:35,192 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:31:35,193 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:31:35,193 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-28 04:31:35,194 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-28 04:31:35,249 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 04:31:35,249 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:31:35,250 INFO L263 TraceCheckSpWp]: Trace formula consists of 249 conjuncts, 77 conjunts are in the unsatisfiable core [2022-04-28 04:31:35,273 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:31:35,278 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:32:03,283 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 04:32:03,805 INFO L272 TraceCheckUtils]: 0: Hoare triple {42324#true} call ULTIMATE.init(); {42324#true} is VALID [2022-04-28 04:32:03,805 INFO L290 TraceCheckUtils]: 1: Hoare triple {42324#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {42324#true} is VALID [2022-04-28 04:32:03,805 INFO L290 TraceCheckUtils]: 2: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-28 04:32:03,805 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42324#true} {42324#true} #105#return; {42324#true} is VALID [2022-04-28 04:32:03,805 INFO L272 TraceCheckUtils]: 4: Hoare triple {42324#true} call #t~ret6 := main(); {42324#true} is VALID [2022-04-28 04:32:03,805 INFO L290 TraceCheckUtils]: 5: Hoare triple {42324#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {42324#true} is VALID [2022-04-28 04:32:03,805 INFO L272 TraceCheckUtils]: 6: Hoare triple {42324#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {42324#true} is VALID [2022-04-28 04:32:03,805 INFO L290 TraceCheckUtils]: 7: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-28 04:32:03,805 INFO L290 TraceCheckUtils]: 8: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-28 04:32:03,806 INFO L290 TraceCheckUtils]: 9: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-28 04:32:03,806 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42324#true} {42324#true} #91#return; {42324#true} is VALID [2022-04-28 04:32:03,806 INFO L272 TraceCheckUtils]: 11: Hoare triple {42324#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {42324#true} is VALID [2022-04-28 04:32:03,806 INFO L290 TraceCheckUtils]: 12: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-28 04:32:03,806 INFO L290 TraceCheckUtils]: 13: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-28 04:32:03,806 INFO L290 TraceCheckUtils]: 14: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-28 04:32:03,806 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {42324#true} {42324#true} #93#return; {42324#true} is VALID [2022-04-28 04:32:03,806 INFO L290 TraceCheckUtils]: 16: Hoare triple {42324#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {42377#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,807 INFO L290 TraceCheckUtils]: 17: Hoare triple {42377#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {42377#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,807 INFO L290 TraceCheckUtils]: 18: Hoare triple {42377#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {42384#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,807 INFO L290 TraceCheckUtils]: 19: Hoare triple {42384#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {42384#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,808 INFO L290 TraceCheckUtils]: 20: Hoare triple {42384#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {42391#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,808 INFO L290 TraceCheckUtils]: 21: Hoare triple {42391#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {42391#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,808 INFO L272 TraceCheckUtils]: 22: Hoare triple {42391#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {42324#true} is VALID [2022-04-28 04:32:03,808 INFO L290 TraceCheckUtils]: 23: Hoare triple {42324#true} ~cond := #in~cond; {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:32:03,809 INFO L290 TraceCheckUtils]: 24: Hoare triple {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:32:03,809 INFO L290 TraceCheckUtils]: 25: Hoare triple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:32:03,810 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} {42391#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {42412#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,810 INFO L272 TraceCheckUtils]: 27: Hoare triple {42412#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {42324#true} is VALID [2022-04-28 04:32:03,810 INFO L290 TraceCheckUtils]: 28: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-28 04:32:03,810 INFO L290 TraceCheckUtils]: 29: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-28 04:32:03,810 INFO L290 TraceCheckUtils]: 30: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-28 04:32:03,811 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {42324#true} {42412#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {42412#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,811 INFO L272 TraceCheckUtils]: 32: Hoare triple {42412#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {42324#true} is VALID [2022-04-28 04:32:03,811 INFO L290 TraceCheckUtils]: 33: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-28 04:32:03,811 INFO L290 TraceCheckUtils]: 34: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-28 04:32:03,811 INFO L290 TraceCheckUtils]: 35: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-28 04:32:03,812 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {42324#true} {42412#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #99#return; {42412#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,812 INFO L272 TraceCheckUtils]: 37: Hoare triple {42412#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {42324#true} is VALID [2022-04-28 04:32:03,812 INFO L290 TraceCheckUtils]: 38: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-28 04:32:03,812 INFO L290 TraceCheckUtils]: 39: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-28 04:32:03,812 INFO L290 TraceCheckUtils]: 40: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-28 04:32:03,813 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {42324#true} {42412#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #101#return; {42412#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,814 INFO L290 TraceCheckUtils]: 42: Hoare triple {42412#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,814 INFO L290 TraceCheckUtils]: 43: Hoare triple {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,814 INFO L272 TraceCheckUtils]: 44: Hoare triple {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {42324#true} is VALID [2022-04-28 04:32:03,814 INFO L290 TraceCheckUtils]: 45: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-28 04:32:03,814 INFO L290 TraceCheckUtils]: 46: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-28 04:32:03,814 INFO L290 TraceCheckUtils]: 47: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-28 04:32:03,815 INFO L284 TraceCheckUtils]: 48: Hoare quadruple {42324#true} {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,815 INFO L272 TraceCheckUtils]: 49: Hoare triple {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {42324#true} is VALID [2022-04-28 04:32:03,815 INFO L290 TraceCheckUtils]: 50: Hoare triple {42324#true} ~cond := #in~cond; {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:32:03,816 INFO L290 TraceCheckUtils]: 51: Hoare triple {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:32:03,816 INFO L290 TraceCheckUtils]: 52: Hoare triple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:32:03,817 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,817 INFO L272 TraceCheckUtils]: 54: Hoare triple {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {42324#true} is VALID [2022-04-28 04:32:03,817 INFO L290 TraceCheckUtils]: 55: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-28 04:32:03,817 INFO L290 TraceCheckUtils]: 56: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-28 04:32:03,817 INFO L290 TraceCheckUtils]: 57: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-28 04:32:03,818 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {42324#true} {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #99#return; {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,818 INFO L272 TraceCheckUtils]: 59: Hoare triple {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {42324#true} is VALID [2022-04-28 04:32:03,818 INFO L290 TraceCheckUtils]: 60: Hoare triple {42324#true} ~cond := #in~cond; {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:32:03,818 INFO L290 TraceCheckUtils]: 61: Hoare triple {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:32:03,818 INFO L290 TraceCheckUtils]: 62: Hoare triple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:32:03,819 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} {42461#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #101#return; {42525#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,820 INFO L290 TraceCheckUtils]: 64: Hoare triple {42525#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {42525#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,822 INFO L290 TraceCheckUtils]: 65: Hoare triple {42525#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {42532#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,823 INFO L290 TraceCheckUtils]: 66: Hoare triple {42532#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !false; {42532#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,823 INFO L290 TraceCheckUtils]: 67: Hoare triple {42532#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,824 INFO L290 TraceCheckUtils]: 68: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !false; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,824 INFO L272 TraceCheckUtils]: 69: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {42324#true} is VALID [2022-04-28 04:32:03,824 INFO L290 TraceCheckUtils]: 70: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-28 04:32:03,824 INFO L290 TraceCheckUtils]: 71: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-28 04:32:03,824 INFO L290 TraceCheckUtils]: 72: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-28 04:32:03,824 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {42324#true} {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} #95#return; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,825 INFO L272 TraceCheckUtils]: 74: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {42324#true} is VALID [2022-04-28 04:32:03,825 INFO L290 TraceCheckUtils]: 75: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-28 04:32:03,825 INFO L290 TraceCheckUtils]: 76: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-28 04:32:03,825 INFO L290 TraceCheckUtils]: 77: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-28 04:32:03,825 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {42324#true} {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} #97#return; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,825 INFO L272 TraceCheckUtils]: 79: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {42324#true} is VALID [2022-04-28 04:32:03,826 INFO L290 TraceCheckUtils]: 80: Hoare triple {42324#true} ~cond := #in~cond; {42324#true} is VALID [2022-04-28 04:32:03,826 INFO L290 TraceCheckUtils]: 81: Hoare triple {42324#true} assume !(0 == ~cond); {42324#true} is VALID [2022-04-28 04:32:03,826 INFO L290 TraceCheckUtils]: 82: Hoare triple {42324#true} assume true; {42324#true} is VALID [2022-04-28 04:32:03,826 INFO L284 TraceCheckUtils]: 83: Hoare quadruple {42324#true} {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} #99#return; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,826 INFO L272 TraceCheckUtils]: 84: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {42324#true} is VALID [2022-04-28 04:32:03,827 INFO L290 TraceCheckUtils]: 85: Hoare triple {42324#true} ~cond := #in~cond; {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:32:03,827 INFO L290 TraceCheckUtils]: 86: Hoare triple {42401#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:32:03,827 INFO L290 TraceCheckUtils]: 87: Hoare triple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:32:03,828 INFO L284 TraceCheckUtils]: 88: Hoare quadruple {42405#(not (= |__VERIFIER_assert_#in~cond| 0))} {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} #101#return; {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,828 INFO L290 TraceCheckUtils]: 89: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,830 INFO L290 TraceCheckUtils]: 90: Hoare triple {42539#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,831 INFO L290 TraceCheckUtils]: 91: Hoare triple {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,831 INFO L290 TraceCheckUtils]: 92: Hoare triple {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 04:32:03,833 INFO L290 TraceCheckUtils]: 93: Hoare triple {42609#(and (= main_~r~0 0) (= main_~s~0 1) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {42619#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} is VALID [2022-04-28 04:32:03,834 INFO L290 TraceCheckUtils]: 94: Hoare triple {42619#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} assume !false; {42619#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} is VALID [2022-04-28 04:32:03,835 INFO L290 TraceCheckUtils]: 95: Hoare triple {42619#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} assume !(0 != ~b~0); {42626#(and (= (+ main_~x~0 (* main_~y~0 (- 3))) 0) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} is VALID [2022-04-28 04:32:03,837 INFO L272 TraceCheckUtils]: 96: Hoare triple {42626#(and (= (+ main_~x~0 (* main_~y~0 (- 3))) 0) (= (+ main_~q~0 (* (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~p~0) 2)) (+ main_~p~0 1)) (= main_~p~0 0) (= main_~r~0 1) (= 0 (mod (+ main_~s~0 main_~r~0) 2)) (= main_~a~0 main_~y~0) (= (* 2 (* (div (div (+ main_~r~0 (* (- 1) main_~s~0)) 2) main_~r~0) main_~y~0)) (* main_~y~0 4)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {42630#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 04:32:03,837 INFO L290 TraceCheckUtils]: 97: Hoare triple {42630#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {42634#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 04:32:03,837 INFO L290 TraceCheckUtils]: 98: Hoare triple {42634#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {42325#false} is VALID [2022-04-28 04:32:03,837 INFO L290 TraceCheckUtils]: 99: Hoare triple {42325#false} assume !false; {42325#false} is VALID [2022-04-28 04:32:03,838 INFO L134 CoverageAnalysis]: Checked inductivity of 319 backedges. 71 proven. 76 refuted. 0 times theorem prover too weak. 172 trivial. 0 not checked. [2022-04-28 04:32:03,838 INFO L328 TraceCheckSpWp]: Computing backward predicates...