/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/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound10.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 13:02:50,060 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 13:02:50,061 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 13:02:50,113 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 13:02:50,113 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 13:02:50,115 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 13:02:50,117 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 13:02:50,119 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 13:02:50,120 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 13:02:50,123 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 13:02:50,124 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 13:02:50,125 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 13:02:50,125 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 13:02:50,127 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 13:02:50,128 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 13:02:50,130 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 13:02:50,130 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 13:02:50,130 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 13:02:50,132 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 13:02:50,136 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 13:02:50,137 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 13:02:50,138 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 13:02:50,139 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 13:02:50,141 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 13:02:50,142 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 13:02:50,147 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 13:02:50,147 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 13:02:50,147 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 13:02:50,148 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 13:02:50,148 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 13:02:50,149 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 13:02:50,149 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 13:02:50,150 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 13:02:50,150 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 13:02:50,151 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 13:02:50,151 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 13:02:50,152 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 13:02:50,152 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 13:02:50,152 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 13:02:50,152 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 13:02:50,153 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 13:02:50,154 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 13:02:50,155 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2022-04-27 13:02:50,182 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 13:02:50,183 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 13:02:50,183 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-27 13:02:50,183 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-27 13:02:50,184 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 13:02:50,184 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 13:02:50,184 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 13:02:50,184 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 13:02:50,184 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 13:02:50,185 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 13:02:50,185 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 13:02:50,185 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 13:02:50,185 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 13:02:50,186 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 13:02:50,186 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 13:02:50,186 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 13:02:50,186 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 13:02:50,187 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 13:02:50,187 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 13:02:50,187 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 13:02:50,187 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 13:02:50,187 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 13:02:50,187 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 13:02:50,187 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 13:02:50,188 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 13:02:50,188 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 13:02:50,188 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 13:02:50,188 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 13:02:50,188 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 13:02:50,188 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 13:02:50,188 INFO L138 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2022-04-27 13:02:50,188 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-27 13:02:50,188 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 13:02:50,189 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode 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-27 13:02:50,382 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 13:02:50,408 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 13:02:50,409 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 13:02:50,410 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 13:02:50,411 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 13:02:50,412 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound10.c [2022-04-27 13:02:50,454 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/cb9708780/63bcacb9419540feaf29b2e725c700c7/FLAGaa32b3ddc [2022-04-27 13:02:50,813 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 13:02:50,814 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound10.c [2022-04-27 13:02:50,820 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/cb9708780/63bcacb9419540feaf29b2e725c700c7/FLAGaa32b3ddc [2022-04-27 13:02:51,253 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/cb9708780/63bcacb9419540feaf29b2e725c700c7 [2022-04-27 13:02:51,255 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 13:02:51,257 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-27 13:02:51,259 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 13:02:51,259 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 13:02:51,263 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 13:02:51,264 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 01:02:51" (1/1) ... [2022-04-27 13:02:51,264 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@119c9988 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:51, skipping insertion in model container [2022-04-27 13:02:51,265 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 01:02:51" (1/1) ... [2022-04-27 13:02:51,269 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 13:02:51,279 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 13:02:51,400 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound10.c[490,503] [2022-04-27 13:02:51,427 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 13:02:51,432 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 13:02:51,444 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound10.c[490,503] [2022-04-27 13:02:51,465 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 13:02:51,472 INFO L208 MainTranslator]: Completed translation [2022-04-27 13:02:51,473 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:51 WrapperNode [2022-04-27 13:02:51,473 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 13:02:51,480 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 13:02:51,481 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 13:02:51,481 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 13:02:51,487 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:51" (1/1) ... [2022-04-27 13:02:51,487 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:51" (1/1) ... [2022-04-27 13:02:51,492 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:51" (1/1) ... [2022-04-27 13:02:51,492 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:51" (1/1) ... [2022-04-27 13:02:51,507 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:51" (1/1) ... [2022-04-27 13:02:51,512 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:51" (1/1) ... [2022-04-27 13:02:51,516 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:51" (1/1) ... [2022-04-27 13:02:51,517 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 13:02:51,517 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 13:02:51,517 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 13:02:51,517 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 13:02:51,519 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:51" (1/1) ... [2022-04-27 13:02:51,523 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 13:02:51,529 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:51,559 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-27 13:02:51,618 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-27 13:02:51,633 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 13:02:51,633 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 13:02:51,633 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 13:02:51,634 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 13:02:51,635 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 13:02:51,635 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 13:02:51,635 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 13:02:51,635 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 13:02:51,635 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 13:02:51,635 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 13:02:51,635 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 13:02:51,635 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 13:02:51,635 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 13:02:51,636 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 13:02:51,636 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 13:02:51,636 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 13:02:51,636 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 13:02:51,636 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 13:02:51,636 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 13:02:51,636 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 13:02:51,717 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 13:02:51,718 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 13:02:51,888 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 13:02:51,892 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 13:02:51,893 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-27 13:02:51,894 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 01:02:51 BoogieIcfgContainer [2022-04-27 13:02:51,894 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 13:02:51,895 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 13:02:51,895 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 13:02:51,899 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 13:02:51,899 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 01:02:51" (1/3) ... [2022-04-27 13:02:51,899 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6cbbabcc and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 01:02:51, skipping insertion in model container [2022-04-27 13:02:51,899 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:51" (2/3) ... [2022-04-27 13:02:51,900 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6cbbabcc and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 01:02:51, skipping insertion in model container [2022-04-27 13:02:51,900 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 01:02:51" (3/3) ... [2022-04-27 13:02:51,901 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd3-ll_unwindbound10.c [2022-04-27 13:02:51,911 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 13:02:51,911 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 13:02:51,958 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 13:02:51,966 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, 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@425c7813, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@243a4712 [2022-04-27 13:02:51,966 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 13:02:51,971 INFO L276 IsEmpty]: Start isEmpty. Operand has 40 states, 25 states have (on average 1.48) internal successors, (37), 26 states have internal predecessors, (37), 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-27 13:02:51,977 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-27 13:02:51,977 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:51,977 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-27 13:02:51,978 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:51,981 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:51,982 INFO L85 PathProgramCache]: Analyzing trace with hash 1766263304, now seen corresponding path program 1 times [2022-04-27 13:02:51,987 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:51,987 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2129326449] [2022-04-27 13:02:51,988 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:51,988 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:52,068 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:52,113 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 13:02:52,118 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:52,128 INFO L290 TraceCheckUtils]: 0: Hoare triple {56#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {43#true} is VALID [2022-04-27 13:02:52,129 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-27 13:02:52,129 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {43#true} {43#true} #108#return; {43#true} is VALID [2022-04-27 13:02:52,129 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 13:02:52,131 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:52,135 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:52,135 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:52,135 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:52,135 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-27 13:02:52,136 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-27 13:02:52,137 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:52,140 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:52,140 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:52,140 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:52,141 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-27 13:02:52,141 INFO L272 TraceCheckUtils]: 0: Hoare triple {43#true} call ULTIMATE.init(); {56#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 13:02:52,141 INFO L290 TraceCheckUtils]: 1: Hoare triple {56#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {43#true} is VALID [2022-04-27 13:02:52,142 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-27 13:02:52,142 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#true} {43#true} #108#return; {43#true} is VALID [2022-04-27 13:02:52,142 INFO L272 TraceCheckUtils]: 4: Hoare triple {43#true} call #t~ret9 := main(); {43#true} is VALID [2022-04-27 13:02:52,142 INFO L290 TraceCheckUtils]: 5: Hoare triple {43#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;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; {43#true} is VALID [2022-04-27 13:02:52,142 INFO L272 TraceCheckUtils]: 6: Hoare triple {43#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-27 13:02:52,142 INFO L290 TraceCheckUtils]: 7: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:52,143 INFO L290 TraceCheckUtils]: 8: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:52,143 INFO L290 TraceCheckUtils]: 9: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:52,143 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-27 13:02:52,143 INFO L272 TraceCheckUtils]: 11: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-27 13:02:52,143 INFO L290 TraceCheckUtils]: 12: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:52,144 INFO L290 TraceCheckUtils]: 13: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:52,144 INFO L290 TraceCheckUtils]: 14: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:52,144 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-27 13:02:52,144 INFO L290 TraceCheckUtils]: 16: Hoare triple {44#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {44#false} is VALID [2022-04-27 13:02:52,144 INFO L290 TraceCheckUtils]: 17: Hoare triple {44#false} assume !true; {44#false} is VALID [2022-04-27 13:02:52,144 INFO L272 TraceCheckUtils]: 18: Hoare triple {44#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)); {44#false} is VALID [2022-04-27 13:02:52,144 INFO L290 TraceCheckUtils]: 19: Hoare triple {44#false} ~cond := #in~cond; {44#false} is VALID [2022-04-27 13:02:52,145 INFO L290 TraceCheckUtils]: 20: Hoare triple {44#false} assume 0 == ~cond; {44#false} is VALID [2022-04-27 13:02:52,145 INFO L290 TraceCheckUtils]: 21: Hoare triple {44#false} assume !false; {44#false} is VALID [2022-04-27 13:02:52,145 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-27 13:02:52,145 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:52,145 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2129326449] [2022-04-27 13:02:52,146 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2129326449] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:02:52,146 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:02:52,146 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 13:02:52,147 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [632176989] [2022-04-27 13:02:52,147 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:02:52,151 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-27 13:02:52,152 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:52,153 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-27 13:02:52,170 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-27 13:02:52,170 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 13:02:52,170 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:02:52,185 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 13:02:52,185 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 13:02:52,187 INFO L87 Difference]: Start difference. First operand has 40 states, 25 states have (on average 1.48) internal successors, (37), 26 states have internal predecessors, (37), 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-27 13:02:52,339 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:52,339 INFO L93 Difference]: Finished difference Result 74 states and 111 transitions. [2022-04-27 13:02:52,339 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 13:02:52,340 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-27 13:02:52,340 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:02:52,341 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-27 13:02:52,349 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 111 transitions. [2022-04-27 13:02:52,349 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-27 13:02:52,355 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 111 transitions. [2022-04-27 13:02:52,355 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 111 transitions. [2022-04-27 13:02:52,439 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 111 edges. 111 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:02:52,445 INFO L225 Difference]: With dead ends: 74 [2022-04-27 13:02:52,445 INFO L226 Difference]: Without dead ends: 36 [2022-04-27 13:02:52,447 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-27 13:02:52,449 INFO L413 NwaCegarLoop]: 47 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 28 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 51 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 28 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 13:02:52,449 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 51 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 28 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 13:02:52,459 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-27 13:02:52,467 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 35. [2022-04-27 13:02:52,467 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:02:52,468 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 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-27 13:02:52,469 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 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-27 13:02:52,469 INFO L87 Difference]: Start difference. First operand 36 states. Second operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 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-27 13:02:52,473 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:52,473 INFO L93 Difference]: Finished difference Result 36 states and 46 transitions. [2022-04-27 13:02:52,473 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 46 transitions. [2022-04-27 13:02:52,473 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:52,474 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:52,474 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 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 36 states. [2022-04-27 13:02:52,474 INFO L87 Difference]: Start difference. First operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 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 36 states. [2022-04-27 13:02:52,478 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:52,478 INFO L93 Difference]: Finished difference Result 36 states and 46 transitions. [2022-04-27 13:02:52,478 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 46 transitions. [2022-04-27 13:02:52,478 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:52,478 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:52,478 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:02:52,479 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:02:52,479 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 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-27 13:02:52,481 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 45 transitions. [2022-04-27 13:02:52,482 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 45 transitions. Word has length 22 [2022-04-27 13:02:52,482 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:02:52,482 INFO L495 AbstractCegarLoop]: Abstraction has 35 states and 45 transitions. [2022-04-27 13:02:52,483 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-27 13:02:52,483 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 45 transitions. [2022-04-27 13:02:52,483 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-27 13:02:52,483 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:52,484 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-27 13:02:52,484 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 13:02:52,484 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:52,484 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:52,484 INFO L85 PathProgramCache]: Analyzing trace with hash -81203399, now seen corresponding path program 1 times [2022-04-27 13:02:52,484 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:52,485 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1864092612] [2022-04-27 13:02:52,485 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:52,485 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:52,498 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:02:52,498 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1848995625] [2022-04-27 13:02:52,499 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:52,499 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:52,499 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:52,500 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-27 13:02:52,501 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-27 13:02:52,538 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:52,540 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-27 13:02:52,576 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:52,579 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:02:52,726 INFO L272 TraceCheckUtils]: 0: Hoare triple {284#true} call ULTIMATE.init(); {284#true} is VALID [2022-04-27 13:02:52,727 INFO L290 TraceCheckUtils]: 1: Hoare triple {284#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);~counter~0 := 0; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:52,727 INFO L290 TraceCheckUtils]: 2: Hoare triple {292#(<= ~counter~0 0)} assume true; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:52,728 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {292#(<= ~counter~0 0)} {284#true} #108#return; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:52,728 INFO L272 TraceCheckUtils]: 4: Hoare triple {292#(<= ~counter~0 0)} call #t~ret9 := main(); {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:52,728 INFO L290 TraceCheckUtils]: 5: Hoare triple {292#(<= ~counter~0 0)} 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; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:52,729 INFO L272 TraceCheckUtils]: 6: Hoare triple {292#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:52,729 INFO L290 TraceCheckUtils]: 7: Hoare triple {292#(<= ~counter~0 0)} ~cond := #in~cond; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:52,730 INFO L290 TraceCheckUtils]: 8: Hoare triple {292#(<= ~counter~0 0)} assume !(0 == ~cond); {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:52,730 INFO L290 TraceCheckUtils]: 9: Hoare triple {292#(<= ~counter~0 0)} assume true; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:52,731 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {292#(<= ~counter~0 0)} {292#(<= ~counter~0 0)} #94#return; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:52,731 INFO L272 TraceCheckUtils]: 11: Hoare triple {292#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:52,731 INFO L290 TraceCheckUtils]: 12: Hoare triple {292#(<= ~counter~0 0)} ~cond := #in~cond; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:52,732 INFO L290 TraceCheckUtils]: 13: Hoare triple {292#(<= ~counter~0 0)} assume !(0 == ~cond); {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:52,732 INFO L290 TraceCheckUtils]: 14: Hoare triple {292#(<= ~counter~0 0)} assume true; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:52,733 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {292#(<= ~counter~0 0)} {292#(<= ~counter~0 0)} #96#return; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:52,733 INFO L290 TraceCheckUtils]: 16: Hoare triple {292#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:52,734 INFO L290 TraceCheckUtils]: 17: Hoare triple {292#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {341#(<= |main_#t~post6| 0)} is VALID [2022-04-27 13:02:52,734 INFO L290 TraceCheckUtils]: 18: Hoare triple {341#(<= |main_#t~post6| 0)} assume !(#t~post6 < 10);havoc #t~post6; {285#false} is VALID [2022-04-27 13:02:52,734 INFO L272 TraceCheckUtils]: 19: Hoare triple {285#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)); {285#false} is VALID [2022-04-27 13:02:52,734 INFO L290 TraceCheckUtils]: 20: Hoare triple {285#false} ~cond := #in~cond; {285#false} is VALID [2022-04-27 13:02:52,734 INFO L290 TraceCheckUtils]: 21: Hoare triple {285#false} assume 0 == ~cond; {285#false} is VALID [2022-04-27 13:02:52,735 INFO L290 TraceCheckUtils]: 22: Hoare triple {285#false} assume !false; {285#false} is VALID [2022-04-27 13:02:52,735 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-27 13:02:52,735 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:02:52,735 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:52,735 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1864092612] [2022-04-27 13:02:52,735 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:02:52,736 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1848995625] [2022-04-27 13:02:52,736 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1848995625] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:02:52,736 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:02:52,736 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-27 13:02:52,736 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1961403590] [2022-04-27 13:02:52,737 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:02:52,737 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-27 13:02:52,737 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:52,737 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:52,752 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-27 13:02:52,752 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-27 13:02:52,752 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:02:52,752 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-27 13:02:52,753 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-27 13:02:52,753 INFO L87 Difference]: Start difference. First operand 35 states and 45 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:52,818 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:52,818 INFO L93 Difference]: Finished difference Result 44 states and 54 transitions. [2022-04-27 13:02:52,818 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-27 13:02:52,818 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-27 13:02:52,819 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:02:52,819 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:52,820 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 54 transitions. [2022-04-27 13:02:52,821 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:52,828 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 54 transitions. [2022-04-27 13:02:52,828 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 54 transitions. [2022-04-27 13:02:52,881 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-27 13:02:52,882 INFO L225 Difference]: With dead ends: 44 [2022-04-27 13:02:52,882 INFO L226 Difference]: Without dead ends: 37 [2022-04-27 13:02:52,883 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-27 13:02:52,884 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 0 mSDsluCounter, 70 mSDsCounter, 0 mSdLazyCounter, 9 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 113 SdHoareTripleChecker+Invalid, 9 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 9 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 13:02:52,884 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 113 Invalid, 9 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 9 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 13:02:52,884 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-27 13:02:52,890 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 37. [2022-04-27 13:02:52,890 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:02:52,891 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 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-27 13:02:52,891 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 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-27 13:02:52,891 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 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-27 13:02:52,894 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:52,894 INFO L93 Difference]: Finished difference Result 37 states and 47 transitions. [2022-04-27 13:02:52,894 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-27 13:02:52,894 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:52,894 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:52,895 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 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 37 states. [2022-04-27 13:02:52,895 INFO L87 Difference]: Start difference. First operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 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 37 states. [2022-04-27 13:02:52,897 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:52,897 INFO L93 Difference]: Finished difference Result 37 states and 47 transitions. [2022-04-27 13:02:52,897 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-27 13:02:52,898 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:52,898 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:52,898 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:02:52,898 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:02:52,898 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 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-27 13:02:52,900 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 47 transitions. [2022-04-27 13:02:52,900 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 47 transitions. Word has length 23 [2022-04-27 13:02:52,900 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:02:52,900 INFO L495 AbstractCegarLoop]: Abstraction has 37 states and 47 transitions. [2022-04-27 13:02:52,901 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:52,901 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-27 13:02:52,901 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-27 13:02:52,901 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:52,902 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, 1] [2022-04-27 13:02:52,918 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-27 13:02:53,115 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-27 13:02:53,116 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:53,116 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:53,116 INFO L85 PathProgramCache]: Analyzing trace with hash 1762644405, now seen corresponding path program 1 times [2022-04-27 13:02:53,116 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:53,116 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1864174633] [2022-04-27 13:02:53,116 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:53,117 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:53,130 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:02:53,130 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [129807694] [2022-04-27 13:02:53,130 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:53,130 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:53,131 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:53,143 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-27 13:02:53,145 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-27 13:02:53,178 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:53,179 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 13:02:53,186 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:53,187 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:02:53,264 INFO L272 TraceCheckUtils]: 0: Hoare triple {547#true} call ULTIMATE.init(); {547#true} is VALID [2022-04-27 13:02:53,264 INFO L290 TraceCheckUtils]: 1: Hoare triple {547#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);~counter~0 := 0; {547#true} is VALID [2022-04-27 13:02:53,265 INFO L290 TraceCheckUtils]: 2: Hoare triple {547#true} assume true; {547#true} is VALID [2022-04-27 13:02:53,265 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {547#true} {547#true} #108#return; {547#true} is VALID [2022-04-27 13:02:53,265 INFO L272 TraceCheckUtils]: 4: Hoare triple {547#true} call #t~ret9 := main(); {547#true} is VALID [2022-04-27 13:02:53,265 INFO L290 TraceCheckUtils]: 5: Hoare triple {547#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; {547#true} is VALID [2022-04-27 13:02:53,265 INFO L272 TraceCheckUtils]: 6: Hoare triple {547#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {547#true} is VALID [2022-04-27 13:02:53,265 INFO L290 TraceCheckUtils]: 7: Hoare triple {547#true} ~cond := #in~cond; {547#true} is VALID [2022-04-27 13:02:53,265 INFO L290 TraceCheckUtils]: 8: Hoare triple {547#true} assume !(0 == ~cond); {547#true} is VALID [2022-04-27 13:02:53,265 INFO L290 TraceCheckUtils]: 9: Hoare triple {547#true} assume true; {547#true} is VALID [2022-04-27 13:02:53,266 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {547#true} {547#true} #94#return; {547#true} is VALID [2022-04-27 13:02:53,266 INFO L272 TraceCheckUtils]: 11: Hoare triple {547#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {547#true} is VALID [2022-04-27 13:02:53,266 INFO L290 TraceCheckUtils]: 12: Hoare triple {547#true} ~cond := #in~cond; {588#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:02:53,266 INFO L290 TraceCheckUtils]: 13: Hoare triple {588#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {592#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:02:53,267 INFO L290 TraceCheckUtils]: 14: Hoare triple {592#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {592#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:02:53,267 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {592#(not (= |assume_abort_if_not_#in~cond| 0))} {547#true} #96#return; {599#(<= 1 main_~y~0)} is VALID [2022-04-27 13:02:53,268 INFO L290 TraceCheckUtils]: 16: Hoare triple {599#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {603#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:53,268 INFO L290 TraceCheckUtils]: 17: Hoare triple {603#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {603#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:53,268 INFO L290 TraceCheckUtils]: 18: Hoare triple {603#(<= 1 main_~b~0)} assume !!(#t~post6 < 10);havoc #t~post6; {603#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:53,269 INFO L290 TraceCheckUtils]: 19: Hoare triple {603#(<= 1 main_~b~0)} assume !(0 != ~b~0); {548#false} is VALID [2022-04-27 13:02:53,269 INFO L272 TraceCheckUtils]: 20: Hoare triple {548#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)); {548#false} is VALID [2022-04-27 13:02:53,269 INFO L290 TraceCheckUtils]: 21: Hoare triple {548#false} ~cond := #in~cond; {548#false} is VALID [2022-04-27 13:02:53,269 INFO L290 TraceCheckUtils]: 22: Hoare triple {548#false} assume 0 == ~cond; {548#false} is VALID [2022-04-27 13:02:53,269 INFO L290 TraceCheckUtils]: 23: Hoare triple {548#false} assume !false; {548#false} is VALID [2022-04-27 13:02:53,270 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 3 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-27 13:02:53,270 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:02:53,270 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:53,270 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1864174633] [2022-04-27 13:02:53,270 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:02:53,270 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [129807694] [2022-04-27 13:02:53,270 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [129807694] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:02:53,270 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:02:53,270 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 13:02:53,271 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1520326566] [2022-04-27 13:02:53,271 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:02:53,271 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 24 [2022-04-27 13:02:53,271 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:53,271 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:02:53,286 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:02:53,286 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 13:02:53,286 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:02:53,286 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 13:02:53,286 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-27 13:02:53,287 INFO L87 Difference]: Start difference. First operand 37 states and 47 transitions. Second operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:02:53,478 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:53,478 INFO L93 Difference]: Finished difference Result 57 states and 75 transitions. [2022-04-27 13:02:53,478 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 13:02:53,478 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 24 [2022-04-27 13:02:53,478 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:02:53,479 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:02:53,481 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 75 transitions. [2022-04-27 13:02:53,481 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:02:53,483 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 75 transitions. [2022-04-27 13:02:53,483 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 75 transitions. [2022-04-27 13:02:53,535 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-27 13:02:53,536 INFO L225 Difference]: With dead ends: 57 [2022-04-27 13:02:53,536 INFO L226 Difference]: Without dead ends: 50 [2022-04-27 13:02:53,537 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 19 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-27 13:02:53,537 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 46 mSDsluCounter, 107 mSDsCounter, 0 mSdLazyCounter, 60 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 148 SdHoareTripleChecker+Invalid, 69 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 60 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 13:02:53,538 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [50 Valid, 148 Invalid, 69 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 60 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 13:02:53,538 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-04-27 13:02:53,551 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 38. [2022-04-27 13:02:53,551 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:02:53,551 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand has 38 states, 25 states have (on average 1.28) internal successors, (32), 26 states have internal predecessors, (32), 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-27 13:02:53,552 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand has 38 states, 25 states have (on average 1.28) internal successors, (32), 26 states have internal predecessors, (32), 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-27 13:02:53,552 INFO L87 Difference]: Start difference. First operand 50 states. Second operand has 38 states, 25 states have (on average 1.28) internal successors, (32), 26 states have internal predecessors, (32), 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-27 13:02:53,554 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:53,554 INFO L93 Difference]: Finished difference Result 50 states and 68 transitions. [2022-04-27 13:02:53,554 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 68 transitions. [2022-04-27 13:02:53,555 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:53,555 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:53,555 INFO L74 IsIncluded]: Start isIncluded. First operand has 38 states, 25 states have (on average 1.28) internal successors, (32), 26 states have internal predecessors, (32), 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 50 states. [2022-04-27 13:02:53,555 INFO L87 Difference]: Start difference. First operand has 38 states, 25 states have (on average 1.28) internal successors, (32), 26 states have internal predecessors, (32), 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 50 states. [2022-04-27 13:02:53,557 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:53,557 INFO L93 Difference]: Finished difference Result 50 states and 68 transitions. [2022-04-27 13:02:53,557 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 68 transitions. [2022-04-27 13:02:53,558 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:53,558 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:53,558 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:02:53,558 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:02:53,558 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 38 states, 25 states have (on average 1.28) internal successors, (32), 26 states have internal predecessors, (32), 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-27 13:02:53,560 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 48 transitions. [2022-04-27 13:02:53,560 INFO L78 Accepts]: Start accepts. Automaton has 38 states and 48 transitions. Word has length 24 [2022-04-27 13:02:53,560 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:02:53,560 INFO L495 AbstractCegarLoop]: Abstraction has 38 states and 48 transitions. [2022-04-27 13:02:53,560 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:02:53,560 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 48 transitions. [2022-04-27 13:02:53,561 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-27 13:02:53,561 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:53,561 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, 1] [2022-04-27 13:02:53,578 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-27 13:02:53,773 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-27 13:02:53,774 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:53,774 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:53,774 INFO L85 PathProgramCache]: Analyzing trace with hash -1090347867, now seen corresponding path program 1 times [2022-04-27 13:02:53,774 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:53,775 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [114439880] [2022-04-27 13:02:53,775 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:53,775 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:53,787 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:02:53,787 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [335536009] [2022-04-27 13:02:53,787 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:53,787 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:53,788 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:53,797 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-27 13:02:53,802 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-27 13:02:53,836 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:53,837 INFO L263 TraceCheckSpWp]: Trace formula consists of 128 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 13:02:53,846 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:53,847 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:02:53,982 INFO L272 TraceCheckUtils]: 0: Hoare triple {865#true} call ULTIMATE.init(); {865#true} is VALID [2022-04-27 13:02:53,982 INFO L290 TraceCheckUtils]: 1: Hoare triple {865#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);~counter~0 := 0; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:53,983 INFO L290 TraceCheckUtils]: 2: Hoare triple {873#(<= ~counter~0 0)} assume true; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:53,983 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {873#(<= ~counter~0 0)} {865#true} #108#return; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:53,984 INFO L272 TraceCheckUtils]: 4: Hoare triple {873#(<= ~counter~0 0)} call #t~ret9 := main(); {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:53,984 INFO L290 TraceCheckUtils]: 5: Hoare triple {873#(<= ~counter~0 0)} 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; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:53,984 INFO L272 TraceCheckUtils]: 6: Hoare triple {873#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:53,985 INFO L290 TraceCheckUtils]: 7: Hoare triple {873#(<= ~counter~0 0)} ~cond := #in~cond; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:53,985 INFO L290 TraceCheckUtils]: 8: Hoare triple {873#(<= ~counter~0 0)} assume !(0 == ~cond); {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:53,985 INFO L290 TraceCheckUtils]: 9: Hoare triple {873#(<= ~counter~0 0)} assume true; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:53,986 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {873#(<= ~counter~0 0)} {873#(<= ~counter~0 0)} #94#return; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:53,986 INFO L272 TraceCheckUtils]: 11: Hoare triple {873#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:53,986 INFO L290 TraceCheckUtils]: 12: Hoare triple {873#(<= ~counter~0 0)} ~cond := #in~cond; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:53,987 INFO L290 TraceCheckUtils]: 13: Hoare triple {873#(<= ~counter~0 0)} assume !(0 == ~cond); {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:53,987 INFO L290 TraceCheckUtils]: 14: Hoare triple {873#(<= ~counter~0 0)} assume true; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:53,987 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {873#(<= ~counter~0 0)} {873#(<= ~counter~0 0)} #96#return; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:53,988 INFO L290 TraceCheckUtils]: 16: Hoare triple {873#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:53,988 INFO L290 TraceCheckUtils]: 17: Hoare triple {873#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {922#(<= ~counter~0 1)} is VALID [2022-04-27 13:02:53,988 INFO L290 TraceCheckUtils]: 18: Hoare triple {922#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {922#(<= ~counter~0 1)} is VALID [2022-04-27 13:02:53,989 INFO L290 TraceCheckUtils]: 19: Hoare triple {922#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {922#(<= ~counter~0 1)} is VALID [2022-04-27 13:02:53,989 INFO L290 TraceCheckUtils]: 20: Hoare triple {922#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {932#(<= |main_#t~post7| 1)} is VALID [2022-04-27 13:02:53,990 INFO L290 TraceCheckUtils]: 21: Hoare triple {932#(<= |main_#t~post7| 1)} assume !(#t~post7 < 10);havoc #t~post7; {866#false} is VALID [2022-04-27 13:02:53,990 INFO L290 TraceCheckUtils]: 22: Hoare triple {866#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; {866#false} is VALID [2022-04-27 13:02:53,990 INFO L290 TraceCheckUtils]: 23: Hoare triple {866#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {866#false} is VALID [2022-04-27 13:02:53,990 INFO L290 TraceCheckUtils]: 24: Hoare triple {866#false} assume !(#t~post6 < 10);havoc #t~post6; {866#false} is VALID [2022-04-27 13:02:53,990 INFO L272 TraceCheckUtils]: 25: Hoare triple {866#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)); {866#false} is VALID [2022-04-27 13:02:53,990 INFO L290 TraceCheckUtils]: 26: Hoare triple {866#false} ~cond := #in~cond; {866#false} is VALID [2022-04-27 13:02:53,990 INFO L290 TraceCheckUtils]: 27: Hoare triple {866#false} assume 0 == ~cond; {866#false} is VALID [2022-04-27 13:02:53,990 INFO L290 TraceCheckUtils]: 28: Hoare triple {866#false} assume !false; {866#false} is VALID [2022-04-27 13:02:53,991 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 13:02:53,991 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:02:53,991 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:53,991 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [114439880] [2022-04-27 13:02:53,991 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:02:53,991 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [335536009] [2022-04-27 13:02:53,991 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [335536009] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:02:53,991 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:02:53,991 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 13:02:53,991 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [214598069] [2022-04-27 13:02:53,992 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:02:53,992 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), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 29 [2022-04-27 13:02:53,992 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:53,992 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), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:54,007 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:02:54,007 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:02:54,007 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:02:54,008 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:02:54,008 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-27 13:02:54,008 INFO L87 Difference]: Start difference. First operand 38 states and 48 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:54,103 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:54,104 INFO L93 Difference]: Finished difference Result 62 states and 82 transitions. [2022-04-27 13:02:54,104 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:02:54,104 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), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 29 [2022-04-27 13:02:54,104 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:02:54,104 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), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:54,106 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 82 transitions. [2022-04-27 13:02:54,106 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), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:54,107 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 82 transitions. [2022-04-27 13:02:54,107 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 82 transitions. [2022-04-27 13:02:54,162 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:02:54,163 INFO L225 Difference]: With dead ends: 62 [2022-04-27 13:02:54,163 INFO L226 Difference]: Without dead ends: 40 [2022-04-27 13:02:54,163 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-27 13:02:54,164 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 6 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 22 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 13:02:54,164 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [6 Valid, 139 Invalid, 22 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 13:02:54,165 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-04-27 13:02:54,179 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 40. [2022-04-27 13:02:54,179 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:02:54,179 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand has 40 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 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-27 13:02:54,179 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand has 40 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 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-27 13:02:54,179 INFO L87 Difference]: Start difference. First operand 40 states. Second operand has 40 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 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-27 13:02:54,181 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:54,181 INFO L93 Difference]: Finished difference Result 40 states and 50 transitions. [2022-04-27 13:02:54,181 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 50 transitions. [2022-04-27 13:02:54,181 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:54,181 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:54,182 INFO L74 IsIncluded]: Start isIncluded. First operand has 40 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 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 40 states. [2022-04-27 13:02:54,182 INFO L87 Difference]: Start difference. First operand has 40 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 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 40 states. [2022-04-27 13:02:54,183 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:54,183 INFO L93 Difference]: Finished difference Result 40 states and 50 transitions. [2022-04-27 13:02:54,183 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 50 transitions. [2022-04-27 13:02:54,184 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:54,184 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:54,184 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:02:54,184 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:02:54,184 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 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-27 13:02:54,185 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 50 transitions. [2022-04-27 13:02:54,185 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 50 transitions. Word has length 29 [2022-04-27 13:02:54,185 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:02:54,185 INFO L495 AbstractCegarLoop]: Abstraction has 40 states and 50 transitions. [2022-04-27 13:02:54,185 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), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:54,186 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 50 transitions. [2022-04-27 13:02:54,186 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-27 13:02:54,186 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:54,186 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, 1, 1, 1, 1, 1, 1] [2022-04-27 13:02:54,202 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-27 13:02:54,393 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-27 13:02:54,393 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:54,393 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:54,394 INFO L85 PathProgramCache]: Analyzing trace with hash 795698770, now seen corresponding path program 1 times [2022-04-27 13:02:54,394 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:54,394 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1506869908] [2022-04-27 13:02:54,394 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:54,394 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:54,439 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:02:54,439 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [224657718] [2022-04-27 13:02:54,439 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:54,439 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:54,439 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:54,454 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-27 13:02:54,455 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-27 13:02:54,489 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:54,490 INFO L263 TraceCheckSpWp]: Trace formula consists of 119 conjuncts, 18 conjunts are in the unsatisfiable core [2022-04-27 13:02:54,497 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:54,498 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:02:54,778 INFO L272 TraceCheckUtils]: 0: Hoare triple {1183#true} call ULTIMATE.init(); {1183#true} is VALID [2022-04-27 13:02:54,778 INFO L290 TraceCheckUtils]: 1: Hoare triple {1183#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);~counter~0 := 0; {1183#true} is VALID [2022-04-27 13:02:54,778 INFO L290 TraceCheckUtils]: 2: Hoare triple {1183#true} assume true; {1183#true} is VALID [2022-04-27 13:02:54,778 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1183#true} {1183#true} #108#return; {1183#true} is VALID [2022-04-27 13:02:54,779 INFO L272 TraceCheckUtils]: 4: Hoare triple {1183#true} call #t~ret9 := main(); {1183#true} is VALID [2022-04-27 13:02:54,779 INFO L290 TraceCheckUtils]: 5: Hoare triple {1183#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; {1183#true} is VALID [2022-04-27 13:02:54,781 INFO L272 TraceCheckUtils]: 6: Hoare triple {1183#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1183#true} is VALID [2022-04-27 13:02:54,781 INFO L290 TraceCheckUtils]: 7: Hoare triple {1183#true} ~cond := #in~cond; {1183#true} is VALID [2022-04-27 13:02:54,784 INFO L290 TraceCheckUtils]: 8: Hoare triple {1183#true} assume !(0 == ~cond); {1183#true} is VALID [2022-04-27 13:02:54,785 INFO L290 TraceCheckUtils]: 9: Hoare triple {1183#true} assume true; {1183#true} is VALID [2022-04-27 13:02:54,785 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1183#true} {1183#true} #94#return; {1183#true} is VALID [2022-04-27 13:02:54,786 INFO L272 TraceCheckUtils]: 11: Hoare triple {1183#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1183#true} is VALID [2022-04-27 13:02:54,787 INFO L290 TraceCheckUtils]: 12: Hoare triple {1183#true} ~cond := #in~cond; {1224#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:02:54,800 INFO L290 TraceCheckUtils]: 13: Hoare triple {1224#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1228#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:02:54,800 INFO L290 TraceCheckUtils]: 14: Hoare triple {1228#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1228#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:02:54,801 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1228#(not (= |assume_abort_if_not_#in~cond| 0))} {1183#true} #96#return; {1235#(<= 1 main_~y~0)} is VALID [2022-04-27 13:02:54,801 INFO L290 TraceCheckUtils]: 16: Hoare triple {1235#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1239#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:54,802 INFO L290 TraceCheckUtils]: 17: Hoare triple {1239#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1239#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:54,802 INFO L290 TraceCheckUtils]: 18: Hoare triple {1239#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {1239#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:54,803 INFO L290 TraceCheckUtils]: 19: Hoare triple {1239#(and (= main_~r~0 0) (<= main_~y~0 main_~b~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; {1249#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= main_~c~0 main_~a~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:54,803 INFO L290 TraceCheckUtils]: 20: Hoare triple {1249#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= main_~c~0 main_~a~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1249#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= main_~c~0 main_~a~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:54,804 INFO L290 TraceCheckUtils]: 21: Hoare triple {1249#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= main_~c~0 main_~a~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 10);havoc #t~post7; {1249#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= main_~c~0 main_~a~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:54,806 INFO L290 TraceCheckUtils]: 22: Hoare triple {1249#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= main_~c~0 main_~a~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; {1259#(and (= main_~r~0 0) (<= 1 main_~y~0) (<= main_~y~0 main_~a~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:54,807 INFO L290 TraceCheckUtils]: 23: Hoare triple {1259#(and (= main_~r~0 0) (<= 1 main_~y~0) (<= main_~y~0 main_~a~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {1259#(and (= main_~r~0 0) (<= 1 main_~y~0) (<= main_~y~0 main_~a~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:54,807 INFO L290 TraceCheckUtils]: 24: Hoare triple {1259#(and (= main_~r~0 0) (<= 1 main_~y~0) (<= main_~y~0 main_~a~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 10);havoc #t~post8; {1259#(and (= main_~r~0 0) (<= 1 main_~y~0) (<= main_~y~0 main_~a~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:54,808 INFO L272 TraceCheckUtils]: 25: Hoare triple {1259#(and (= main_~r~0 0) (<= 1 main_~y~0) (<= main_~y~0 main_~a~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)); {1269#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:02:54,808 INFO L290 TraceCheckUtils]: 26: Hoare triple {1269#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1273#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:02:54,809 INFO L290 TraceCheckUtils]: 27: Hoare triple {1273#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1184#false} is VALID [2022-04-27 13:02:54,809 INFO L290 TraceCheckUtils]: 28: Hoare triple {1184#false} assume !false; {1184#false} is VALID [2022-04-27 13:02:54,809 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 3 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-27 13:02:54,809 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:02:54,809 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:54,809 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1506869908] [2022-04-27 13:02:54,809 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:02:54,809 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [224657718] [2022-04-27 13:02:54,809 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [224657718] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:02:54,810 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:02:54,810 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-27 13:02:54,810 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [290057294] [2022-04-27 13:02:54,810 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:02:54,810 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.1) internal successors, (21), 8 states have internal predecessors, (21), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 29 [2022-04-27 13:02:54,810 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:54,811 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.1) internal successors, (21), 8 states have internal predecessors, (21), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:02:54,829 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 29 edges. 29 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:02:54,829 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 13:02:54,829 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:02:54,830 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 13:02:54,830 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-27 13:02:54,830 INFO L87 Difference]: Start difference. First operand 40 states and 50 transitions. Second operand has 10 states, 10 states have (on average 2.1) internal successors, (21), 8 states have internal predecessors, (21), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:02:55,400 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:55,401 INFO L93 Difference]: Finished difference Result 68 states and 92 transitions. [2022-04-27 13:02:55,401 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 13:02:55,401 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.1) internal successors, (21), 8 states have internal predecessors, (21), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 29 [2022-04-27 13:02:55,401 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:02:55,401 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.1) internal successors, (21), 8 states have internal predecessors, (21), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:02:55,403 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 92 transitions. [2022-04-27 13:02:55,403 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.1) internal successors, (21), 8 states have internal predecessors, (21), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:02:55,406 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 92 transitions. [2022-04-27 13:02:55,406 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 92 transitions. [2022-04-27 13:02:55,480 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 92 edges. 92 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:02:55,482 INFO L225 Difference]: With dead ends: 68 [2022-04-27 13:02:55,482 INFO L226 Difference]: Without dead ends: 66 [2022-04-27 13:02:55,483 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=41, Invalid=141, Unknown=0, NotChecked=0, Total=182 [2022-04-27 13:02:55,484 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 67 mSDsluCounter, 197 mSDsCounter, 0 mSdLazyCounter, 179 mSolverCounterSat, 24 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 71 SdHoareTripleChecker+Valid, 237 SdHoareTripleChecker+Invalid, 203 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 24 IncrementalHoareTripleChecker+Valid, 179 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 13:02:55,484 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [71 Valid, 237 Invalid, 203 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [24 Valid, 179 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 13:02:55,487 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2022-04-27 13:02:55,522 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 55. [2022-04-27 13:02:55,522 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:02:55,522 INFO L82 GeneralOperation]: Start isEquivalent. First operand 66 states. Second operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 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-27 13:02:55,523 INFO L74 IsIncluded]: Start isIncluded. First operand 66 states. Second operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 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-27 13:02:55,524 INFO L87 Difference]: Start difference. First operand 66 states. Second operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 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-27 13:02:55,526 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:55,527 INFO L93 Difference]: Finished difference Result 66 states and 90 transitions. [2022-04-27 13:02:55,527 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 90 transitions. [2022-04-27 13:02:55,527 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:55,527 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:55,527 INFO L74 IsIncluded]: Start isIncluded. First operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 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 66 states. [2022-04-27 13:02:55,527 INFO L87 Difference]: Start difference. First operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 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 66 states. [2022-04-27 13:02:55,530 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:55,530 INFO L93 Difference]: Finished difference Result 66 states and 90 transitions. [2022-04-27 13:02:55,530 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 90 transitions. [2022-04-27 13:02:55,531 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:55,531 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:55,531 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:02:55,531 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:02:55,531 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 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-27 13:02:55,533 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 72 transitions. [2022-04-27 13:02:55,533 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 72 transitions. Word has length 29 [2022-04-27 13:02:55,534 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:02:55,534 INFO L495 AbstractCegarLoop]: Abstraction has 55 states and 72 transitions. [2022-04-27 13:02:55,535 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.1) internal successors, (21), 8 states have internal predecessors, (21), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:02:55,535 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 72 transitions. [2022-04-27 13:02:55,535 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-04-27 13:02:55,535 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:55,535 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, 1, 1] [2022-04-27 13:02:55,566 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-27 13:02:55,751 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-27 13:02:55,752 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:55,752 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:55,752 INFO L85 PathProgramCache]: Analyzing trace with hash 979890972, now seen corresponding path program 1 times [2022-04-27 13:02:55,752 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:55,752 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [787692634] [2022-04-27 13:02:55,752 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:55,753 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:55,768 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:02:55,768 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2099258554] [2022-04-27 13:02:55,768 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:55,768 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:55,768 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:55,769 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-27 13:02:55,770 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-27 13:02:55,807 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:55,808 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 13:02:55,815 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:55,816 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:02:55,953 INFO L272 TraceCheckUtils]: 0: Hoare triple {1597#true} call ULTIMATE.init(); {1597#true} is VALID [2022-04-27 13:02:55,953 INFO L290 TraceCheckUtils]: 1: Hoare triple {1597#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);~counter~0 := 0; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:55,954 INFO L290 TraceCheckUtils]: 2: Hoare triple {1605#(<= ~counter~0 0)} assume true; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:55,954 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1605#(<= ~counter~0 0)} {1597#true} #108#return; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:55,956 INFO L272 TraceCheckUtils]: 4: Hoare triple {1605#(<= ~counter~0 0)} call #t~ret9 := main(); {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:55,956 INFO L290 TraceCheckUtils]: 5: Hoare triple {1605#(<= ~counter~0 0)} 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; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:55,957 INFO L272 TraceCheckUtils]: 6: Hoare triple {1605#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:55,957 INFO L290 TraceCheckUtils]: 7: Hoare triple {1605#(<= ~counter~0 0)} ~cond := #in~cond; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:55,957 INFO L290 TraceCheckUtils]: 8: Hoare triple {1605#(<= ~counter~0 0)} assume !(0 == ~cond); {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:55,958 INFO L290 TraceCheckUtils]: 9: Hoare triple {1605#(<= ~counter~0 0)} assume true; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:55,958 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1605#(<= ~counter~0 0)} {1605#(<= ~counter~0 0)} #94#return; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:55,958 INFO L272 TraceCheckUtils]: 11: Hoare triple {1605#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:55,959 INFO L290 TraceCheckUtils]: 12: Hoare triple {1605#(<= ~counter~0 0)} ~cond := #in~cond; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:55,959 INFO L290 TraceCheckUtils]: 13: Hoare triple {1605#(<= ~counter~0 0)} assume !(0 == ~cond); {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:55,959 INFO L290 TraceCheckUtils]: 14: Hoare triple {1605#(<= ~counter~0 0)} assume true; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:55,960 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1605#(<= ~counter~0 0)} {1605#(<= ~counter~0 0)} #96#return; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:55,960 INFO L290 TraceCheckUtils]: 16: Hoare triple {1605#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:55,960 INFO L290 TraceCheckUtils]: 17: Hoare triple {1605#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1654#(<= ~counter~0 1)} is VALID [2022-04-27 13:02:55,962 INFO L290 TraceCheckUtils]: 18: Hoare triple {1654#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {1654#(<= ~counter~0 1)} is VALID [2022-04-27 13:02:55,962 INFO L290 TraceCheckUtils]: 19: Hoare triple {1654#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1654#(<= ~counter~0 1)} is VALID [2022-04-27 13:02:55,963 INFO L290 TraceCheckUtils]: 20: Hoare triple {1654#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1664#(<= ~counter~0 2)} is VALID [2022-04-27 13:02:55,963 INFO L290 TraceCheckUtils]: 21: Hoare triple {1664#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {1664#(<= ~counter~0 2)} is VALID [2022-04-27 13:02:55,963 INFO L290 TraceCheckUtils]: 22: Hoare triple {1664#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {1664#(<= ~counter~0 2)} is VALID [2022-04-27 13:02:55,964 INFO L290 TraceCheckUtils]: 23: Hoare triple {1664#(<= ~counter~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; {1664#(<= ~counter~0 2)} is VALID [2022-04-27 13:02:55,964 INFO L290 TraceCheckUtils]: 24: Hoare triple {1664#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1677#(<= |main_#t~post6| 2)} is VALID [2022-04-27 13:02:55,964 INFO L290 TraceCheckUtils]: 25: Hoare triple {1677#(<= |main_#t~post6| 2)} assume !(#t~post6 < 10);havoc #t~post6; {1598#false} is VALID [2022-04-27 13:02:55,964 INFO L272 TraceCheckUtils]: 26: Hoare triple {1598#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)); {1598#false} is VALID [2022-04-27 13:02:55,965 INFO L290 TraceCheckUtils]: 27: Hoare triple {1598#false} ~cond := #in~cond; {1598#false} is VALID [2022-04-27 13:02:55,965 INFO L290 TraceCheckUtils]: 28: Hoare triple {1598#false} assume 0 == ~cond; {1598#false} is VALID [2022-04-27 13:02:55,965 INFO L290 TraceCheckUtils]: 29: Hoare triple {1598#false} assume !false; {1598#false} is VALID [2022-04-27 13:02:55,965 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 13:02:55,965 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:02:56,114 INFO L290 TraceCheckUtils]: 29: Hoare triple {1598#false} assume !false; {1598#false} is VALID [2022-04-27 13:02:56,114 INFO L290 TraceCheckUtils]: 28: Hoare triple {1598#false} assume 0 == ~cond; {1598#false} is VALID [2022-04-27 13:02:56,115 INFO L290 TraceCheckUtils]: 27: Hoare triple {1598#false} ~cond := #in~cond; {1598#false} is VALID [2022-04-27 13:02:56,115 INFO L272 TraceCheckUtils]: 26: Hoare triple {1598#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)); {1598#false} is VALID [2022-04-27 13:02:56,115 INFO L290 TraceCheckUtils]: 25: Hoare triple {1705#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {1598#false} is VALID [2022-04-27 13:02:56,115 INFO L290 TraceCheckUtils]: 24: Hoare triple {1709#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1705#(< |main_#t~post6| 10)} is VALID [2022-04-27 13:02:56,116 INFO L290 TraceCheckUtils]: 23: Hoare triple {1709#(< ~counter~0 10)} ~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; {1709#(< ~counter~0 10)} is VALID [2022-04-27 13:02:56,116 INFO L290 TraceCheckUtils]: 22: Hoare triple {1709#(< ~counter~0 10)} assume !(~c~0 >= ~b~0); {1709#(< ~counter~0 10)} is VALID [2022-04-27 13:02:56,116 INFO L290 TraceCheckUtils]: 21: Hoare triple {1709#(< ~counter~0 10)} assume !!(#t~post7 < 10);havoc #t~post7; {1709#(< ~counter~0 10)} is VALID [2022-04-27 13:02:56,117 INFO L290 TraceCheckUtils]: 20: Hoare triple {1722#(< ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1709#(< ~counter~0 10)} is VALID [2022-04-27 13:02:56,117 INFO L290 TraceCheckUtils]: 19: Hoare triple {1722#(< ~counter~0 9)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1722#(< ~counter~0 9)} is VALID [2022-04-27 13:02:56,117 INFO L290 TraceCheckUtils]: 18: Hoare triple {1722#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {1722#(< ~counter~0 9)} is VALID [2022-04-27 13:02:56,118 INFO L290 TraceCheckUtils]: 17: Hoare triple {1732#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1722#(< ~counter~0 9)} is VALID [2022-04-27 13:02:56,118 INFO L290 TraceCheckUtils]: 16: Hoare triple {1732#(< ~counter~0 8)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1732#(< ~counter~0 8)} is VALID [2022-04-27 13:02:56,119 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1597#true} {1732#(< ~counter~0 8)} #96#return; {1732#(< ~counter~0 8)} is VALID [2022-04-27 13:02:56,119 INFO L290 TraceCheckUtils]: 14: Hoare triple {1597#true} assume true; {1597#true} is VALID [2022-04-27 13:02:56,119 INFO L290 TraceCheckUtils]: 13: Hoare triple {1597#true} assume !(0 == ~cond); {1597#true} is VALID [2022-04-27 13:02:56,119 INFO L290 TraceCheckUtils]: 12: Hoare triple {1597#true} ~cond := #in~cond; {1597#true} is VALID [2022-04-27 13:02:56,119 INFO L272 TraceCheckUtils]: 11: Hoare triple {1732#(< ~counter~0 8)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1597#true} is VALID [2022-04-27 13:02:56,120 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1597#true} {1732#(< ~counter~0 8)} #94#return; {1732#(< ~counter~0 8)} is VALID [2022-04-27 13:02:56,120 INFO L290 TraceCheckUtils]: 9: Hoare triple {1597#true} assume true; {1597#true} is VALID [2022-04-27 13:02:56,120 INFO L290 TraceCheckUtils]: 8: Hoare triple {1597#true} assume !(0 == ~cond); {1597#true} is VALID [2022-04-27 13:02:56,120 INFO L290 TraceCheckUtils]: 7: Hoare triple {1597#true} ~cond := #in~cond; {1597#true} is VALID [2022-04-27 13:02:56,120 INFO L272 TraceCheckUtils]: 6: Hoare triple {1732#(< ~counter~0 8)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1597#true} is VALID [2022-04-27 13:02:56,120 INFO L290 TraceCheckUtils]: 5: Hoare triple {1732#(< ~counter~0 8)} 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; {1732#(< ~counter~0 8)} is VALID [2022-04-27 13:02:56,121 INFO L272 TraceCheckUtils]: 4: Hoare triple {1732#(< ~counter~0 8)} call #t~ret9 := main(); {1732#(< ~counter~0 8)} is VALID [2022-04-27 13:02:56,121 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1732#(< ~counter~0 8)} {1597#true} #108#return; {1732#(< ~counter~0 8)} is VALID [2022-04-27 13:02:56,121 INFO L290 TraceCheckUtils]: 2: Hoare triple {1732#(< ~counter~0 8)} assume true; {1732#(< ~counter~0 8)} is VALID [2022-04-27 13:02:56,122 INFO L290 TraceCheckUtils]: 1: Hoare triple {1597#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);~counter~0 := 0; {1732#(< ~counter~0 8)} is VALID [2022-04-27 13:02:56,122 INFO L272 TraceCheckUtils]: 0: Hoare triple {1597#true} call ULTIMATE.init(); {1597#true} is VALID [2022-04-27 13:02:56,122 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 13:02:56,122 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:56,122 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [787692634] [2022-04-27 13:02:56,122 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:02:56,122 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2099258554] [2022-04-27 13:02:56,122 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2099258554] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:02:56,122 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:02:56,122 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-27 13:02:56,123 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1409772518] [2022-04-27 13:02:56,123 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:02:56,123 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.5) internal successors, (35), 10 states have internal predecessors, (35), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 30 [2022-04-27 13:02:56,123 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:56,123 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 3.5) internal successors, (35), 10 states have internal predecessors, (35), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:02:56,150 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-27 13:02:56,150 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 13:02:56,150 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:02:56,150 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 13:02:56,151 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-27 13:02:56,151 INFO L87 Difference]: Start difference. First operand 55 states and 72 transitions. Second operand has 10 states, 10 states have (on average 3.5) internal successors, (35), 10 states have internal predecessors, (35), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:02:56,585 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:56,586 INFO L93 Difference]: Finished difference Result 151 states and 197 transitions. [2022-04-27 13:02:56,586 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-27 13:02:56,586 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.5) internal successors, (35), 10 states have internal predecessors, (35), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 30 [2022-04-27 13:02:56,586 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:02:56,586 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.5) internal successors, (35), 10 states have internal predecessors, (35), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:02:56,588 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 145 transitions. [2022-04-27 13:02:56,588 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.5) internal successors, (35), 10 states have internal predecessors, (35), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:02:56,590 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 145 transitions. [2022-04-27 13:02:56,590 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 145 transitions. [2022-04-27 13:02:56,680 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 145 edges. 145 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:02:56,706 INFO L225 Difference]: With dead ends: 151 [2022-04-27 13:02:56,707 INFO L226 Difference]: Without dead ends: 144 [2022-04-27 13:02:56,707 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 62 GetRequests, 51 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=56, Invalid=100, Unknown=0, NotChecked=0, Total=156 [2022-04-27 13:02:56,707 INFO L413 NwaCegarLoop]: 53 mSDtfsCounter, 132 mSDsluCounter, 204 mSDsCounter, 0 mSdLazyCounter, 77 mSolverCounterSat, 72 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 132 SdHoareTripleChecker+Valid, 257 SdHoareTripleChecker+Invalid, 149 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 72 IncrementalHoareTripleChecker+Valid, 77 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 13:02:56,708 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [132 Valid, 257 Invalid, 149 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [72 Valid, 77 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 13:02:56,708 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 144 states. [2022-04-27 13:02:56,777 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 144 to 101. [2022-04-27 13:02:56,777 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:02:56,777 INFO L82 GeneralOperation]: Start isEquivalent. First operand 144 states. Second operand has 101 states, 70 states have (on average 1.3285714285714285) internal successors, (93), 72 states have internal predecessors, (93), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-27 13:02:56,777 INFO L74 IsIncluded]: Start isIncluded. First operand 144 states. Second operand has 101 states, 70 states have (on average 1.3285714285714285) internal successors, (93), 72 states have internal predecessors, (93), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-27 13:02:56,778 INFO L87 Difference]: Start difference. First operand 144 states. Second operand has 101 states, 70 states have (on average 1.3285714285714285) internal successors, (93), 72 states have internal predecessors, (93), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-27 13:02:56,781 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:56,781 INFO L93 Difference]: Finished difference Result 144 states and 188 transitions. [2022-04-27 13:02:56,781 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 188 transitions. [2022-04-27 13:02:56,782 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:56,782 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:56,782 INFO L74 IsIncluded]: Start isIncluded. First operand has 101 states, 70 states have (on average 1.3285714285714285) internal successors, (93), 72 states have internal predecessors, (93), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand 144 states. [2022-04-27 13:02:56,782 INFO L87 Difference]: Start difference. First operand has 101 states, 70 states have (on average 1.3285714285714285) internal successors, (93), 72 states have internal predecessors, (93), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand 144 states. [2022-04-27 13:02:56,786 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:56,786 INFO L93 Difference]: Finished difference Result 144 states and 188 transitions. [2022-04-27 13:02:56,786 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 188 transitions. [2022-04-27 13:02:56,786 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:56,787 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:56,787 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:02:56,787 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:02:56,787 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 101 states, 70 states have (on average 1.3285714285714285) internal successors, (93), 72 states have internal predecessors, (93), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-27 13:02:56,789 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 134 transitions. [2022-04-27 13:02:56,789 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 134 transitions. Word has length 30 [2022-04-27 13:02:56,789 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:02:56,789 INFO L495 AbstractCegarLoop]: Abstraction has 101 states and 134 transitions. [2022-04-27 13:02:56,790 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 3.5) internal successors, (35), 10 states have internal predecessors, (35), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:02:56,790 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 134 transitions. [2022-04-27 13:02:56,790 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-27 13:02:56,790 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:56,790 INFO L195 NwaCegarLoop]: trace histogram [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-27 13:02:56,825 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-27 13:02:57,006 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-27 13:02:57,006 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:57,007 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:57,007 INFO L85 PathProgramCache]: Analyzing trace with hash 296831538, now seen corresponding path program 1 times [2022-04-27 13:02:57,007 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:57,007 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1321599762] [2022-04-27 13:02:57,007 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:57,007 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:57,018 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:02:57,018 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [484944086] [2022-04-27 13:02:57,019 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:57,019 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:57,019 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:57,019 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-27 13:02:57,034 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-27 13:02:57,070 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:57,070 INFO L263 TraceCheckSpWp]: Trace formula consists of 131 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 13:02:57,078 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:57,078 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:02:57,193 INFO L272 TraceCheckUtils]: 0: Hoare triple {2441#true} call ULTIMATE.init(); {2441#true} is VALID [2022-04-27 13:02:57,193 INFO L290 TraceCheckUtils]: 1: Hoare triple {2441#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);~counter~0 := 0; {2441#true} is VALID [2022-04-27 13:02:57,193 INFO L290 TraceCheckUtils]: 2: Hoare triple {2441#true} assume true; {2441#true} is VALID [2022-04-27 13:02:57,193 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2441#true} {2441#true} #108#return; {2441#true} is VALID [2022-04-27 13:02:57,193 INFO L272 TraceCheckUtils]: 4: Hoare triple {2441#true} call #t~ret9 := main(); {2441#true} is VALID [2022-04-27 13:02:57,193 INFO L290 TraceCheckUtils]: 5: Hoare triple {2441#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; {2441#true} is VALID [2022-04-27 13:02:57,194 INFO L272 TraceCheckUtils]: 6: Hoare triple {2441#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2441#true} is VALID [2022-04-27 13:02:57,194 INFO L290 TraceCheckUtils]: 7: Hoare triple {2441#true} ~cond := #in~cond; {2467#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:02:57,194 INFO L290 TraceCheckUtils]: 8: Hoare triple {2467#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2471#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:02:57,195 INFO L290 TraceCheckUtils]: 9: Hoare triple {2471#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2471#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:02:57,195 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2471#(not (= |assume_abort_if_not_#in~cond| 0))} {2441#true} #94#return; {2478#(<= 1 main_~x~0)} is VALID [2022-04-27 13:02:57,195 INFO L272 TraceCheckUtils]: 11: Hoare triple {2478#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2441#true} is VALID [2022-04-27 13:02:57,195 INFO L290 TraceCheckUtils]: 12: Hoare triple {2441#true} ~cond := #in~cond; {2441#true} is VALID [2022-04-27 13:02:57,195 INFO L290 TraceCheckUtils]: 13: Hoare triple {2441#true} assume !(0 == ~cond); {2441#true} is VALID [2022-04-27 13:02:57,195 INFO L290 TraceCheckUtils]: 14: Hoare triple {2441#true} assume true; {2441#true} is VALID [2022-04-27 13:02:57,196 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2441#true} {2478#(<= 1 main_~x~0)} #96#return; {2478#(<= 1 main_~x~0)} is VALID [2022-04-27 13:02:57,196 INFO L290 TraceCheckUtils]: 16: Hoare triple {2478#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2497#(<= 1 main_~a~0)} is VALID [2022-04-27 13:02:57,197 INFO L290 TraceCheckUtils]: 17: Hoare triple {2497#(<= 1 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2497#(<= 1 main_~a~0)} is VALID [2022-04-27 13:02:57,197 INFO L290 TraceCheckUtils]: 18: Hoare triple {2497#(<= 1 main_~a~0)} assume !!(#t~post6 < 10);havoc #t~post6; {2497#(<= 1 main_~a~0)} is VALID [2022-04-27 13:02:57,197 INFO L290 TraceCheckUtils]: 19: Hoare triple {2497#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2507#(<= 1 main_~c~0)} is VALID [2022-04-27 13:02:57,198 INFO L290 TraceCheckUtils]: 20: Hoare triple {2507#(<= 1 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2507#(<= 1 main_~c~0)} is VALID [2022-04-27 13:02:57,198 INFO L290 TraceCheckUtils]: 21: Hoare triple {2507#(<= 1 main_~c~0)} assume !!(#t~post7 < 10);havoc #t~post7; {2507#(<= 1 main_~c~0)} is VALID [2022-04-27 13:02:57,198 INFO L290 TraceCheckUtils]: 22: Hoare triple {2507#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {2507#(<= 1 main_~c~0)} is VALID [2022-04-27 13:02:57,199 INFO L290 TraceCheckUtils]: 23: Hoare triple {2507#(<= 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; {2520#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:57,199 INFO L290 TraceCheckUtils]: 24: Hoare triple {2520#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2520#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:57,199 INFO L290 TraceCheckUtils]: 25: Hoare triple {2520#(<= 1 main_~b~0)} assume !!(#t~post6 < 10);havoc #t~post6; {2520#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:57,200 INFO L290 TraceCheckUtils]: 26: Hoare triple {2520#(<= 1 main_~b~0)} assume !(0 != ~b~0); {2442#false} is VALID [2022-04-27 13:02:57,200 INFO L272 TraceCheckUtils]: 27: Hoare triple {2442#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)); {2442#false} is VALID [2022-04-27 13:02:57,200 INFO L290 TraceCheckUtils]: 28: Hoare triple {2442#false} ~cond := #in~cond; {2442#false} is VALID [2022-04-27 13:02:57,200 INFO L290 TraceCheckUtils]: 29: Hoare triple {2442#false} assume 0 == ~cond; {2442#false} is VALID [2022-04-27 13:02:57,200 INFO L290 TraceCheckUtils]: 30: Hoare triple {2442#false} assume !false; {2442#false} is VALID [2022-04-27 13:02:57,200 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-27 13:02:57,200 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:02:57,378 INFO L290 TraceCheckUtils]: 30: Hoare triple {2442#false} assume !false; {2442#false} is VALID [2022-04-27 13:02:57,379 INFO L290 TraceCheckUtils]: 29: Hoare triple {2442#false} assume 0 == ~cond; {2442#false} is VALID [2022-04-27 13:02:57,379 INFO L290 TraceCheckUtils]: 28: Hoare triple {2442#false} ~cond := #in~cond; {2442#false} is VALID [2022-04-27 13:02:57,379 INFO L272 TraceCheckUtils]: 27: Hoare triple {2442#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)); {2442#false} is VALID [2022-04-27 13:02:57,379 INFO L290 TraceCheckUtils]: 26: Hoare triple {2520#(<= 1 main_~b~0)} assume !(0 != ~b~0); {2442#false} is VALID [2022-04-27 13:02:57,379 INFO L290 TraceCheckUtils]: 25: Hoare triple {2520#(<= 1 main_~b~0)} assume !!(#t~post6 < 10);havoc #t~post6; {2520#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:57,380 INFO L290 TraceCheckUtils]: 24: Hoare triple {2520#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2520#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:57,380 INFO L290 TraceCheckUtils]: 23: Hoare triple {2507#(<= 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; {2520#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:57,381 INFO L290 TraceCheckUtils]: 22: Hoare triple {2507#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {2507#(<= 1 main_~c~0)} is VALID [2022-04-27 13:02:57,381 INFO L290 TraceCheckUtils]: 21: Hoare triple {2507#(<= 1 main_~c~0)} assume !!(#t~post7 < 10);havoc #t~post7; {2507#(<= 1 main_~c~0)} is VALID [2022-04-27 13:02:57,381 INFO L290 TraceCheckUtils]: 20: Hoare triple {2507#(<= 1 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2507#(<= 1 main_~c~0)} is VALID [2022-04-27 13:02:57,381 INFO L290 TraceCheckUtils]: 19: Hoare triple {2497#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2507#(<= 1 main_~c~0)} is VALID [2022-04-27 13:02:57,382 INFO L290 TraceCheckUtils]: 18: Hoare triple {2497#(<= 1 main_~a~0)} assume !!(#t~post6 < 10);havoc #t~post6; {2497#(<= 1 main_~a~0)} is VALID [2022-04-27 13:02:57,382 INFO L290 TraceCheckUtils]: 17: Hoare triple {2497#(<= 1 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2497#(<= 1 main_~a~0)} is VALID [2022-04-27 13:02:57,382 INFO L290 TraceCheckUtils]: 16: Hoare triple {2478#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2497#(<= 1 main_~a~0)} is VALID [2022-04-27 13:02:57,383 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2441#true} {2478#(<= 1 main_~x~0)} #96#return; {2478#(<= 1 main_~x~0)} is VALID [2022-04-27 13:02:57,383 INFO L290 TraceCheckUtils]: 14: Hoare triple {2441#true} assume true; {2441#true} is VALID [2022-04-27 13:02:57,383 INFO L290 TraceCheckUtils]: 13: Hoare triple {2441#true} assume !(0 == ~cond); {2441#true} is VALID [2022-04-27 13:02:57,383 INFO L290 TraceCheckUtils]: 12: Hoare triple {2441#true} ~cond := #in~cond; {2441#true} is VALID [2022-04-27 13:02:57,383 INFO L272 TraceCheckUtils]: 11: Hoare triple {2478#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2441#true} is VALID [2022-04-27 13:02:57,384 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2471#(not (= |assume_abort_if_not_#in~cond| 0))} {2441#true} #94#return; {2478#(<= 1 main_~x~0)} is VALID [2022-04-27 13:02:57,384 INFO L290 TraceCheckUtils]: 9: Hoare triple {2471#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2471#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:02:57,384 INFO L290 TraceCheckUtils]: 8: Hoare triple {2611#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {2471#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:02:57,385 INFO L290 TraceCheckUtils]: 7: Hoare triple {2441#true} ~cond := #in~cond; {2611#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-27 13:02:57,385 INFO L272 TraceCheckUtils]: 6: Hoare triple {2441#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2441#true} is VALID [2022-04-27 13:02:57,385 INFO L290 TraceCheckUtils]: 5: Hoare triple {2441#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; {2441#true} is VALID [2022-04-27 13:02:57,385 INFO L272 TraceCheckUtils]: 4: Hoare triple {2441#true} call #t~ret9 := main(); {2441#true} is VALID [2022-04-27 13:02:57,385 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2441#true} {2441#true} #108#return; {2441#true} is VALID [2022-04-27 13:02:57,385 INFO L290 TraceCheckUtils]: 2: Hoare triple {2441#true} assume true; {2441#true} is VALID [2022-04-27 13:02:57,385 INFO L290 TraceCheckUtils]: 1: Hoare triple {2441#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);~counter~0 := 0; {2441#true} is VALID [2022-04-27 13:02:57,385 INFO L272 TraceCheckUtils]: 0: Hoare triple {2441#true} call ULTIMATE.init(); {2441#true} is VALID [2022-04-27 13:02:57,385 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-27 13:02:57,386 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:57,386 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1321599762] [2022-04-27 13:02:57,386 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:02:57,386 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [484944086] [2022-04-27 13:02:57,386 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [484944086] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:02:57,386 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:02:57,386 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-27 13:02:57,386 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [842205878] [2022-04-27 13:02:57,386 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:02:57,386 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 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-27 13:02:57,387 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:57,387 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 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-27 13:02:57,404 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-27 13:02:57,404 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 13:02:57,404 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:02:57,405 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 13:02:57,405 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-27 13:02:57,405 INFO L87 Difference]: Start difference. First operand 101 states and 134 transitions. Second operand has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 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-27 13:02:58,317 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:58,317 INFO L93 Difference]: Finished difference Result 187 states and 265 transitions. [2022-04-27 13:02:58,317 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 13:02:58,317 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 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-27 13:02:58,318 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:02:58,318 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 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-27 13:02:58,320 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 155 transitions. [2022-04-27 13:02:58,321 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 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-27 13:02:58,324 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 155 transitions. [2022-04-27 13:02:58,324 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 155 transitions. [2022-04-27 13:02:58,436 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 155 edges. 155 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:02:58,440 INFO L225 Difference]: With dead ends: 187 [2022-04-27 13:02:58,440 INFO L226 Difference]: Without dead ends: 175 [2022-04-27 13:02:58,441 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 68 GetRequests, 53 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 17 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=60, Invalid=180, Unknown=0, NotChecked=0, Total=240 [2022-04-27 13:02:58,441 INFO L413 NwaCegarLoop]: 65 mSDtfsCounter, 113 mSDsluCounter, 293 mSDsCounter, 0 mSdLazyCounter, 182 mSolverCounterSat, 63 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 117 SdHoareTripleChecker+Valid, 358 SdHoareTripleChecker+Invalid, 245 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 63 IncrementalHoareTripleChecker+Valid, 182 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 13:02:58,442 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [117 Valid, 358 Invalid, 245 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [63 Valid, 182 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 13:02:58,443 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 175 states. [2022-04-27 13:02:58,566 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 175 to 132. [2022-04-27 13:02:58,566 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:02:58,567 INFO L82 GeneralOperation]: Start isEquivalent. First operand 175 states. Second operand has 132 states, 98 states have (on average 1.346938775510204) internal successors, (132), 99 states have internal predecessors, (132), 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-27 13:02:58,567 INFO L74 IsIncluded]: Start isIncluded. First operand 175 states. Second operand has 132 states, 98 states have (on average 1.346938775510204) internal successors, (132), 99 states have internal predecessors, (132), 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-27 13:02:58,567 INFO L87 Difference]: Start difference. First operand 175 states. Second operand has 132 states, 98 states have (on average 1.346938775510204) internal successors, (132), 99 states have internal predecessors, (132), 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-27 13:02:58,574 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:58,574 INFO L93 Difference]: Finished difference Result 175 states and 251 transitions. [2022-04-27 13:02:58,574 INFO L276 IsEmpty]: Start isEmpty. Operand 175 states and 251 transitions. [2022-04-27 13:02:58,576 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:58,576 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:58,577 INFO L74 IsIncluded]: Start isIncluded. First operand has 132 states, 98 states have (on average 1.346938775510204) internal successors, (132), 99 states have internal predecessors, (132), 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 175 states. [2022-04-27 13:02:58,577 INFO L87 Difference]: Start difference. First operand has 132 states, 98 states have (on average 1.346938775510204) internal successors, (132), 99 states have internal predecessors, (132), 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 175 states. [2022-04-27 13:02:58,583 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:58,583 INFO L93 Difference]: Finished difference Result 175 states and 251 transitions. [2022-04-27 13:02:58,584 INFO L276 IsEmpty]: Start isEmpty. Operand 175 states and 251 transitions. [2022-04-27 13:02:58,584 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:58,584 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:58,584 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:02:58,584 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:02:58,585 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 132 states, 98 states have (on average 1.346938775510204) internal successors, (132), 99 states have internal predecessors, (132), 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-27 13:02:58,588 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 132 states to 132 states and 180 transitions. [2022-04-27 13:02:58,588 INFO L78 Accepts]: Start accepts. Automaton has 132 states and 180 transitions. Word has length 31 [2022-04-27 13:02:58,588 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:02:58,589 INFO L495 AbstractCegarLoop]: Abstraction has 132 states and 180 transitions. [2022-04-27 13:02:58,589 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 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-27 13:02:58,589 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 180 transitions. [2022-04-27 13:02:58,589 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-27 13:02:58,589 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:58,589 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, 1, 1, 1, 1, 1, 1] [2022-04-27 13:02:58,609 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2022-04-27 13:02:58,809 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-27 13:02:58,810 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:58,810 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:58,810 INFO L85 PathProgramCache]: Analyzing trace with hash 495607521, now seen corresponding path program 1 times [2022-04-27 13:02:58,810 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:58,810 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1883429897] [2022-04-27 13:02:58,811 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:58,811 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:58,827 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:02:58,828 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [601183731] [2022-04-27 13:02:58,828 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:58,828 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:58,828 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:58,829 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-27 13:02:58,830 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-27 13:02:58,863 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:58,864 INFO L263 TraceCheckSpWp]: Trace formula consists of 128 conjuncts, 18 conjunts are in the unsatisfiable core [2022-04-27 13:02:58,877 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:58,877 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:02:59,146 INFO L272 TraceCheckUtils]: 0: Hoare triple {3457#true} call ULTIMATE.init(); {3457#true} is VALID [2022-04-27 13:02:59,147 INFO L290 TraceCheckUtils]: 1: Hoare triple {3457#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);~counter~0 := 0; {3457#true} is VALID [2022-04-27 13:02:59,147 INFO L290 TraceCheckUtils]: 2: Hoare triple {3457#true} assume true; {3457#true} is VALID [2022-04-27 13:02:59,147 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3457#true} {3457#true} #108#return; {3457#true} is VALID [2022-04-27 13:02:59,147 INFO L272 TraceCheckUtils]: 4: Hoare triple {3457#true} call #t~ret9 := main(); {3457#true} is VALID [2022-04-27 13:02:59,147 INFO L290 TraceCheckUtils]: 5: Hoare triple {3457#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; {3457#true} is VALID [2022-04-27 13:02:59,147 INFO L272 TraceCheckUtils]: 6: Hoare triple {3457#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3457#true} is VALID [2022-04-27 13:02:59,147 INFO L290 TraceCheckUtils]: 7: Hoare triple {3457#true} ~cond := #in~cond; {3457#true} is VALID [2022-04-27 13:02:59,147 INFO L290 TraceCheckUtils]: 8: Hoare triple {3457#true} assume !(0 == ~cond); {3457#true} is VALID [2022-04-27 13:02:59,147 INFO L290 TraceCheckUtils]: 9: Hoare triple {3457#true} assume true; {3457#true} is VALID [2022-04-27 13:02:59,147 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3457#true} {3457#true} #94#return; {3457#true} is VALID [2022-04-27 13:02:59,147 INFO L272 TraceCheckUtils]: 11: Hoare triple {3457#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3457#true} is VALID [2022-04-27 13:02:59,148 INFO L290 TraceCheckUtils]: 12: Hoare triple {3457#true} ~cond := #in~cond; {3498#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:02:59,148 INFO L290 TraceCheckUtils]: 13: Hoare triple {3498#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3502#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:02:59,148 INFO L290 TraceCheckUtils]: 14: Hoare triple {3502#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3502#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:02:59,149 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3502#(not (= |assume_abort_if_not_#in~cond| 0))} {3457#true} #96#return; {3509#(<= 1 main_~y~0)} is VALID [2022-04-27 13:02:59,149 INFO L290 TraceCheckUtils]: 16: Hoare triple {3509#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3513#(and (= main_~s~0 1) (<= main_~a~0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 13:02:59,149 INFO L290 TraceCheckUtils]: 17: Hoare triple {3513#(and (= main_~s~0 1) (<= main_~a~0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3513#(and (= main_~s~0 1) (<= main_~a~0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 13:02:59,150 INFO L290 TraceCheckUtils]: 18: Hoare triple {3513#(and (= main_~s~0 1) (<= main_~a~0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(#t~post6 < 10);havoc #t~post6; {3513#(and (= main_~s~0 1) (<= main_~a~0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 13:02:59,150 INFO L290 TraceCheckUtils]: 19: Hoare triple {3513#(and (= main_~s~0 1) (<= main_~a~0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3523#(and (<= main_~c~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 13:02:59,150 INFO L290 TraceCheckUtils]: 20: Hoare triple {3523#(and (<= main_~c~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3523#(and (<= main_~c~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 13:02:59,151 INFO L290 TraceCheckUtils]: 21: Hoare triple {3523#(and (<= main_~c~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(#t~post7 < 10);havoc #t~post7; {3523#(and (<= main_~c~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 13:02:59,151 INFO L290 TraceCheckUtils]: 22: Hoare triple {3523#(and (<= main_~c~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {3533#(and (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 13:02:59,152 INFO L290 TraceCheckUtils]: 23: Hoare triple {3533#(and (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {3533#(and (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 13:02:59,152 INFO L290 TraceCheckUtils]: 24: Hoare triple {3533#(and (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(#t~post8 < 10);havoc #t~post8; {3533#(and (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 13:02:59,152 INFO L272 TraceCheckUtils]: 25: Hoare triple {3533#(and (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3457#true} is VALID [2022-04-27 13:02:59,152 INFO L290 TraceCheckUtils]: 26: Hoare triple {3457#true} ~cond := #in~cond; {3457#true} is VALID [2022-04-27 13:02:59,152 INFO L290 TraceCheckUtils]: 27: Hoare triple {3457#true} assume !(0 == ~cond); {3457#true} is VALID [2022-04-27 13:02:59,152 INFO L290 TraceCheckUtils]: 28: Hoare triple {3457#true} assume true; {3457#true} is VALID [2022-04-27 13:02:59,153 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {3457#true} {3533#(and (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #98#return; {3533#(and (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 13:02:59,153 INFO L272 TraceCheckUtils]: 30: Hoare triple {3533#(and (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3558#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:02:59,154 INFO L290 TraceCheckUtils]: 31: Hoare triple {3558#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3562#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:02:59,154 INFO L290 TraceCheckUtils]: 32: Hoare triple {3562#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3458#false} is VALID [2022-04-27 13:02:59,154 INFO L290 TraceCheckUtils]: 33: Hoare triple {3458#false} assume !false; {3458#false} is VALID [2022-04-27 13:02:59,156 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 5 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-27 13:02:59,156 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:02:59,156 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:59,156 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1883429897] [2022-04-27 13:02:59,156 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:02:59,156 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [601183731] [2022-04-27 13:02:59,156 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [601183731] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:02:59,156 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:02:59,156 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-27 13:02:59,157 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [842888205] [2022-04-27 13:02:59,157 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:02:59,159 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.4) internal successors, (24), 8 states have internal predecessors, (24), 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 34 [2022-04-27 13:02:59,160 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:59,160 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.4) internal successors, (24), 8 states have internal predecessors, (24), 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-27 13:02:59,180 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-27 13:02:59,180 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 13:02:59,181 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:02:59,181 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 13:02:59,181 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=70, Unknown=0, NotChecked=0, Total=90 [2022-04-27 13:02:59,187 INFO L87 Difference]: Start difference. First operand 132 states and 180 transitions. Second operand has 10 states, 10 states have (on average 2.4) internal successors, (24), 8 states have internal predecessors, (24), 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-27 13:02:59,988 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:59,988 INFO L93 Difference]: Finished difference Result 157 states and 210 transitions. [2022-04-27 13:02:59,988 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 13:02:59,989 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.4) internal successors, (24), 8 states have internal predecessors, (24), 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 34 [2022-04-27 13:02:59,989 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:02:59,989 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.4) internal successors, (24), 8 states have internal predecessors, (24), 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-27 13:02:59,991 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 93 transitions. [2022-04-27 13:02:59,991 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.4) internal successors, (24), 8 states have internal predecessors, (24), 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-27 13:02:59,993 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 93 transitions. [2022-04-27 13:02:59,993 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 93 transitions. [2022-04-27 13:03:00,075 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 93 edges. 93 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:00,078 INFO L225 Difference]: With dead ends: 157 [2022-04-27 13:03:00,079 INFO L226 Difference]: Without dead ends: 155 [2022-04-27 13:03:00,079 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 38 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 21 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=46, Invalid=164, Unknown=0, NotChecked=0, Total=210 [2022-04-27 13:03:00,079 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 80 mSDsluCounter, 198 mSDsCounter, 0 mSdLazyCounter, 186 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 84 SdHoareTripleChecker+Valid, 241 SdHoareTripleChecker+Invalid, 214 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 186 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 13:03:00,079 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [84 Valid, 241 Invalid, 214 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 186 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 13:03:00,080 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 155 states. [2022-04-27 13:03:00,211 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 155 to 144. [2022-04-27 13:03:00,211 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:00,211 INFO L82 GeneralOperation]: Start isEquivalent. First operand 155 states. Second operand has 144 states, 107 states have (on average 1.3177570093457944) internal successors, (141), 108 states have internal predecessors, (141), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 13:03:00,217 INFO L74 IsIncluded]: Start isIncluded. First operand 155 states. Second operand has 144 states, 107 states have (on average 1.3177570093457944) internal successors, (141), 108 states have internal predecessors, (141), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 13:03:00,220 INFO L87 Difference]: Start difference. First operand 155 states. Second operand has 144 states, 107 states have (on average 1.3177570093457944) internal successors, (141), 108 states have internal predecessors, (141), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 13:03:00,227 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:00,227 INFO L93 Difference]: Finished difference Result 155 states and 206 transitions. [2022-04-27 13:03:00,227 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 206 transitions. [2022-04-27 13:03:00,228 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:00,228 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:00,228 INFO L74 IsIncluded]: Start isIncluded. First operand has 144 states, 107 states have (on average 1.3177570093457944) internal successors, (141), 108 states have internal predecessors, (141), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 155 states. [2022-04-27 13:03:00,228 INFO L87 Difference]: Start difference. First operand has 144 states, 107 states have (on average 1.3177570093457944) internal successors, (141), 108 states have internal predecessors, (141), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 155 states. [2022-04-27 13:03:00,231 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:00,231 INFO L93 Difference]: Finished difference Result 155 states and 206 transitions. [2022-04-27 13:03:00,232 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 206 transitions. [2022-04-27 13:03:00,232 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:00,232 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:00,232 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:00,232 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:00,236 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 144 states, 107 states have (on average 1.3177570093457944) internal successors, (141), 108 states have internal predecessors, (141), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 13:03:00,239 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 144 states to 144 states and 189 transitions. [2022-04-27 13:03:00,239 INFO L78 Accepts]: Start accepts. Automaton has 144 states and 189 transitions. Word has length 34 [2022-04-27 13:03:00,239 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:00,239 INFO L495 AbstractCegarLoop]: Abstraction has 144 states and 189 transitions. [2022-04-27 13:03:00,239 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.4) internal successors, (24), 8 states have internal predecessors, (24), 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-27 13:03:00,239 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 189 transitions. [2022-04-27 13:03:00,241 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-27 13:03:00,241 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:00,241 INFO L195 NwaCegarLoop]: trace histogram [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-27 13:03:00,258 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-27 13:03:00,456 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-27 13:03:00,457 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:00,457 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:00,457 INFO L85 PathProgramCache]: Analyzing trace with hash 1581560821, now seen corresponding path program 1 times [2022-04-27 13:03:00,457 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:00,457 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [374926119] [2022-04-27 13:03:00,457 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:00,457 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:00,470 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:00,470 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1291918629] [2022-04-27 13:03:00,470 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:00,470 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:00,471 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:00,471 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-27 13:03:00,492 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-27 13:03:00,558 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:00,559 INFO L263 TraceCheckSpWp]: Trace formula consists of 149 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-27 13:03:00,569 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:00,570 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:00,834 INFO L272 TraceCheckUtils]: 0: Hoare triple {4310#true} call ULTIMATE.init(); {4310#true} is VALID [2022-04-27 13:03:00,835 INFO L290 TraceCheckUtils]: 1: Hoare triple {4310#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);~counter~0 := 0; {4310#true} is VALID [2022-04-27 13:03:00,835 INFO L290 TraceCheckUtils]: 2: Hoare triple {4310#true} assume true; {4310#true} is VALID [2022-04-27 13:03:00,835 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4310#true} {4310#true} #108#return; {4310#true} is VALID [2022-04-27 13:03:00,835 INFO L272 TraceCheckUtils]: 4: Hoare triple {4310#true} call #t~ret9 := main(); {4310#true} is VALID [2022-04-27 13:03:00,835 INFO L290 TraceCheckUtils]: 5: Hoare triple {4310#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; {4310#true} is VALID [2022-04-27 13:03:00,835 INFO L272 TraceCheckUtils]: 6: Hoare triple {4310#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4310#true} is VALID [2022-04-27 13:03:00,835 INFO L290 TraceCheckUtils]: 7: Hoare triple {4310#true} ~cond := #in~cond; {4336#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:03:00,836 INFO L290 TraceCheckUtils]: 8: Hoare triple {4336#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {4340#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:03:00,836 INFO L290 TraceCheckUtils]: 9: Hoare triple {4340#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {4340#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:03:00,836 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4340#(not (= |assume_abort_if_not_#in~cond| 0))} {4310#true} #94#return; {4347#(<= 1 main_~x~0)} is VALID [2022-04-27 13:03:00,836 INFO L272 TraceCheckUtils]: 11: Hoare triple {4347#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4310#true} is VALID [2022-04-27 13:03:00,836 INFO L290 TraceCheckUtils]: 12: Hoare triple {4310#true} ~cond := #in~cond; {4310#true} is VALID [2022-04-27 13:03:00,836 INFO L290 TraceCheckUtils]: 13: Hoare triple {4310#true} assume !(0 == ~cond); {4310#true} is VALID [2022-04-27 13:03:00,837 INFO L290 TraceCheckUtils]: 14: Hoare triple {4310#true} assume true; {4310#true} is VALID [2022-04-27 13:03:00,837 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4310#true} {4347#(<= 1 main_~x~0)} #96#return; {4347#(<= 1 main_~x~0)} is VALID [2022-04-27 13:03:00,837 INFO L290 TraceCheckUtils]: 16: Hoare triple {4347#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:03:00,838 INFO L290 TraceCheckUtils]: 17: Hoare triple {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:03:00,839 INFO L290 TraceCheckUtils]: 18: Hoare triple {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post6 < 10);havoc #t~post6; {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:03:00,839 INFO L290 TraceCheckUtils]: 19: Hoare triple {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:03:00,839 INFO L290 TraceCheckUtils]: 20: Hoare triple {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:03:00,840 INFO L290 TraceCheckUtils]: 21: Hoare triple {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 10);havoc #t~post7; {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:03:00,840 INFO L290 TraceCheckUtils]: 22: Hoare triple {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~c~0 >= ~b~0); {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:03:00,840 INFO L290 TraceCheckUtils]: 23: Hoare triple {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:00,841 INFO L290 TraceCheckUtils]: 24: Hoare triple {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:00,841 INFO L290 TraceCheckUtils]: 25: Hoare triple {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post6 < 10);havoc #t~post6; {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:00,841 INFO L290 TraceCheckUtils]: 26: Hoare triple {4388#(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; {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:00,842 INFO L290 TraceCheckUtils]: 27: Hoare triple {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:00,842 INFO L290 TraceCheckUtils]: 28: Hoare triple {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post7 < 10);havoc #t~post7; {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:00,842 INFO L290 TraceCheckUtils]: 29: Hoare triple {4388#(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; {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:00,843 INFO L290 TraceCheckUtils]: 30: Hoare triple {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:00,843 INFO L290 TraceCheckUtils]: 31: Hoare triple {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post8 < 10);havoc #t~post8; {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:00,844 INFO L272 TraceCheckUtils]: 32: Hoare triple {4388#(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)); {4416#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:03:00,844 INFO L290 TraceCheckUtils]: 33: Hoare triple {4416#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4420#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:00,844 INFO L290 TraceCheckUtils]: 34: Hoare triple {4420#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4311#false} is VALID [2022-04-27 13:03:00,844 INFO L290 TraceCheckUtils]: 35: Hoare triple {4311#false} assume !false; {4311#false} is VALID [2022-04-27 13:03:00,845 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-27 13:03:00,845 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:03:01,016 INFO L290 TraceCheckUtils]: 35: Hoare triple {4311#false} assume !false; {4311#false} is VALID [2022-04-27 13:03:01,016 INFO L290 TraceCheckUtils]: 34: Hoare triple {4420#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4311#false} is VALID [2022-04-27 13:03:01,017 INFO L290 TraceCheckUtils]: 33: Hoare triple {4416#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4420#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:01,017 INFO L272 TraceCheckUtils]: 32: Hoare triple {4436#(= 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)); {4416#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:03:01,017 INFO L290 TraceCheckUtils]: 31: Hoare triple {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post8 < 10);havoc #t~post8; {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:01,018 INFO L290 TraceCheckUtils]: 30: Hoare triple {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:01,018 INFO L290 TraceCheckUtils]: 29: Hoare triple {4436#(= 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; {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:01,018 INFO L290 TraceCheckUtils]: 28: Hoare triple {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 10);havoc #t~post7; {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:01,019 INFO L290 TraceCheckUtils]: 27: Hoare triple {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:01,019 INFO L290 TraceCheckUtils]: 26: Hoare triple {4436#(= 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; {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:01,019 INFO L290 TraceCheckUtils]: 25: Hoare triple {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:01,020 INFO L290 TraceCheckUtils]: 24: Hoare triple {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:01,020 INFO L290 TraceCheckUtils]: 23: Hoare triple {4464#(= 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; {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:01,020 INFO L290 TraceCheckUtils]: 22: Hoare triple {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:01,021 INFO L290 TraceCheckUtils]: 21: Hoare triple {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 10);havoc #t~post7; {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:01,021 INFO L290 TraceCheckUtils]: 20: Hoare triple {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:01,021 INFO L290 TraceCheckUtils]: 19: Hoare triple {4464#(= 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; {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:01,022 INFO L290 TraceCheckUtils]: 18: Hoare triple {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:01,022 INFO L290 TraceCheckUtils]: 17: Hoare triple {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:01,023 INFO L290 TraceCheckUtils]: 16: Hoare triple {4310#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:01,023 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4310#true} {4310#true} #96#return; {4310#true} is VALID [2022-04-27 13:03:01,023 INFO L290 TraceCheckUtils]: 14: Hoare triple {4310#true} assume true; {4310#true} is VALID [2022-04-27 13:03:01,023 INFO L290 TraceCheckUtils]: 13: Hoare triple {4310#true} assume !(0 == ~cond); {4310#true} is VALID [2022-04-27 13:03:01,023 INFO L290 TraceCheckUtils]: 12: Hoare triple {4310#true} ~cond := #in~cond; {4310#true} is VALID [2022-04-27 13:03:01,023 INFO L272 TraceCheckUtils]: 11: Hoare triple {4310#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4310#true} is VALID [2022-04-27 13:03:01,023 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4310#true} {4310#true} #94#return; {4310#true} is VALID [2022-04-27 13:03:01,023 INFO L290 TraceCheckUtils]: 9: Hoare triple {4310#true} assume true; {4310#true} is VALID [2022-04-27 13:03:01,023 INFO L290 TraceCheckUtils]: 8: Hoare triple {4310#true} assume !(0 == ~cond); {4310#true} is VALID [2022-04-27 13:03:01,023 INFO L290 TraceCheckUtils]: 7: Hoare triple {4310#true} ~cond := #in~cond; {4310#true} is VALID [2022-04-27 13:03:01,024 INFO L272 TraceCheckUtils]: 6: Hoare triple {4310#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4310#true} is VALID [2022-04-27 13:03:01,024 INFO L290 TraceCheckUtils]: 5: Hoare triple {4310#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; {4310#true} is VALID [2022-04-27 13:03:01,024 INFO L272 TraceCheckUtils]: 4: Hoare triple {4310#true} call #t~ret9 := main(); {4310#true} is VALID [2022-04-27 13:03:01,024 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4310#true} {4310#true} #108#return; {4310#true} is VALID [2022-04-27 13:03:01,024 INFO L290 TraceCheckUtils]: 2: Hoare triple {4310#true} assume true; {4310#true} is VALID [2022-04-27 13:03:01,024 INFO L290 TraceCheckUtils]: 1: Hoare triple {4310#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);~counter~0 := 0; {4310#true} is VALID [2022-04-27 13:03:01,024 INFO L272 TraceCheckUtils]: 0: Hoare triple {4310#true} call ULTIMATE.init(); {4310#true} is VALID [2022-04-27 13:03:01,024 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 13:03:01,024 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:01,024 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [374926119] [2022-04-27 13:03:01,024 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:01,024 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1291918629] [2022-04-27 13:03:01,025 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1291918629] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:03:01,025 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:03:01,025 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 6] total 11 [2022-04-27 13:03:01,026 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1124740618] [2022-04-27 13:03:01,027 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:03:01,027 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 4.0) internal successors, (44), 9 states have internal predecessors, (44), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 36 [2022-04-27 13:03:01,027 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:01,027 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 4.0) internal successors, (44), 9 states have internal predecessors, (44), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 13:03:01,059 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:01,059 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-27 13:03:01,059 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:01,059 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-27 13:03:01,060 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-27 13:03:01,060 INFO L87 Difference]: Start difference. First operand 144 states and 189 transitions. Second operand has 11 states, 11 states have (on average 4.0) internal successors, (44), 9 states have internal predecessors, (44), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 13:03:01,834 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:01,834 INFO L93 Difference]: Finished difference Result 179 states and 241 transitions. [2022-04-27 13:03:01,834 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 13:03:01,835 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 4.0) internal successors, (44), 9 states have internal predecessors, (44), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 36 [2022-04-27 13:03:01,835 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:01,835 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 4.0) internal successors, (44), 9 states have internal predecessors, (44), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 13:03:01,836 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 99 transitions. [2022-04-27 13:03:01,836 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 4.0) internal successors, (44), 9 states have internal predecessors, (44), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 13:03:01,837 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 99 transitions. [2022-04-27 13:03:01,837 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 99 transitions. [2022-04-27 13:03:01,909 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:01,912 INFO L225 Difference]: With dead ends: 179 [2022-04-27 13:03:01,912 INFO L226 Difference]: Without dead ends: 177 [2022-04-27 13:03:01,912 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 74 GetRequests, 61 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=37, Invalid=145, Unknown=0, NotChecked=0, Total=182 [2022-04-27 13:03:01,912 INFO L413 NwaCegarLoop]: 58 mSDtfsCounter, 76 mSDsluCounter, 278 mSDsCounter, 0 mSdLazyCounter, 206 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 84 SdHoareTripleChecker+Valid, 336 SdHoareTripleChecker+Invalid, 226 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 206 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 13:03:01,913 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [84 Valid, 336 Invalid, 226 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 206 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 13:03:01,913 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 177 states. [2022-04-27 13:03:02,100 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 177 to 174. [2022-04-27 13:03:02,100 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:02,100 INFO L82 GeneralOperation]: Start isEquivalent. First operand 177 states. Second operand has 174 states, 128 states have (on average 1.34375) internal successors, (172), 129 states have internal predecessors, (172), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-27 13:03:02,101 INFO L74 IsIncluded]: Start isIncluded. First operand 177 states. Second operand has 174 states, 128 states have (on average 1.34375) internal successors, (172), 129 states have internal predecessors, (172), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-27 13:03:02,101 INFO L87 Difference]: Start difference. First operand 177 states. Second operand has 174 states, 128 states have (on average 1.34375) internal successors, (172), 129 states have internal predecessors, (172), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-27 13:03:02,105 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:02,105 INFO L93 Difference]: Finished difference Result 177 states and 239 transitions. [2022-04-27 13:03:02,105 INFO L276 IsEmpty]: Start isEmpty. Operand 177 states and 239 transitions. [2022-04-27 13:03:02,105 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:02,105 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:02,106 INFO L74 IsIncluded]: Start isIncluded. First operand has 174 states, 128 states have (on average 1.34375) internal successors, (172), 129 states have internal predecessors, (172), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 177 states. [2022-04-27 13:03:02,106 INFO L87 Difference]: Start difference. First operand has 174 states, 128 states have (on average 1.34375) internal successors, (172), 129 states have internal predecessors, (172), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 177 states. [2022-04-27 13:03:02,110 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:02,110 INFO L93 Difference]: Finished difference Result 177 states and 239 transitions. [2022-04-27 13:03:02,110 INFO L276 IsEmpty]: Start isEmpty. Operand 177 states and 239 transitions. [2022-04-27 13:03:02,111 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:02,111 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:02,111 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:02,111 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:02,111 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 174 states, 128 states have (on average 1.34375) internal successors, (172), 129 states have internal predecessors, (172), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-27 13:03:02,115 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 174 states to 174 states and 236 transitions. [2022-04-27 13:03:02,115 INFO L78 Accepts]: Start accepts. Automaton has 174 states and 236 transitions. Word has length 36 [2022-04-27 13:03:02,115 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:02,115 INFO L495 AbstractCegarLoop]: Abstraction has 174 states and 236 transitions. [2022-04-27 13:03:02,115 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 4.0) internal successors, (44), 9 states have internal predecessors, (44), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 13:03:02,115 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 236 transitions. [2022-04-27 13:03:02,116 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-27 13:03:02,116 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:02,116 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, 1, 1, 1, 1, 1] [2022-04-27 13:03:02,134 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-27 13:03:02,332 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-27 13:03:02,332 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:02,333 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:02,333 INFO L85 PathProgramCache]: Analyzing trace with hash -892181054, now seen corresponding path program 1 times [2022-04-27 13:03:02,333 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:02,333 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [592584709] [2022-04-27 13:03:02,333 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:02,333 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:02,353 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:02,353 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [383587275] [2022-04-27 13:03:02,353 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:02,353 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:02,353 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:02,356 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-27 13:03:02,359 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-27 13:03:02,394 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:02,395 INFO L263 TraceCheckSpWp]: Trace formula consists of 149 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 13:03:02,403 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:02,404 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:02,546 INFO L272 TraceCheckUtils]: 0: Hoare triple {5394#true} call ULTIMATE.init(); {5394#true} is VALID [2022-04-27 13:03:02,546 INFO L290 TraceCheckUtils]: 1: Hoare triple {5394#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);~counter~0 := 0; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:02,547 INFO L290 TraceCheckUtils]: 2: Hoare triple {5402#(<= ~counter~0 0)} assume true; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:02,547 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5402#(<= ~counter~0 0)} {5394#true} #108#return; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:02,548 INFO L272 TraceCheckUtils]: 4: Hoare triple {5402#(<= ~counter~0 0)} call #t~ret9 := main(); {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:02,548 INFO L290 TraceCheckUtils]: 5: Hoare triple {5402#(<= ~counter~0 0)} 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; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:02,548 INFO L272 TraceCheckUtils]: 6: Hoare triple {5402#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:02,549 INFO L290 TraceCheckUtils]: 7: Hoare triple {5402#(<= ~counter~0 0)} ~cond := #in~cond; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:02,549 INFO L290 TraceCheckUtils]: 8: Hoare triple {5402#(<= ~counter~0 0)} assume !(0 == ~cond); {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:02,549 INFO L290 TraceCheckUtils]: 9: Hoare triple {5402#(<= ~counter~0 0)} assume true; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:02,550 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5402#(<= ~counter~0 0)} {5402#(<= ~counter~0 0)} #94#return; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:02,550 INFO L272 TraceCheckUtils]: 11: Hoare triple {5402#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:02,550 INFO L290 TraceCheckUtils]: 12: Hoare triple {5402#(<= ~counter~0 0)} ~cond := #in~cond; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:02,551 INFO L290 TraceCheckUtils]: 13: Hoare triple {5402#(<= ~counter~0 0)} assume !(0 == ~cond); {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:02,551 INFO L290 TraceCheckUtils]: 14: Hoare triple {5402#(<= ~counter~0 0)} assume true; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:02,551 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5402#(<= ~counter~0 0)} {5402#(<= ~counter~0 0)} #96#return; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:02,552 INFO L290 TraceCheckUtils]: 16: Hoare triple {5402#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:02,552 INFO L290 TraceCheckUtils]: 17: Hoare triple {5402#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5451#(<= ~counter~0 1)} is VALID [2022-04-27 13:03:02,553 INFO L290 TraceCheckUtils]: 18: Hoare triple {5451#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {5451#(<= ~counter~0 1)} is VALID [2022-04-27 13:03:02,553 INFO L290 TraceCheckUtils]: 19: Hoare triple {5451#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5451#(<= ~counter~0 1)} is VALID [2022-04-27 13:03:02,553 INFO L290 TraceCheckUtils]: 20: Hoare triple {5451#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5461#(<= ~counter~0 2)} is VALID [2022-04-27 13:03:02,554 INFO L290 TraceCheckUtils]: 21: Hoare triple {5461#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {5461#(<= ~counter~0 2)} is VALID [2022-04-27 13:03:02,554 INFO L290 TraceCheckUtils]: 22: Hoare triple {5461#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {5461#(<= ~counter~0 2)} is VALID [2022-04-27 13:03:02,554 INFO L290 TraceCheckUtils]: 23: Hoare triple {5461#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {5471#(<= |main_#t~post8| 2)} is VALID [2022-04-27 13:03:02,555 INFO L290 TraceCheckUtils]: 24: Hoare triple {5471#(<= |main_#t~post8| 2)} assume !(#t~post8 < 10);havoc #t~post8; {5395#false} is VALID [2022-04-27 13:03:02,555 INFO L290 TraceCheckUtils]: 25: Hoare triple {5395#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {5395#false} is VALID [2022-04-27 13:03:02,555 INFO L290 TraceCheckUtils]: 26: Hoare triple {5395#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5395#false} is VALID [2022-04-27 13:03:02,555 INFO L290 TraceCheckUtils]: 27: Hoare triple {5395#false} assume !(#t~post7 < 10);havoc #t~post7; {5395#false} is VALID [2022-04-27 13:03:02,555 INFO L290 TraceCheckUtils]: 28: Hoare triple {5395#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; {5395#false} is VALID [2022-04-27 13:03:02,555 INFO L290 TraceCheckUtils]: 29: Hoare triple {5395#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5395#false} is VALID [2022-04-27 13:03:02,555 INFO L290 TraceCheckUtils]: 30: Hoare triple {5395#false} assume !!(#t~post6 < 10);havoc #t~post6; {5395#false} is VALID [2022-04-27 13:03:02,555 INFO L290 TraceCheckUtils]: 31: Hoare triple {5395#false} assume !(0 != ~b~0); {5395#false} is VALID [2022-04-27 13:03:02,555 INFO L272 TraceCheckUtils]: 32: Hoare triple {5395#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)); {5395#false} is VALID [2022-04-27 13:03:02,555 INFO L290 TraceCheckUtils]: 33: Hoare triple {5395#false} ~cond := #in~cond; {5395#false} is VALID [2022-04-27 13:03:02,555 INFO L290 TraceCheckUtils]: 34: Hoare triple {5395#false} assume 0 == ~cond; {5395#false} is VALID [2022-04-27 13:03:02,555 INFO L290 TraceCheckUtils]: 35: Hoare triple {5395#false} assume !false; {5395#false} is VALID [2022-04-27 13:03:02,556 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 5 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 13:03:02,556 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:03:02,556 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:02,556 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [592584709] [2022-04-27 13:03:02,556 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:02,556 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [383587275] [2022-04-27 13:03:02,556 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [383587275] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:03:02,556 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:03:02,556 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 13:03:02,556 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [329230589] [2022-04-27 13:03:02,556 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:03:02,557 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 36 [2022-04-27 13:03:02,557 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:02,557 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:03:02,578 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-27 13:03:02,578 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 13:03:02,578 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:02,579 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 13:03:02,579 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-27 13:03:02,579 INFO L87 Difference]: Start difference. First operand 174 states and 236 transitions. Second operand has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:03:02,831 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:02,831 INFO L93 Difference]: Finished difference Result 241 states and 329 transitions. [2022-04-27 13:03:02,831 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 13:03:02,831 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 36 [2022-04-27 13:03:02,831 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:02,831 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:03:02,832 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 88 transitions. [2022-04-27 13:03:02,832 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:03:02,833 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 88 transitions. [2022-04-27 13:03:02,833 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 88 transitions. [2022-04-27 13:03:02,895 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 88 edges. 88 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:02,898 INFO L225 Difference]: With dead ends: 241 [2022-04-27 13:03:02,898 INFO L226 Difference]: Without dead ends: 174 [2022-04-27 13:03:02,898 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 31 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-27 13:03:02,899 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 10 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 18 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 26 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 18 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 13:03:02,899 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 139 Invalid, 26 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 18 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 13:03:02,899 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 174 states. [2022-04-27 13:03:03,021 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 174 to 174. [2022-04-27 13:03:03,021 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:03,021 INFO L82 GeneralOperation]: Start isEquivalent. First operand 174 states. Second operand has 174 states, 128 states have (on average 1.3359375) internal successors, (171), 129 states have internal predecessors, (171), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-27 13:03:03,021 INFO L74 IsIncluded]: Start isIncluded. First operand 174 states. Second operand has 174 states, 128 states have (on average 1.3359375) internal successors, (171), 129 states have internal predecessors, (171), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-27 13:03:03,022 INFO L87 Difference]: Start difference. First operand 174 states. Second operand has 174 states, 128 states have (on average 1.3359375) internal successors, (171), 129 states have internal predecessors, (171), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-27 13:03:03,024 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:03,025 INFO L93 Difference]: Finished difference Result 174 states and 235 transitions. [2022-04-27 13:03:03,025 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 235 transitions. [2022-04-27 13:03:03,025 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:03,025 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:03,025 INFO L74 IsIncluded]: Start isIncluded. First operand has 174 states, 128 states have (on average 1.3359375) internal successors, (171), 129 states have internal predecessors, (171), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 174 states. [2022-04-27 13:03:03,026 INFO L87 Difference]: Start difference. First operand has 174 states, 128 states have (on average 1.3359375) internal successors, (171), 129 states have internal predecessors, (171), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 174 states. [2022-04-27 13:03:03,028 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:03,028 INFO L93 Difference]: Finished difference Result 174 states and 235 transitions. [2022-04-27 13:03:03,028 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 235 transitions. [2022-04-27 13:03:03,029 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:03,029 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:03,029 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:03,029 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:03,029 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 174 states, 128 states have (on average 1.3359375) internal successors, (171), 129 states have internal predecessors, (171), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-27 13:03:03,032 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 174 states to 174 states and 235 transitions. [2022-04-27 13:03:03,032 INFO L78 Accepts]: Start accepts. Automaton has 174 states and 235 transitions. Word has length 36 [2022-04-27 13:03:03,032 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:03,032 INFO L495 AbstractCegarLoop]: Abstraction has 174 states and 235 transitions. [2022-04-27 13:03:03,032 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:03:03,033 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 235 transitions. [2022-04-27 13:03:03,033 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-27 13:03:03,033 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:03,033 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, 1, 1, 1] [2022-04-27 13:03:03,051 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-27 13:03:03,249 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-27 13:03:03,249 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:03,249 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:03,250 INFO L85 PathProgramCache]: Analyzing trace with hash -957710478, now seen corresponding path program 1 times [2022-04-27 13:03:03,250 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:03,250 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [495614338] [2022-04-27 13:03:03,250 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:03,250 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:03,260 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:03,260 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [967136669] [2022-04-27 13:03:03,260 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:03,260 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:03,260 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:03,265 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-27 13:03:03,274 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-27 13:03:03,306 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:03,307 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 13:03:03,312 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:03,313 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:03,984 INFO L272 TraceCheckUtils]: 0: Hoare triple {6441#true} call ULTIMATE.init(); {6441#true} is VALID [2022-04-27 13:03:03,984 INFO L290 TraceCheckUtils]: 1: Hoare triple {6441#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);~counter~0 := 0; {6441#true} is VALID [2022-04-27 13:03:03,984 INFO L290 TraceCheckUtils]: 2: Hoare triple {6441#true} assume true; {6441#true} is VALID [2022-04-27 13:03:03,984 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6441#true} {6441#true} #108#return; {6441#true} is VALID [2022-04-27 13:03:03,985 INFO L272 TraceCheckUtils]: 4: Hoare triple {6441#true} call #t~ret9 := main(); {6441#true} is VALID [2022-04-27 13:03:03,985 INFO L290 TraceCheckUtils]: 5: Hoare triple {6441#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; {6441#true} is VALID [2022-04-27 13:03:03,985 INFO L272 TraceCheckUtils]: 6: Hoare triple {6441#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6441#true} is VALID [2022-04-27 13:03:03,985 INFO L290 TraceCheckUtils]: 7: Hoare triple {6441#true} ~cond := #in~cond; {6441#true} is VALID [2022-04-27 13:03:03,985 INFO L290 TraceCheckUtils]: 8: Hoare triple {6441#true} assume !(0 == ~cond); {6441#true} is VALID [2022-04-27 13:03:03,985 INFO L290 TraceCheckUtils]: 9: Hoare triple {6441#true} assume true; {6441#true} is VALID [2022-04-27 13:03:03,985 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6441#true} {6441#true} #94#return; {6441#true} is VALID [2022-04-27 13:03:03,985 INFO L272 TraceCheckUtils]: 11: Hoare triple {6441#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6441#true} is VALID [2022-04-27 13:03:03,985 INFO L290 TraceCheckUtils]: 12: Hoare triple {6441#true} ~cond := #in~cond; {6441#true} is VALID [2022-04-27 13:03:03,985 INFO L290 TraceCheckUtils]: 13: Hoare triple {6441#true} assume !(0 == ~cond); {6441#true} is VALID [2022-04-27 13:03:03,985 INFO L290 TraceCheckUtils]: 14: Hoare triple {6441#true} assume true; {6441#true} is VALID [2022-04-27 13:03:03,985 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {6441#true} {6441#true} #96#return; {6441#true} is VALID [2022-04-27 13:03:03,985 INFO L290 TraceCheckUtils]: 16: Hoare triple {6441#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {6441#true} is VALID [2022-04-27 13:03:03,985 INFO L290 TraceCheckUtils]: 17: Hoare triple {6441#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6441#true} is VALID [2022-04-27 13:03:03,986 INFO L290 TraceCheckUtils]: 18: Hoare triple {6441#true} assume !!(#t~post6 < 10);havoc #t~post6; {6441#true} is VALID [2022-04-27 13:03:03,986 INFO L290 TraceCheckUtils]: 19: Hoare triple {6441#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-27 13:03:03,986 INFO L290 TraceCheckUtils]: 20: Hoare triple {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-27 13:03:03,987 INFO L290 TraceCheckUtils]: 21: Hoare triple {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(#t~post7 < 10);havoc #t~post7; {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-27 13:03:03,987 INFO L290 TraceCheckUtils]: 22: Hoare triple {6503#(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; {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-27 13:03:03,987 INFO L290 TraceCheckUtils]: 23: Hoare triple {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-27 13:03:03,988 INFO L290 TraceCheckUtils]: 24: Hoare triple {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(#t~post8 < 10);havoc #t~post8; {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-27 13:03:03,988 INFO L272 TraceCheckUtils]: 25: Hoare triple {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6441#true} is VALID [2022-04-27 13:03:03,988 INFO L290 TraceCheckUtils]: 26: Hoare triple {6441#true} ~cond := #in~cond; {6441#true} is VALID [2022-04-27 13:03:03,988 INFO L290 TraceCheckUtils]: 27: Hoare triple {6441#true} assume !(0 == ~cond); {6441#true} is VALID [2022-04-27 13:03:03,988 INFO L290 TraceCheckUtils]: 28: Hoare triple {6441#true} assume true; {6441#true} is VALID [2022-04-27 13:03:03,989 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {6441#true} {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #98#return; {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-27 13:03:03,989 INFO L272 TraceCheckUtils]: 30: Hoare triple {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6441#true} is VALID [2022-04-27 13:03:03,989 INFO L290 TraceCheckUtils]: 31: Hoare triple {6441#true} ~cond := #in~cond; {6441#true} is VALID [2022-04-27 13:03:03,989 INFO L290 TraceCheckUtils]: 32: Hoare triple {6441#true} assume !(0 == ~cond); {6441#true} is VALID [2022-04-27 13:03:03,989 INFO L290 TraceCheckUtils]: 33: Hoare triple {6441#true} assume true; {6441#true} is VALID [2022-04-27 13:03:03,989 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {6441#true} {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #100#return; {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-27 13:03:03,990 INFO L272 TraceCheckUtils]: 35: Hoare triple {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6552#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:03:03,990 INFO L290 TraceCheckUtils]: 36: Hoare triple {6552#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6556#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:03,991 INFO L290 TraceCheckUtils]: 37: Hoare triple {6556#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6442#false} is VALID [2022-04-27 13:03:03,991 INFO L290 TraceCheckUtils]: 38: Hoare triple {6442#false} assume !false; {6442#false} is VALID [2022-04-27 13:03:03,991 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-27 13:03:03,991 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:03:03,991 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:03,991 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [495614338] [2022-04-27 13:03:03,991 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:03,991 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [967136669] [2022-04-27 13:03:03,991 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [967136669] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:03:03,991 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:03:03,991 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 13:03:03,992 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1957703918] [2022-04-27 13:03:03,992 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:03:03,992 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 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 39 [2022-04-27 13:03:03,992 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:03,992 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 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-27 13:03:04,014 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-27 13:03:04,014 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:03:04,014 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:04,014 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:03:04,014 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 13:03:04,014 INFO L87 Difference]: Start difference. First operand 174 states and 235 transitions. Second operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 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-27 13:03:04,417 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:04,417 INFO L93 Difference]: Finished difference Result 239 states and 335 transitions. [2022-04-27 13:03:04,417 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:03:04,417 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 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 39 [2022-04-27 13:03:04,417 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:04,418 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 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-27 13:03:04,418 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-27 13:03:04,418 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 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-27 13:03:04,419 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-27 13:03:04,419 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 70 transitions. [2022-04-27 13:03:04,464 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:04,468 INFO L225 Difference]: With dead ends: 239 [2022-04-27 13:03:04,468 INFO L226 Difference]: Without dead ends: 237 [2022-04-27 13:03:04,469 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 39 GetRequests, 35 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-27 13:03:04,469 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 10 mSDsluCounter, 107 mSDsCounter, 0 mSdLazyCounter, 47 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 150 SdHoareTripleChecker+Invalid, 47 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 47 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 13:03:04,469 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 150 Invalid, 47 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 47 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 13:03:04,469 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 237 states. [2022-04-27 13:03:04,741 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 237 to 230. [2022-04-27 13:03:04,742 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:04,742 INFO L82 GeneralOperation]: Start isEquivalent. First operand 237 states. Second operand has 230 states, 161 states have (on average 1.3664596273291925) internal successors, (220), 162 states have internal predecessors, (220), 53 states have call successors, (53), 16 states have call predecessors, (53), 15 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-27 13:03:04,742 INFO L74 IsIncluded]: Start isIncluded. First operand 237 states. Second operand has 230 states, 161 states have (on average 1.3664596273291925) internal successors, (220), 162 states have internal predecessors, (220), 53 states have call successors, (53), 16 states have call predecessors, (53), 15 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-27 13:03:04,743 INFO L87 Difference]: Start difference. First operand 237 states. Second operand has 230 states, 161 states have (on average 1.3664596273291925) internal successors, (220), 162 states have internal predecessors, (220), 53 states have call successors, (53), 16 states have call predecessors, (53), 15 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-27 13:03:04,747 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:04,747 INFO L93 Difference]: Finished difference Result 237 states and 331 transitions. [2022-04-27 13:03:04,747 INFO L276 IsEmpty]: Start isEmpty. Operand 237 states and 331 transitions. [2022-04-27 13:03:04,748 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:04,748 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:04,748 INFO L74 IsIncluded]: Start isIncluded. First operand has 230 states, 161 states have (on average 1.3664596273291925) internal successors, (220), 162 states have internal predecessors, (220), 53 states have call successors, (53), 16 states have call predecessors, (53), 15 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) Second operand 237 states. [2022-04-27 13:03:04,749 INFO L87 Difference]: Start difference. First operand has 230 states, 161 states have (on average 1.3664596273291925) internal successors, (220), 162 states have internal predecessors, (220), 53 states have call successors, (53), 16 states have call predecessors, (53), 15 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) Second operand 237 states. [2022-04-27 13:03:04,753 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:04,753 INFO L93 Difference]: Finished difference Result 237 states and 331 transitions. [2022-04-27 13:03:04,753 INFO L276 IsEmpty]: Start isEmpty. Operand 237 states and 331 transitions. [2022-04-27 13:03:04,754 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:04,754 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:04,754 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:04,754 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:04,754 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 230 states, 161 states have (on average 1.3664596273291925) internal successors, (220), 162 states have internal predecessors, (220), 53 states have call successors, (53), 16 states have call predecessors, (53), 15 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-27 13:03:04,759 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 230 states to 230 states and 324 transitions. [2022-04-27 13:03:04,759 INFO L78 Accepts]: Start accepts. Automaton has 230 states and 324 transitions. Word has length 39 [2022-04-27 13:03:04,759 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:04,759 INFO L495 AbstractCegarLoop]: Abstraction has 230 states and 324 transitions. [2022-04-27 13:03:04,759 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 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-27 13:03:04,760 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 324 transitions. [2022-04-27 13:03:04,760 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-27 13:03:04,760 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:04,760 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:03:04,797 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-27 13:03:04,976 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-27 13:03:04,976 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:04,976 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:04,976 INFO L85 PathProgramCache]: Analyzing trace with hash 409018142, now seen corresponding path program 1 times [2022-04-27 13:03:04,977 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:04,977 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [402459117] [2022-04-27 13:03:04,977 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:04,977 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:05,000 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:05,001 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1643331594] [2022-04-27 13:03:05,001 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:05,001 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:05,001 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:05,012 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-27 13:03:05,013 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-27 13:03:05,050 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:05,051 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 31 conjunts are in the unsatisfiable core [2022-04-27 13:03:05,058 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:05,059 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:09,304 INFO L272 TraceCheckUtils]: 0: Hoare triple {7713#true} call ULTIMATE.init(); {7713#true} is VALID [2022-04-27 13:03:09,304 INFO L290 TraceCheckUtils]: 1: Hoare triple {7713#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);~counter~0 := 0; {7713#true} is VALID [2022-04-27 13:03:09,304 INFO L290 TraceCheckUtils]: 2: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:03:09,304 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7713#true} {7713#true} #108#return; {7713#true} is VALID [2022-04-27 13:03:09,304 INFO L272 TraceCheckUtils]: 4: Hoare triple {7713#true} call #t~ret9 := main(); {7713#true} is VALID [2022-04-27 13:03:09,304 INFO L290 TraceCheckUtils]: 5: Hoare triple {7713#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; {7713#true} is VALID [2022-04-27 13:03:09,304 INFO L272 TraceCheckUtils]: 6: Hoare triple {7713#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7713#true} is VALID [2022-04-27 13:03:09,304 INFO L290 TraceCheckUtils]: 7: Hoare triple {7713#true} ~cond := #in~cond; {7713#true} is VALID [2022-04-27 13:03:09,305 INFO L290 TraceCheckUtils]: 8: Hoare triple {7713#true} assume !(0 == ~cond); {7713#true} is VALID [2022-04-27 13:03:09,305 INFO L290 TraceCheckUtils]: 9: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:03:09,305 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7713#true} {7713#true} #94#return; {7713#true} is VALID [2022-04-27 13:03:09,305 INFO L272 TraceCheckUtils]: 11: Hoare triple {7713#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7713#true} is VALID [2022-04-27 13:03:09,305 INFO L290 TraceCheckUtils]: 12: Hoare triple {7713#true} ~cond := #in~cond; {7713#true} is VALID [2022-04-27 13:03:09,305 INFO L290 TraceCheckUtils]: 13: Hoare triple {7713#true} assume !(0 == ~cond); {7713#true} is VALID [2022-04-27 13:03:09,305 INFO L290 TraceCheckUtils]: 14: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:03:09,305 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7713#true} {7713#true} #96#return; {7713#true} is VALID [2022-04-27 13:03:09,305 INFO L290 TraceCheckUtils]: 16: Hoare triple {7713#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7766#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:09,306 INFO L290 TraceCheckUtils]: 17: Hoare triple {7766#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7766#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:09,306 INFO L290 TraceCheckUtils]: 18: Hoare triple {7766#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {7766#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:09,307 INFO L290 TraceCheckUtils]: 19: Hoare triple {7766#(and (= main_~r~0 0) (= main_~s~0 1) (= 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; {7776#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:09,307 INFO L290 TraceCheckUtils]: 20: Hoare triple {7776#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7776#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:09,307 INFO L290 TraceCheckUtils]: 21: Hoare triple {7776#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 10);havoc #t~post7; {7776#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:09,308 INFO L290 TraceCheckUtils]: 22: Hoare triple {7776#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {7776#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:09,308 INFO L290 TraceCheckUtils]: 23: Hoare triple {7776#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= 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; {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:09,309 INFO L290 TraceCheckUtils]: 24: Hoare triple {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:09,309 INFO L290 TraceCheckUtils]: 25: Hoare triple {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:09,309 INFO L290 TraceCheckUtils]: 26: Hoare triple {7789#(and (= main_~s~0 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; {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:09,310 INFO L290 TraceCheckUtils]: 27: Hoare triple {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:09,310 INFO L290 TraceCheckUtils]: 28: Hoare triple {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post7 < 10);havoc #t~post7; {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:09,311 INFO L290 TraceCheckUtils]: 29: Hoare triple {7789#(and (= main_~s~0 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; {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:09,311 INFO L290 TraceCheckUtils]: 30: Hoare triple {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:09,311 INFO L290 TraceCheckUtils]: 31: Hoare triple {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post8 < 10);havoc #t~post8; {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:09,311 INFO L272 TraceCheckUtils]: 32: Hoare triple {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7713#true} is VALID [2022-04-27 13:03:09,312 INFO L290 TraceCheckUtils]: 33: Hoare triple {7713#true} ~cond := #in~cond; {7713#true} is VALID [2022-04-27 13:03:09,312 INFO L290 TraceCheckUtils]: 34: Hoare triple {7713#true} assume !(0 == ~cond); {7713#true} is VALID [2022-04-27 13:03:09,312 INFO L290 TraceCheckUtils]: 35: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:03:09,312 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7713#true} {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #98#return; {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:09,313 INFO L272 TraceCheckUtils]: 37: Hoare triple {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7832#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:03:09,313 INFO L290 TraceCheckUtils]: 38: Hoare triple {7832#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7836#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:09,314 INFO L290 TraceCheckUtils]: 39: Hoare triple {7836#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7714#false} is VALID [2022-04-27 13:03:09,314 INFO L290 TraceCheckUtils]: 40: Hoare triple {7714#false} assume !false; {7714#false} is VALID [2022-04-27 13:03:09,314 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 2 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 13:03:09,314 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:03:09,502 INFO L290 TraceCheckUtils]: 40: Hoare triple {7714#false} assume !false; {7714#false} is VALID [2022-04-27 13:03:09,503 INFO L290 TraceCheckUtils]: 39: Hoare triple {7836#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7714#false} is VALID [2022-04-27 13:03:09,503 INFO L290 TraceCheckUtils]: 38: Hoare triple {7832#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7836#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:09,504 INFO L272 TraceCheckUtils]: 37: Hoare triple {7852#(= 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)); {7832#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:03:09,504 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7713#true} {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #98#return; {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:09,504 INFO L290 TraceCheckUtils]: 35: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:03:09,504 INFO L290 TraceCheckUtils]: 34: Hoare triple {7713#true} assume !(0 == ~cond); {7713#true} is VALID [2022-04-27 13:03:09,504 INFO L290 TraceCheckUtils]: 33: Hoare triple {7713#true} ~cond := #in~cond; {7713#true} is VALID [2022-04-27 13:03:09,504 INFO L272 TraceCheckUtils]: 32: Hoare triple {7852#(= 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)); {7713#true} is VALID [2022-04-27 13:03:09,505 INFO L290 TraceCheckUtils]: 31: Hoare triple {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post8 < 10);havoc #t~post8; {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:09,505 INFO L290 TraceCheckUtils]: 30: Hoare triple {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:09,505 INFO L290 TraceCheckUtils]: 29: Hoare triple {7852#(= 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; {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:09,506 INFO L290 TraceCheckUtils]: 28: Hoare triple {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 10);havoc #t~post7; {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:09,506 INFO L290 TraceCheckUtils]: 27: Hoare triple {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:09,506 INFO L290 TraceCheckUtils]: 26: Hoare triple {7852#(= 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; {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:09,507 INFO L290 TraceCheckUtils]: 25: Hoare triple {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:09,507 INFO L290 TraceCheckUtils]: 24: Hoare triple {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:10,511 INFO L290 TraceCheckUtils]: 23: Hoare triple {7895#(= (+ (* (+ (* (* 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; {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:10,512 INFO L290 TraceCheckUtils]: 22: Hoare triple {7895#(= (+ (* (+ (* (* 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); {7895#(= (+ (* (+ (* (* 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-27 13:03:10,512 INFO L290 TraceCheckUtils]: 21: Hoare triple {7895#(= (+ (* (+ (* (* 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 !!(#t~post7 < 10);havoc #t~post7; {7895#(= (+ (* (+ (* (* 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-27 13:03:10,512 INFO L290 TraceCheckUtils]: 20: Hoare triple {7895#(= (+ (* (+ (* (* 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)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7895#(= (+ (* (+ (* (* 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-27 13:03:10,513 INFO L290 TraceCheckUtils]: 19: Hoare triple {7908#(= 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; {7895#(= (+ (* (+ (* (* 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-27 13:03:10,513 INFO L290 TraceCheckUtils]: 18: Hoare triple {7908#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {7908#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:10,513 INFO L290 TraceCheckUtils]: 17: Hoare triple {7908#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7908#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:10,514 INFO L290 TraceCheckUtils]: 16: Hoare triple {7713#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7908#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:10,514 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7713#true} {7713#true} #96#return; {7713#true} is VALID [2022-04-27 13:03:10,514 INFO L290 TraceCheckUtils]: 14: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:03:10,514 INFO L290 TraceCheckUtils]: 13: Hoare triple {7713#true} assume !(0 == ~cond); {7713#true} is VALID [2022-04-27 13:03:10,514 INFO L290 TraceCheckUtils]: 12: Hoare triple {7713#true} ~cond := #in~cond; {7713#true} is VALID [2022-04-27 13:03:10,514 INFO L272 TraceCheckUtils]: 11: Hoare triple {7713#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7713#true} is VALID [2022-04-27 13:03:10,514 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7713#true} {7713#true} #94#return; {7713#true} is VALID [2022-04-27 13:03:10,514 INFO L290 TraceCheckUtils]: 9: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:03:10,515 INFO L290 TraceCheckUtils]: 8: Hoare triple {7713#true} assume !(0 == ~cond); {7713#true} is VALID [2022-04-27 13:03:10,515 INFO L290 TraceCheckUtils]: 7: Hoare triple {7713#true} ~cond := #in~cond; {7713#true} is VALID [2022-04-27 13:03:10,515 INFO L272 TraceCheckUtils]: 6: Hoare triple {7713#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7713#true} is VALID [2022-04-27 13:03:10,515 INFO L290 TraceCheckUtils]: 5: Hoare triple {7713#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; {7713#true} is VALID [2022-04-27 13:03:10,515 INFO L272 TraceCheckUtils]: 4: Hoare triple {7713#true} call #t~ret9 := main(); {7713#true} is VALID [2022-04-27 13:03:10,520 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7713#true} {7713#true} #108#return; {7713#true} is VALID [2022-04-27 13:03:10,520 INFO L290 TraceCheckUtils]: 2: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:03:10,520 INFO L290 TraceCheckUtils]: 1: Hoare triple {7713#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);~counter~0 := 0; {7713#true} is VALID [2022-04-27 13:03:10,520 INFO L272 TraceCheckUtils]: 0: Hoare triple {7713#true} call ULTIMATE.init(); {7713#true} is VALID [2022-04-27 13:03:10,520 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 2 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 13:03:10,520 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:10,521 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [402459117] [2022-04-27 13:03:10,521 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:10,521 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1643331594] [2022-04-27 13:03:10,521 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1643331594] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:03:10,521 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:03:10,521 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 10 [2022-04-27 13:03:10,521 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1637742486] [2022-04-27 13:03:10,521 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:03:10,521 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 3 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 41 [2022-04-27 13:03:10,521 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:10,522 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 3 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 13:03:10,673 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:10,674 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 13:03:10,674 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:10,674 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 13:03:10,674 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=70, Unknown=0, NotChecked=0, Total=90 [2022-04-27 13:03:10,674 INFO L87 Difference]: Start difference. First operand 230 states and 324 transitions. Second operand has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 3 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 13:03:12,662 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:12,663 INFO L93 Difference]: Finished difference Result 392 states and 578 transitions. [2022-04-27 13:03:12,663 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-27 13:03:12,663 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 3 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 41 [2022-04-27 13:03:12,663 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:12,664 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 3 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 13:03:12,667 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 252 transitions. [2022-04-27 13:03:12,667 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 3 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 13:03:12,669 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 252 transitions. [2022-04-27 13:03:12,669 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 252 transitions. [2022-04-27 13:03:13,310 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 252 edges. 252 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:13,320 INFO L225 Difference]: With dead ends: 392 [2022-04-27 13:03:13,320 INFO L226 Difference]: Without dead ends: 390 [2022-04-27 13:03:13,320 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 89 GetRequests, 72 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 30 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=72, Invalid=234, Unknown=0, NotChecked=0, Total=306 [2022-04-27 13:03:13,320 INFO L413 NwaCegarLoop]: 66 mSDtfsCounter, 157 mSDsluCounter, 268 mSDsCounter, 0 mSdLazyCounter, 346 mSolverCounterSat, 89 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 164 SdHoareTripleChecker+Valid, 334 SdHoareTripleChecker+Invalid, 435 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 89 IncrementalHoareTripleChecker+Valid, 346 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-27 13:03:13,321 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [164 Valid, 334 Invalid, 435 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [89 Valid, 346 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-27 13:03:13,321 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 390 states. [2022-04-27 13:03:13,618 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 390 to 377. [2022-04-27 13:03:13,618 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:13,619 INFO L82 GeneralOperation]: Start isEquivalent. First operand 390 states. Second operand has 377 states, 266 states have (on average 1.4248120300751879) internal successors, (379), 267 states have internal predecessors, (379), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 91 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-27 13:03:13,620 INFO L74 IsIncluded]: Start isIncluded. First operand 390 states. Second operand has 377 states, 266 states have (on average 1.4248120300751879) internal successors, (379), 267 states have internal predecessors, (379), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 91 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-27 13:03:13,621 INFO L87 Difference]: Start difference. First operand 390 states. Second operand has 377 states, 266 states have (on average 1.4248120300751879) internal successors, (379), 267 states have internal predecessors, (379), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 91 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-27 13:03:13,630 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:13,630 INFO L93 Difference]: Finished difference Result 390 states and 576 transitions. [2022-04-27 13:03:13,630 INFO L276 IsEmpty]: Start isEmpty. Operand 390 states and 576 transitions. [2022-04-27 13:03:13,635 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:13,636 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:13,636 INFO L74 IsIncluded]: Start isIncluded. First operand has 377 states, 266 states have (on average 1.4248120300751879) internal successors, (379), 267 states have internal predecessors, (379), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 91 states have call predecessors, (91), 91 states have call successors, (91) Second operand 390 states. [2022-04-27 13:03:13,637 INFO L87 Difference]: Start difference. First operand has 377 states, 266 states have (on average 1.4248120300751879) internal successors, (379), 267 states have internal predecessors, (379), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 91 states have call predecessors, (91), 91 states have call successors, (91) Second operand 390 states. [2022-04-27 13:03:13,647 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:13,647 INFO L93 Difference]: Finished difference Result 390 states and 576 transitions. [2022-04-27 13:03:13,647 INFO L276 IsEmpty]: Start isEmpty. Operand 390 states and 576 transitions. [2022-04-27 13:03:13,648 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:13,648 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:13,649 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:13,649 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:13,649 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 377 states, 266 states have (on average 1.4248120300751879) internal successors, (379), 267 states have internal predecessors, (379), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 91 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-27 13:03:13,659 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 377 states to 377 states and 563 transitions. [2022-04-27 13:03:13,659 INFO L78 Accepts]: Start accepts. Automaton has 377 states and 563 transitions. Word has length 41 [2022-04-27 13:03:13,659 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:13,659 INFO L495 AbstractCegarLoop]: Abstraction has 377 states and 563 transitions. [2022-04-27 13:03:13,660 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 3 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 13:03:13,660 INFO L276 IsEmpty]: Start isEmpty. Operand 377 states and 563 transitions. [2022-04-27 13:03:13,660 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-27 13:03:13,660 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:13,660 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, 1, 1, 1] [2022-04-27 13:03:13,690 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-27 13:03:13,876 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-27 13:03:13,877 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:13,877 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:13,877 INFO L85 PathProgramCache]: Analyzing trace with hash -1943393983, now seen corresponding path program 1 times [2022-04-27 13:03:13,877 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:13,877 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [183274286] [2022-04-27 13:03:13,878 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:13,878 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:13,887 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:13,887 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [405913186] [2022-04-27 13:03:13,887 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:13,887 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:13,888 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:13,901 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-27 13:03:13,902 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-27 13:03:13,934 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:13,935 INFO L263 TraceCheckSpWp]: Trace formula consists of 146 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 13:03:13,940 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:13,941 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:14,055 INFO L272 TraceCheckUtils]: 0: Hoare triple {9884#true} call ULTIMATE.init(); {9884#true} is VALID [2022-04-27 13:03:14,055 INFO L290 TraceCheckUtils]: 1: Hoare triple {9884#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);~counter~0 := 0; {9884#true} is VALID [2022-04-27 13:03:14,055 INFO L290 TraceCheckUtils]: 2: Hoare triple {9884#true} assume true; {9884#true} is VALID [2022-04-27 13:03:14,055 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9884#true} {9884#true} #108#return; {9884#true} is VALID [2022-04-27 13:03:14,055 INFO L272 TraceCheckUtils]: 4: Hoare triple {9884#true} call #t~ret9 := main(); {9884#true} is VALID [2022-04-27 13:03:14,055 INFO L290 TraceCheckUtils]: 5: Hoare triple {9884#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; {9884#true} is VALID [2022-04-27 13:03:14,055 INFO L272 TraceCheckUtils]: 6: Hoare triple {9884#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {9884#true} is VALID [2022-04-27 13:03:14,056 INFO L290 TraceCheckUtils]: 7: Hoare triple {9884#true} ~cond := #in~cond; {9884#true} is VALID [2022-04-27 13:03:14,056 INFO L290 TraceCheckUtils]: 8: Hoare triple {9884#true} assume !(0 == ~cond); {9884#true} is VALID [2022-04-27 13:03:14,056 INFO L290 TraceCheckUtils]: 9: Hoare triple {9884#true} assume true; {9884#true} is VALID [2022-04-27 13:03:14,056 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9884#true} {9884#true} #94#return; {9884#true} is VALID [2022-04-27 13:03:14,056 INFO L272 TraceCheckUtils]: 11: Hoare triple {9884#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {9884#true} is VALID [2022-04-27 13:03:14,056 INFO L290 TraceCheckUtils]: 12: Hoare triple {9884#true} ~cond := #in~cond; {9884#true} is VALID [2022-04-27 13:03:14,056 INFO L290 TraceCheckUtils]: 13: Hoare triple {9884#true} assume !(0 == ~cond); {9884#true} is VALID [2022-04-27 13:03:14,056 INFO L290 TraceCheckUtils]: 14: Hoare triple {9884#true} assume true; {9884#true} is VALID [2022-04-27 13:03:14,056 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {9884#true} {9884#true} #96#return; {9884#true} is VALID [2022-04-27 13:03:14,056 INFO L290 TraceCheckUtils]: 16: Hoare triple {9884#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {9884#true} is VALID [2022-04-27 13:03:14,056 INFO L290 TraceCheckUtils]: 17: Hoare triple {9884#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9884#true} is VALID [2022-04-27 13:03:14,056 INFO L290 TraceCheckUtils]: 18: Hoare triple {9884#true} assume !!(#t~post6 < 10);havoc #t~post6; {9884#true} is VALID [2022-04-27 13:03:14,056 INFO L290 TraceCheckUtils]: 19: Hoare triple {9884#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {9884#true} is VALID [2022-04-27 13:03:14,056 INFO L290 TraceCheckUtils]: 20: Hoare triple {9884#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9884#true} is VALID [2022-04-27 13:03:14,056 INFO L290 TraceCheckUtils]: 21: Hoare triple {9884#true} assume !!(#t~post7 < 10);havoc #t~post7; {9884#true} is VALID [2022-04-27 13:03:14,057 INFO L290 TraceCheckUtils]: 22: Hoare triple {9884#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-27 13:03:14,057 INFO L290 TraceCheckUtils]: 23: Hoare triple {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-27 13:03:14,057 INFO L290 TraceCheckUtils]: 24: Hoare triple {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !!(#t~post8 < 10);havoc #t~post8; {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-27 13:03:14,058 INFO L272 TraceCheckUtils]: 25: Hoare triple {9955#(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)); {9884#true} is VALID [2022-04-27 13:03:14,058 INFO L290 TraceCheckUtils]: 26: Hoare triple {9884#true} ~cond := #in~cond; {9884#true} is VALID [2022-04-27 13:03:14,058 INFO L290 TraceCheckUtils]: 27: Hoare triple {9884#true} assume !(0 == ~cond); {9884#true} is VALID [2022-04-27 13:03:14,058 INFO L290 TraceCheckUtils]: 28: Hoare triple {9884#true} assume true; {9884#true} is VALID [2022-04-27 13:03:14,058 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {9884#true} {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #98#return; {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-27 13:03:14,059 INFO L272 TraceCheckUtils]: 30: Hoare triple {9955#(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)); {9884#true} is VALID [2022-04-27 13:03:14,059 INFO L290 TraceCheckUtils]: 31: Hoare triple {9884#true} ~cond := #in~cond; {9884#true} is VALID [2022-04-27 13:03:14,059 INFO L290 TraceCheckUtils]: 32: Hoare triple {9884#true} assume !(0 == ~cond); {9884#true} is VALID [2022-04-27 13:03:14,059 INFO L290 TraceCheckUtils]: 33: Hoare triple {9884#true} assume true; {9884#true} is VALID [2022-04-27 13:03:14,059 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {9884#true} {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #100#return; {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-27 13:03:14,060 INFO L272 TraceCheckUtils]: 35: Hoare triple {9955#(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)); {9884#true} is VALID [2022-04-27 13:03:14,060 INFO L290 TraceCheckUtils]: 36: Hoare triple {9884#true} ~cond := #in~cond; {9884#true} is VALID [2022-04-27 13:03:14,060 INFO L290 TraceCheckUtils]: 37: Hoare triple {9884#true} assume !(0 == ~cond); {9884#true} is VALID [2022-04-27 13:03:14,060 INFO L290 TraceCheckUtils]: 38: Hoare triple {9884#true} assume true; {9884#true} is VALID [2022-04-27 13:03:14,060 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {9884#true} {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #102#return; {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-27 13:03:14,061 INFO L272 TraceCheckUtils]: 40: Hoare triple {9955#(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)); {10010#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:03:14,061 INFO L290 TraceCheckUtils]: 41: Hoare triple {10010#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10014#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:14,062 INFO L290 TraceCheckUtils]: 42: Hoare triple {10014#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {9885#false} is VALID [2022-04-27 13:03:14,062 INFO L290 TraceCheckUtils]: 43: Hoare triple {9885#false} assume !false; {9885#false} is VALID [2022-04-27 13:03:14,062 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-27 13:03:14,062 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:03:14,062 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:14,062 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [183274286] [2022-04-27 13:03:14,062 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:14,062 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [405913186] [2022-04-27 13:03:14,062 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [405913186] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:03:14,062 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:03:14,063 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 13:03:14,063 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [789137255] [2022-04-27 13:03:14,063 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:03:14,063 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 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 44 [2022-04-27 13:03:14,063 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:14,063 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 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-27 13:03:14,088 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-27 13:03:14,088 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:03:14,088 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:14,089 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:03:14,089 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 13:03:14,099 INFO L87 Difference]: Start difference. First operand 377 states and 563 transitions. Second operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 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-27 13:03:14,905 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:14,906 INFO L93 Difference]: Finished difference Result 566 states and 887 transitions. [2022-04-27 13:03:14,906 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:03:14,906 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 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 44 [2022-04-27 13:03:14,906 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:14,906 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 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-27 13:03:14,908 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-27 13:03:14,908 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 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-27 13:03:14,909 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-27 13:03:14,909 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 70 transitions. [2022-04-27 13:03:14,958 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:14,973 INFO L225 Difference]: With dead ends: 566 [2022-04-27 13:03:14,973 INFO L226 Difference]: Without dead ends: 564 [2022-04-27 13:03:14,975 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 44 GetRequests, 40 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-27 13:03:14,975 INFO L413 NwaCegarLoop]: 49 mSDtfsCounter, 12 mSDsluCounter, 117 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 166 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-27 13:03:14,976 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [13 Valid, 166 Invalid, 50 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 13:03:14,976 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 564 states. [2022-04-27 13:03:15,617 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 564 to 495. [2022-04-27 13:03:15,617 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:15,618 INFO L82 GeneralOperation]: Start isEquivalent. First operand 564 states. Second operand has 495 states, 307 states have (on average 1.4267100977198697) internal successors, (438), 327 states have internal predecessors, (438), 169 states have call successors, (169), 19 states have call predecessors, (169), 18 states have return successors, (167), 148 states have call predecessors, (167), 167 states have call successors, (167) [2022-04-27 13:03:15,618 INFO L74 IsIncluded]: Start isIncluded. First operand 564 states. Second operand has 495 states, 307 states have (on average 1.4267100977198697) internal successors, (438), 327 states have internal predecessors, (438), 169 states have call successors, (169), 19 states have call predecessors, (169), 18 states have return successors, (167), 148 states have call predecessors, (167), 167 states have call successors, (167) [2022-04-27 13:03:15,619 INFO L87 Difference]: Start difference. First operand 564 states. Second operand has 495 states, 307 states have (on average 1.4267100977198697) internal successors, (438), 327 states have internal predecessors, (438), 169 states have call successors, (169), 19 states have call predecessors, (169), 18 states have return successors, (167), 148 states have call predecessors, (167), 167 states have call successors, (167) [2022-04-27 13:03:15,636 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:15,636 INFO L93 Difference]: Finished difference Result 564 states and 884 transitions. [2022-04-27 13:03:15,636 INFO L276 IsEmpty]: Start isEmpty. Operand 564 states and 884 transitions. [2022-04-27 13:03:15,637 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:15,637 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:15,638 INFO L74 IsIncluded]: Start isIncluded. First operand has 495 states, 307 states have (on average 1.4267100977198697) internal successors, (438), 327 states have internal predecessors, (438), 169 states have call successors, (169), 19 states have call predecessors, (169), 18 states have return successors, (167), 148 states have call predecessors, (167), 167 states have call successors, (167) Second operand 564 states. [2022-04-27 13:03:15,639 INFO L87 Difference]: Start difference. First operand has 495 states, 307 states have (on average 1.4267100977198697) internal successors, (438), 327 states have internal predecessors, (438), 169 states have call successors, (169), 19 states have call predecessors, (169), 18 states have return successors, (167), 148 states have call predecessors, (167), 167 states have call successors, (167) Second operand 564 states. [2022-04-27 13:03:15,655 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:15,655 INFO L93 Difference]: Finished difference Result 564 states and 884 transitions. [2022-04-27 13:03:15,655 INFO L276 IsEmpty]: Start isEmpty. Operand 564 states and 884 transitions. [2022-04-27 13:03:15,657 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:15,657 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:15,657 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:15,657 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:15,658 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 495 states, 307 states have (on average 1.4267100977198697) internal successors, (438), 327 states have internal predecessors, (438), 169 states have call successors, (169), 19 states have call predecessors, (169), 18 states have return successors, (167), 148 states have call predecessors, (167), 167 states have call successors, (167) [2022-04-27 13:03:15,675 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 495 states to 495 states and 774 transitions. [2022-04-27 13:03:15,675 INFO L78 Accepts]: Start accepts. Automaton has 495 states and 774 transitions. Word has length 44 [2022-04-27 13:03:15,675 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:15,675 INFO L495 AbstractCegarLoop]: Abstraction has 495 states and 774 transitions. [2022-04-27 13:03:15,675 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 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-27 13:03:15,676 INFO L276 IsEmpty]: Start isEmpty. Operand 495 states and 774 transitions. [2022-04-27 13:03:15,676 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-27 13:03:15,676 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:15,676 INFO L195 NwaCegarLoop]: trace histogram [4, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:03:15,692 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Ended with exit code 0 [2022-04-27 13:03:15,892 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-27 13:03:15,892 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:15,892 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:15,892 INFO L85 PathProgramCache]: Analyzing trace with hash -1018638220, now seen corresponding path program 1 times [2022-04-27 13:03:15,892 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:15,892 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [570448795] [2022-04-27 13:03:15,893 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:15,893 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:15,909 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:15,909 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [964627875] [2022-04-27 13:03:15,909 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:15,909 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:15,909 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:15,920 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-27 13:03:15,947 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-27 13:03:15,970 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:15,971 INFO L263 TraceCheckSpWp]: Trace formula consists of 187 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-27 13:03:15,977 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:15,978 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:16,081 INFO L272 TraceCheckUtils]: 0: Hoare triple {12762#true} call ULTIMATE.init(); {12762#true} is VALID [2022-04-27 13:03:16,081 INFO L290 TraceCheckUtils]: 1: Hoare triple {12762#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);~counter~0 := 0; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:16,082 INFO L290 TraceCheckUtils]: 2: Hoare triple {12770#(<= ~counter~0 0)} assume true; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:16,082 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12770#(<= ~counter~0 0)} {12762#true} #108#return; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:16,082 INFO L272 TraceCheckUtils]: 4: Hoare triple {12770#(<= ~counter~0 0)} call #t~ret9 := main(); {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:16,082 INFO L290 TraceCheckUtils]: 5: Hoare triple {12770#(<= ~counter~0 0)} 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; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:16,083 INFO L272 TraceCheckUtils]: 6: Hoare triple {12770#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:16,083 INFO L290 TraceCheckUtils]: 7: Hoare triple {12770#(<= ~counter~0 0)} ~cond := #in~cond; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:16,083 INFO L290 TraceCheckUtils]: 8: Hoare triple {12770#(<= ~counter~0 0)} assume !(0 == ~cond); {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:16,083 INFO L290 TraceCheckUtils]: 9: Hoare triple {12770#(<= ~counter~0 0)} assume true; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:16,083 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12770#(<= ~counter~0 0)} {12770#(<= ~counter~0 0)} #94#return; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:16,084 INFO L272 TraceCheckUtils]: 11: Hoare triple {12770#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:16,084 INFO L290 TraceCheckUtils]: 12: Hoare triple {12770#(<= ~counter~0 0)} ~cond := #in~cond; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:16,084 INFO L290 TraceCheckUtils]: 13: Hoare triple {12770#(<= ~counter~0 0)} assume !(0 == ~cond); {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:16,084 INFO L290 TraceCheckUtils]: 14: Hoare triple {12770#(<= ~counter~0 0)} assume true; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:16,084 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {12770#(<= ~counter~0 0)} {12770#(<= ~counter~0 0)} #96#return; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:16,085 INFO L290 TraceCheckUtils]: 16: Hoare triple {12770#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:16,085 INFO L290 TraceCheckUtils]: 17: Hoare triple {12770#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12819#(<= ~counter~0 1)} is VALID [2022-04-27 13:03:16,085 INFO L290 TraceCheckUtils]: 18: Hoare triple {12819#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {12819#(<= ~counter~0 1)} is VALID [2022-04-27 13:03:16,085 INFO L290 TraceCheckUtils]: 19: Hoare triple {12819#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12819#(<= ~counter~0 1)} is VALID [2022-04-27 13:03:16,086 INFO L290 TraceCheckUtils]: 20: Hoare triple {12819#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12829#(<= ~counter~0 2)} is VALID [2022-04-27 13:03:16,086 INFO L290 TraceCheckUtils]: 21: Hoare triple {12829#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {12829#(<= ~counter~0 2)} is VALID [2022-04-27 13:03:16,086 INFO L290 TraceCheckUtils]: 22: Hoare triple {12829#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {12829#(<= ~counter~0 2)} is VALID [2022-04-27 13:03:16,086 INFO L290 TraceCheckUtils]: 23: Hoare triple {12829#(<= ~counter~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; {12829#(<= ~counter~0 2)} is VALID [2022-04-27 13:03:16,087 INFO L290 TraceCheckUtils]: 24: Hoare triple {12829#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12842#(<= ~counter~0 3)} is VALID [2022-04-27 13:03:16,087 INFO L290 TraceCheckUtils]: 25: Hoare triple {12842#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {12842#(<= ~counter~0 3)} is VALID [2022-04-27 13:03:16,087 INFO L290 TraceCheckUtils]: 26: Hoare triple {12842#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12842#(<= ~counter~0 3)} is VALID [2022-04-27 13:03:16,087 INFO L290 TraceCheckUtils]: 27: Hoare triple {12842#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12852#(<= |main_#t~post7| 3)} is VALID [2022-04-27 13:03:16,088 INFO L290 TraceCheckUtils]: 28: Hoare triple {12852#(<= |main_#t~post7| 3)} assume !(#t~post7 < 10);havoc #t~post7; {12763#false} is VALID [2022-04-27 13:03:16,088 INFO L290 TraceCheckUtils]: 29: Hoare triple {12763#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; {12763#false} is VALID [2022-04-27 13:03:16,088 INFO L290 TraceCheckUtils]: 30: Hoare triple {12763#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12763#false} is VALID [2022-04-27 13:03:16,088 INFO L290 TraceCheckUtils]: 31: Hoare triple {12763#false} assume !!(#t~post6 < 10);havoc #t~post6; {12763#false} is VALID [2022-04-27 13:03:16,088 INFO L290 TraceCheckUtils]: 32: Hoare triple {12763#false} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12763#false} is VALID [2022-04-27 13:03:16,088 INFO L290 TraceCheckUtils]: 33: Hoare triple {12763#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12763#false} is VALID [2022-04-27 13:03:16,088 INFO L290 TraceCheckUtils]: 34: Hoare triple {12763#false} assume !(#t~post7 < 10);havoc #t~post7; {12763#false} is VALID [2022-04-27 13:03:16,088 INFO L290 TraceCheckUtils]: 35: Hoare triple {12763#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; {12763#false} is VALID [2022-04-27 13:03:16,088 INFO L290 TraceCheckUtils]: 36: Hoare triple {12763#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12763#false} is VALID [2022-04-27 13:03:16,088 INFO L290 TraceCheckUtils]: 37: Hoare triple {12763#false} assume !(#t~post6 < 10);havoc #t~post6; {12763#false} is VALID [2022-04-27 13:03:16,088 INFO L272 TraceCheckUtils]: 38: Hoare triple {12763#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)); {12763#false} is VALID [2022-04-27 13:03:16,088 INFO L290 TraceCheckUtils]: 39: Hoare triple {12763#false} ~cond := #in~cond; {12763#false} is VALID [2022-04-27 13:03:16,088 INFO L290 TraceCheckUtils]: 40: Hoare triple {12763#false} assume 0 == ~cond; {12763#false} is VALID [2022-04-27 13:03:16,089 INFO L290 TraceCheckUtils]: 41: Hoare triple {12763#false} assume !false; {12763#false} is VALID [2022-04-27 13:03:16,089 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2022-04-27 13:03:16,089 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:03:16,216 INFO L290 TraceCheckUtils]: 41: Hoare triple {12763#false} assume !false; {12763#false} is VALID [2022-04-27 13:03:16,217 INFO L290 TraceCheckUtils]: 40: Hoare triple {12763#false} assume 0 == ~cond; {12763#false} is VALID [2022-04-27 13:03:16,217 INFO L290 TraceCheckUtils]: 39: Hoare triple {12763#false} ~cond := #in~cond; {12763#false} is VALID [2022-04-27 13:03:16,217 INFO L272 TraceCheckUtils]: 38: Hoare triple {12763#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)); {12763#false} is VALID [2022-04-27 13:03:16,217 INFO L290 TraceCheckUtils]: 37: Hoare triple {12763#false} assume !(#t~post6 < 10);havoc #t~post6; {12763#false} is VALID [2022-04-27 13:03:16,217 INFO L290 TraceCheckUtils]: 36: Hoare triple {12763#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12763#false} is VALID [2022-04-27 13:03:16,217 INFO L290 TraceCheckUtils]: 35: Hoare triple {12763#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; {12763#false} is VALID [2022-04-27 13:03:16,217 INFO L290 TraceCheckUtils]: 34: Hoare triple {12763#false} assume !(#t~post7 < 10);havoc #t~post7; {12763#false} is VALID [2022-04-27 13:03:16,217 INFO L290 TraceCheckUtils]: 33: Hoare triple {12763#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12763#false} is VALID [2022-04-27 13:03:16,217 INFO L290 TraceCheckUtils]: 32: Hoare triple {12763#false} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12763#false} is VALID [2022-04-27 13:03:16,218 INFO L290 TraceCheckUtils]: 31: Hoare triple {12763#false} assume !!(#t~post6 < 10);havoc #t~post6; {12763#false} is VALID [2022-04-27 13:03:16,218 INFO L290 TraceCheckUtils]: 30: Hoare triple {12763#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12763#false} is VALID [2022-04-27 13:03:16,218 INFO L290 TraceCheckUtils]: 29: Hoare triple {12763#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; {12763#false} is VALID [2022-04-27 13:03:16,218 INFO L290 TraceCheckUtils]: 28: Hoare triple {12934#(< |main_#t~post7| 10)} assume !(#t~post7 < 10);havoc #t~post7; {12763#false} is VALID [2022-04-27 13:03:16,218 INFO L290 TraceCheckUtils]: 27: Hoare triple {12938#(< ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12934#(< |main_#t~post7| 10)} is VALID [2022-04-27 13:03:16,218 INFO L290 TraceCheckUtils]: 26: Hoare triple {12938#(< ~counter~0 10)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12938#(< ~counter~0 10)} is VALID [2022-04-27 13:03:16,218 INFO L290 TraceCheckUtils]: 25: Hoare triple {12938#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {12938#(< ~counter~0 10)} is VALID [2022-04-27 13:03:16,219 INFO L290 TraceCheckUtils]: 24: Hoare triple {12948#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12938#(< ~counter~0 10)} is VALID [2022-04-27 13:03:16,219 INFO L290 TraceCheckUtils]: 23: Hoare triple {12948#(< ~counter~0 9)} ~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; {12948#(< ~counter~0 9)} is VALID [2022-04-27 13:03:16,219 INFO L290 TraceCheckUtils]: 22: Hoare triple {12948#(< ~counter~0 9)} assume !(~c~0 >= ~b~0); {12948#(< ~counter~0 9)} is VALID [2022-04-27 13:03:16,219 INFO L290 TraceCheckUtils]: 21: Hoare triple {12948#(< ~counter~0 9)} assume !!(#t~post7 < 10);havoc #t~post7; {12948#(< ~counter~0 9)} is VALID [2022-04-27 13:03:16,220 INFO L290 TraceCheckUtils]: 20: Hoare triple {12961#(< ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12948#(< ~counter~0 9)} is VALID [2022-04-27 13:03:16,220 INFO L290 TraceCheckUtils]: 19: Hoare triple {12961#(< ~counter~0 8)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12961#(< ~counter~0 8)} is VALID [2022-04-27 13:03:16,220 INFO L290 TraceCheckUtils]: 18: Hoare triple {12961#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {12961#(< ~counter~0 8)} is VALID [2022-04-27 13:03:16,221 INFO L290 TraceCheckUtils]: 17: Hoare triple {12971#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12961#(< ~counter~0 8)} is VALID [2022-04-27 13:03:16,221 INFO L290 TraceCheckUtils]: 16: Hoare triple {12971#(< ~counter~0 7)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {12971#(< ~counter~0 7)} is VALID [2022-04-27 13:03:16,221 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {12762#true} {12971#(< ~counter~0 7)} #96#return; {12971#(< ~counter~0 7)} is VALID [2022-04-27 13:03:16,221 INFO L290 TraceCheckUtils]: 14: Hoare triple {12762#true} assume true; {12762#true} is VALID [2022-04-27 13:03:16,221 INFO L290 TraceCheckUtils]: 13: Hoare triple {12762#true} assume !(0 == ~cond); {12762#true} is VALID [2022-04-27 13:03:16,222 INFO L290 TraceCheckUtils]: 12: Hoare triple {12762#true} ~cond := #in~cond; {12762#true} is VALID [2022-04-27 13:03:16,222 INFO L272 TraceCheckUtils]: 11: Hoare triple {12971#(< ~counter~0 7)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12762#true} is VALID [2022-04-27 13:03:16,222 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12762#true} {12971#(< ~counter~0 7)} #94#return; {12971#(< ~counter~0 7)} is VALID [2022-04-27 13:03:16,223 INFO L290 TraceCheckUtils]: 9: Hoare triple {12762#true} assume true; {12762#true} is VALID [2022-04-27 13:03:16,223 INFO L290 TraceCheckUtils]: 8: Hoare triple {12762#true} assume !(0 == ~cond); {12762#true} is VALID [2022-04-27 13:03:16,223 INFO L290 TraceCheckUtils]: 7: Hoare triple {12762#true} ~cond := #in~cond; {12762#true} is VALID [2022-04-27 13:03:16,223 INFO L272 TraceCheckUtils]: 6: Hoare triple {12971#(< ~counter~0 7)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {12762#true} is VALID [2022-04-27 13:03:16,223 INFO L290 TraceCheckUtils]: 5: Hoare triple {12971#(< ~counter~0 7)} 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; {12971#(< ~counter~0 7)} is VALID [2022-04-27 13:03:16,223 INFO L272 TraceCheckUtils]: 4: Hoare triple {12971#(< ~counter~0 7)} call #t~ret9 := main(); {12971#(< ~counter~0 7)} is VALID [2022-04-27 13:03:16,223 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12971#(< ~counter~0 7)} {12762#true} #108#return; {12971#(< ~counter~0 7)} is VALID [2022-04-27 13:03:16,223 INFO L290 TraceCheckUtils]: 2: Hoare triple {12971#(< ~counter~0 7)} assume true; {12971#(< ~counter~0 7)} is VALID [2022-04-27 13:03:16,224 INFO L290 TraceCheckUtils]: 1: Hoare triple {12762#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);~counter~0 := 0; {12971#(< ~counter~0 7)} is VALID [2022-04-27 13:03:16,224 INFO L272 TraceCheckUtils]: 0: Hoare triple {12762#true} call ULTIMATE.init(); {12762#true} is VALID [2022-04-27 13:03:16,224 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2022-04-27 13:03:16,224 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:16,224 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [570448795] [2022-04-27 13:03:16,224 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:16,224 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [964627875] [2022-04-27 13:03:16,224 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [964627875] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:03:16,224 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:03:16,224 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-27 13:03:16,225 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [120391410] [2022-04-27 13:03:16,225 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:03:16,226 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 12 states have internal predecessors, (48), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 42 [2022-04-27 13:03:16,226 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:16,234 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 4.0) internal successors, (48), 12 states have internal predecessors, (48), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:03:16,256 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:16,256 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-27 13:03:16,256 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:16,257 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-27 13:03:16,257 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-27 13:03:16,257 INFO L87 Difference]: Start difference. First operand 495 states and 774 transitions. Second operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 12 states have internal predecessors, (48), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:03:18,015 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:18,015 INFO L93 Difference]: Finished difference Result 1127 states and 1721 transitions. [2022-04-27 13:03:18,015 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-27 13:03:18,016 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 12 states have internal predecessors, (48), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 42 [2022-04-27 13:03:18,016 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:18,016 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 12 states have internal predecessors, (48), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:03:18,017 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 224 transitions. [2022-04-27 13:03:18,018 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 12 states have internal predecessors, (48), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:03:18,019 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 224 transitions. [2022-04-27 13:03:18,019 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 224 transitions. [2022-04-27 13:03:18,173 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 224 edges. 224 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:18,200 INFO L225 Difference]: With dead ends: 1127 [2022-04-27 13:03:18,200 INFO L226 Difference]: Without dead ends: 770 [2022-04-27 13:03:18,202 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 88 GetRequests, 73 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 23 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=93, Invalid=179, Unknown=0, NotChecked=0, Total=272 [2022-04-27 13:03:18,202 INFO L413 NwaCegarLoop]: 69 mSDtfsCounter, 156 mSDsluCounter, 321 mSDsCounter, 0 mSdLazyCounter, 174 mSolverCounterSat, 62 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 156 SdHoareTripleChecker+Valid, 390 SdHoareTripleChecker+Invalid, 236 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 62 IncrementalHoareTripleChecker+Valid, 174 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 13:03:18,202 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [156 Valid, 390 Invalid, 236 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [62 Valid, 174 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 13:03:18,203 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 770 states. [2022-04-27 13:03:19,288 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 770 to 736. [2022-04-27 13:03:19,288 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:19,289 INFO L82 GeneralOperation]: Start isEquivalent. First operand 770 states. Second operand has 736 states, 471 states have (on average 1.3630573248407643) internal successors, (642), 495 states have internal predecessors, (642), 224 states have call successors, (224), 41 states have call predecessors, (224), 40 states have return successors, (219), 199 states have call predecessors, (219), 219 states have call successors, (219) [2022-04-27 13:03:19,290 INFO L74 IsIncluded]: Start isIncluded. First operand 770 states. Second operand has 736 states, 471 states have (on average 1.3630573248407643) internal successors, (642), 495 states have internal predecessors, (642), 224 states have call successors, (224), 41 states have call predecessors, (224), 40 states have return successors, (219), 199 states have call predecessors, (219), 219 states have call successors, (219) [2022-04-27 13:03:19,290 INFO L87 Difference]: Start difference. First operand 770 states. Second operand has 736 states, 471 states have (on average 1.3630573248407643) internal successors, (642), 495 states have internal predecessors, (642), 224 states have call successors, (224), 41 states have call predecessors, (224), 40 states have return successors, (219), 199 states have call predecessors, (219), 219 states have call successors, (219) [2022-04-27 13:03:19,317 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:19,317 INFO L93 Difference]: Finished difference Result 770 states and 1118 transitions. [2022-04-27 13:03:19,317 INFO L276 IsEmpty]: Start isEmpty. Operand 770 states and 1118 transitions. [2022-04-27 13:03:19,319 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:19,319 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:19,320 INFO L74 IsIncluded]: Start isIncluded. First operand has 736 states, 471 states have (on average 1.3630573248407643) internal successors, (642), 495 states have internal predecessors, (642), 224 states have call successors, (224), 41 states have call predecessors, (224), 40 states have return successors, (219), 199 states have call predecessors, (219), 219 states have call successors, (219) Second operand 770 states. [2022-04-27 13:03:19,320 INFO L87 Difference]: Start difference. First operand has 736 states, 471 states have (on average 1.3630573248407643) internal successors, (642), 495 states have internal predecessors, (642), 224 states have call successors, (224), 41 states have call predecessors, (224), 40 states have return successors, (219), 199 states have call predecessors, (219), 219 states have call successors, (219) Second operand 770 states. [2022-04-27 13:03:19,346 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:19,346 INFO L93 Difference]: Finished difference Result 770 states and 1118 transitions. [2022-04-27 13:03:19,346 INFO L276 IsEmpty]: Start isEmpty. Operand 770 states and 1118 transitions. [2022-04-27 13:03:19,348 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:19,348 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:19,348 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:19,348 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:19,349 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 736 states, 471 states have (on average 1.3630573248407643) internal successors, (642), 495 states have internal predecessors, (642), 224 states have call successors, (224), 41 states have call predecessors, (224), 40 states have return successors, (219), 199 states have call predecessors, (219), 219 states have call successors, (219) [2022-04-27 13:03:19,378 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 736 states to 736 states and 1085 transitions. [2022-04-27 13:03:19,378 INFO L78 Accepts]: Start accepts. Automaton has 736 states and 1085 transitions. Word has length 42 [2022-04-27 13:03:19,378 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:19,378 INFO L495 AbstractCegarLoop]: Abstraction has 736 states and 1085 transitions. [2022-04-27 13:03:19,378 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 12 states have internal predecessors, (48), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:03:19,378 INFO L276 IsEmpty]: Start isEmpty. Operand 736 states and 1085 transitions. [2022-04-27 13:03:19,379 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-27 13:03:19,379 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:19,379 INFO L195 NwaCegarLoop]: trace histogram [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, 1] [2022-04-27 13:03:19,395 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-27 13:03:19,594 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-27 13:03:19,594 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:19,595 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:19,595 INFO L85 PathProgramCache]: Analyzing trace with hash -2064241646, now seen corresponding path program 1 times [2022-04-27 13:03:19,595 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:19,595 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1948911415] [2022-04-27 13:03:19,595 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:19,595 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:19,606 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:19,606 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1959323746] [2022-04-27 13:03:19,606 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:19,606 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:19,606 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:19,615 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-27 13:03:19,677 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-27 13:03:19,714 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:19,715 INFO L263 TraceCheckSpWp]: Trace formula consists of 178 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-27 13:03:19,723 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:19,726 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:19,893 INFO L272 TraceCheckUtils]: 0: Hoare triple {17410#true} call ULTIMATE.init(); {17410#true} is VALID [2022-04-27 13:03:19,893 INFO L290 TraceCheckUtils]: 1: Hoare triple {17410#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);~counter~0 := 0; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:19,894 INFO L290 TraceCheckUtils]: 2: Hoare triple {17418#(<= ~counter~0 0)} assume true; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:19,894 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17418#(<= ~counter~0 0)} {17410#true} #108#return; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:19,894 INFO L272 TraceCheckUtils]: 4: Hoare triple {17418#(<= ~counter~0 0)} call #t~ret9 := main(); {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:19,895 INFO L290 TraceCheckUtils]: 5: Hoare triple {17418#(<= ~counter~0 0)} 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; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:19,895 INFO L272 TraceCheckUtils]: 6: Hoare triple {17418#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:19,896 INFO L290 TraceCheckUtils]: 7: Hoare triple {17418#(<= ~counter~0 0)} ~cond := #in~cond; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:19,897 INFO L290 TraceCheckUtils]: 8: Hoare triple {17418#(<= ~counter~0 0)} assume !(0 == ~cond); {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:19,897 INFO L290 TraceCheckUtils]: 9: Hoare triple {17418#(<= ~counter~0 0)} assume true; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:19,898 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17418#(<= ~counter~0 0)} {17418#(<= ~counter~0 0)} #94#return; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:19,898 INFO L272 TraceCheckUtils]: 11: Hoare triple {17418#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:19,898 INFO L290 TraceCheckUtils]: 12: Hoare triple {17418#(<= ~counter~0 0)} ~cond := #in~cond; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:19,898 INFO L290 TraceCheckUtils]: 13: Hoare triple {17418#(<= ~counter~0 0)} assume !(0 == ~cond); {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:19,899 INFO L290 TraceCheckUtils]: 14: Hoare triple {17418#(<= ~counter~0 0)} assume true; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:19,899 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {17418#(<= ~counter~0 0)} {17418#(<= ~counter~0 0)} #96#return; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:19,899 INFO L290 TraceCheckUtils]: 16: Hoare triple {17418#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:19,900 INFO L290 TraceCheckUtils]: 17: Hoare triple {17418#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17467#(<= ~counter~0 1)} is VALID [2022-04-27 13:03:19,900 INFO L290 TraceCheckUtils]: 18: Hoare triple {17467#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {17467#(<= ~counter~0 1)} is VALID [2022-04-27 13:03:19,900 INFO L290 TraceCheckUtils]: 19: Hoare triple {17467#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17467#(<= ~counter~0 1)} is VALID [2022-04-27 13:03:19,901 INFO L290 TraceCheckUtils]: 20: Hoare triple {17467#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {17477#(<= ~counter~0 2)} is VALID [2022-04-27 13:03:19,901 INFO L290 TraceCheckUtils]: 21: Hoare triple {17477#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {17477#(<= ~counter~0 2)} is VALID [2022-04-27 13:03:19,901 INFO L290 TraceCheckUtils]: 22: Hoare triple {17477#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {17477#(<= ~counter~0 2)} is VALID [2022-04-27 13:03:19,901 INFO L290 TraceCheckUtils]: 23: Hoare triple {17477#(<= ~counter~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; {17477#(<= ~counter~0 2)} is VALID [2022-04-27 13:03:19,902 INFO L290 TraceCheckUtils]: 24: Hoare triple {17477#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17490#(<= ~counter~0 3)} is VALID [2022-04-27 13:03:19,902 INFO L290 TraceCheckUtils]: 25: Hoare triple {17490#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {17490#(<= ~counter~0 3)} is VALID [2022-04-27 13:03:19,915 INFO L290 TraceCheckUtils]: 26: Hoare triple {17490#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17490#(<= ~counter~0 3)} is VALID [2022-04-27 13:03:19,916 INFO L290 TraceCheckUtils]: 27: Hoare triple {17490#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {17500#(<= ~counter~0 4)} is VALID [2022-04-27 13:03:19,916 INFO L290 TraceCheckUtils]: 28: Hoare triple {17500#(<= ~counter~0 4)} assume !!(#t~post7 < 10);havoc #t~post7; {17500#(<= ~counter~0 4)} is VALID [2022-04-27 13:03:19,916 INFO L290 TraceCheckUtils]: 29: Hoare triple {17500#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {17500#(<= ~counter~0 4)} is VALID [2022-04-27 13:03:19,916 INFO L290 TraceCheckUtils]: 30: Hoare triple {17500#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {17510#(<= |main_#t~post8| 4)} is VALID [2022-04-27 13:03:19,917 INFO L290 TraceCheckUtils]: 31: Hoare triple {17510#(<= |main_#t~post8| 4)} assume !(#t~post8 < 10);havoc #t~post8; {17411#false} is VALID [2022-04-27 13:03:19,917 INFO L290 TraceCheckUtils]: 32: Hoare triple {17411#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {17411#false} is VALID [2022-04-27 13:03:19,917 INFO L290 TraceCheckUtils]: 33: Hoare triple {17411#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {17411#false} is VALID [2022-04-27 13:03:19,917 INFO L290 TraceCheckUtils]: 34: Hoare triple {17411#false} assume !!(#t~post7 < 10);havoc #t~post7; {17411#false} is VALID [2022-04-27 13:03:19,917 INFO L290 TraceCheckUtils]: 35: Hoare triple {17411#false} assume !(~c~0 >= ~b~0); {17411#false} is VALID [2022-04-27 13:03:19,917 INFO L290 TraceCheckUtils]: 36: Hoare triple {17411#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; {17411#false} is VALID [2022-04-27 13:03:19,917 INFO L290 TraceCheckUtils]: 37: Hoare triple {17411#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17411#false} is VALID [2022-04-27 13:03:19,917 INFO L290 TraceCheckUtils]: 38: Hoare triple {17411#false} assume !(#t~post6 < 10);havoc #t~post6; {17411#false} is VALID [2022-04-27 13:03:19,917 INFO L272 TraceCheckUtils]: 39: Hoare triple {17411#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)); {17411#false} is VALID [2022-04-27 13:03:19,917 INFO L290 TraceCheckUtils]: 40: Hoare triple {17411#false} ~cond := #in~cond; {17411#false} is VALID [2022-04-27 13:03:19,917 INFO L290 TraceCheckUtils]: 41: Hoare triple {17411#false} assume 0 == ~cond; {17411#false} is VALID [2022-04-27 13:03:19,917 INFO L290 TraceCheckUtils]: 42: Hoare triple {17411#false} assume !false; {17411#false} is VALID [2022-04-27 13:03:19,918 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 11 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 13:03:19,918 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:03:20,083 INFO L290 TraceCheckUtils]: 42: Hoare triple {17411#false} assume !false; {17411#false} is VALID [2022-04-27 13:03:20,083 INFO L290 TraceCheckUtils]: 41: Hoare triple {17411#false} assume 0 == ~cond; {17411#false} is VALID [2022-04-27 13:03:20,083 INFO L290 TraceCheckUtils]: 40: Hoare triple {17411#false} ~cond := #in~cond; {17411#false} is VALID [2022-04-27 13:03:20,083 INFO L272 TraceCheckUtils]: 39: Hoare triple {17411#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)); {17411#false} is VALID [2022-04-27 13:03:20,083 INFO L290 TraceCheckUtils]: 38: Hoare triple {17411#false} assume !(#t~post6 < 10);havoc #t~post6; {17411#false} is VALID [2022-04-27 13:03:20,083 INFO L290 TraceCheckUtils]: 37: Hoare triple {17411#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17411#false} is VALID [2022-04-27 13:03:20,083 INFO L290 TraceCheckUtils]: 36: Hoare triple {17411#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; {17411#false} is VALID [2022-04-27 13:03:20,083 INFO L290 TraceCheckUtils]: 35: Hoare triple {17411#false} assume !(~c~0 >= ~b~0); {17411#false} is VALID [2022-04-27 13:03:20,083 INFO L290 TraceCheckUtils]: 34: Hoare triple {17411#false} assume !!(#t~post7 < 10);havoc #t~post7; {17411#false} is VALID [2022-04-27 13:03:20,083 INFO L290 TraceCheckUtils]: 33: Hoare triple {17411#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {17411#false} is VALID [2022-04-27 13:03:20,083 INFO L290 TraceCheckUtils]: 32: Hoare triple {17411#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {17411#false} is VALID [2022-04-27 13:03:20,084 INFO L290 TraceCheckUtils]: 31: Hoare triple {17580#(< |main_#t~post8| 10)} assume !(#t~post8 < 10);havoc #t~post8; {17411#false} is VALID [2022-04-27 13:03:20,084 INFO L290 TraceCheckUtils]: 30: Hoare triple {17584#(< ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {17580#(< |main_#t~post8| 10)} is VALID [2022-04-27 13:03:20,084 INFO L290 TraceCheckUtils]: 29: Hoare triple {17584#(< ~counter~0 10)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {17584#(< ~counter~0 10)} is VALID [2022-04-27 13:03:20,084 INFO L290 TraceCheckUtils]: 28: Hoare triple {17584#(< ~counter~0 10)} assume !!(#t~post7 < 10);havoc #t~post7; {17584#(< ~counter~0 10)} is VALID [2022-04-27 13:03:20,085 INFO L290 TraceCheckUtils]: 27: Hoare triple {17594#(< ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {17584#(< ~counter~0 10)} is VALID [2022-04-27 13:03:20,085 INFO L290 TraceCheckUtils]: 26: Hoare triple {17594#(< ~counter~0 9)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17594#(< ~counter~0 9)} is VALID [2022-04-27 13:03:20,085 INFO L290 TraceCheckUtils]: 25: Hoare triple {17594#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {17594#(< ~counter~0 9)} is VALID [2022-04-27 13:03:20,086 INFO L290 TraceCheckUtils]: 24: Hoare triple {17604#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17594#(< ~counter~0 9)} is VALID [2022-04-27 13:03:20,086 INFO L290 TraceCheckUtils]: 23: Hoare triple {17604#(< ~counter~0 8)} ~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; {17604#(< ~counter~0 8)} is VALID [2022-04-27 13:03:20,086 INFO L290 TraceCheckUtils]: 22: Hoare triple {17604#(< ~counter~0 8)} assume !(~c~0 >= ~b~0); {17604#(< ~counter~0 8)} is VALID [2022-04-27 13:03:20,086 INFO L290 TraceCheckUtils]: 21: Hoare triple {17604#(< ~counter~0 8)} assume !!(#t~post7 < 10);havoc #t~post7; {17604#(< ~counter~0 8)} is VALID [2022-04-27 13:03:20,087 INFO L290 TraceCheckUtils]: 20: Hoare triple {17617#(< ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {17604#(< ~counter~0 8)} is VALID [2022-04-27 13:03:20,087 INFO L290 TraceCheckUtils]: 19: Hoare triple {17617#(< ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17617#(< ~counter~0 7)} is VALID [2022-04-27 13:03:20,087 INFO L290 TraceCheckUtils]: 18: Hoare triple {17617#(< ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {17617#(< ~counter~0 7)} is VALID [2022-04-27 13:03:20,088 INFO L290 TraceCheckUtils]: 17: Hoare triple {17627#(< ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17617#(< ~counter~0 7)} is VALID [2022-04-27 13:03:20,088 INFO L290 TraceCheckUtils]: 16: Hoare triple {17627#(< ~counter~0 6)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {17627#(< ~counter~0 6)} is VALID [2022-04-27 13:03:20,088 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {17410#true} {17627#(< ~counter~0 6)} #96#return; {17627#(< ~counter~0 6)} is VALID [2022-04-27 13:03:20,088 INFO L290 TraceCheckUtils]: 14: Hoare triple {17410#true} assume true; {17410#true} is VALID [2022-04-27 13:03:20,088 INFO L290 TraceCheckUtils]: 13: Hoare triple {17410#true} assume !(0 == ~cond); {17410#true} is VALID [2022-04-27 13:03:20,088 INFO L290 TraceCheckUtils]: 12: Hoare triple {17410#true} ~cond := #in~cond; {17410#true} is VALID [2022-04-27 13:03:20,088 INFO L272 TraceCheckUtils]: 11: Hoare triple {17627#(< ~counter~0 6)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17410#true} is VALID [2022-04-27 13:03:20,088 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17410#true} {17627#(< ~counter~0 6)} #94#return; {17627#(< ~counter~0 6)} is VALID [2022-04-27 13:03:20,089 INFO L290 TraceCheckUtils]: 9: Hoare triple {17410#true} assume true; {17410#true} is VALID [2022-04-27 13:03:20,089 INFO L290 TraceCheckUtils]: 8: Hoare triple {17410#true} assume !(0 == ~cond); {17410#true} is VALID [2022-04-27 13:03:20,089 INFO L290 TraceCheckUtils]: 7: Hoare triple {17410#true} ~cond := #in~cond; {17410#true} is VALID [2022-04-27 13:03:20,089 INFO L272 TraceCheckUtils]: 6: Hoare triple {17627#(< ~counter~0 6)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17410#true} is VALID [2022-04-27 13:03:20,089 INFO L290 TraceCheckUtils]: 5: Hoare triple {17627#(< ~counter~0 6)} 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; {17627#(< ~counter~0 6)} is VALID [2022-04-27 13:03:20,089 INFO L272 TraceCheckUtils]: 4: Hoare triple {17627#(< ~counter~0 6)} call #t~ret9 := main(); {17627#(< ~counter~0 6)} is VALID [2022-04-27 13:03:20,089 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17627#(< ~counter~0 6)} {17410#true} #108#return; {17627#(< ~counter~0 6)} is VALID [2022-04-27 13:03:20,090 INFO L290 TraceCheckUtils]: 2: Hoare triple {17627#(< ~counter~0 6)} assume true; {17627#(< ~counter~0 6)} is VALID [2022-04-27 13:03:20,090 INFO L290 TraceCheckUtils]: 1: Hoare triple {17410#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);~counter~0 := 0; {17627#(< ~counter~0 6)} is VALID [2022-04-27 13:03:20,090 INFO L272 TraceCheckUtils]: 0: Hoare triple {17410#true} call ULTIMATE.init(); {17410#true} is VALID [2022-04-27 13:03:20,090 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 11 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 13:03:20,090 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:20,090 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1948911415] [2022-04-27 13:03:20,090 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:20,090 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1959323746] [2022-04-27 13:03:20,090 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1959323746] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:03:20,091 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:03:20,091 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-27 13:03:20,091 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [681064692] [2022-04-27 13:03:20,091 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:03:20,091 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.857142857142857) internal successors, (54), 14 states have internal predecessors, (54), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 43 [2022-04-27 13:03:20,091 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:20,091 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 3.857142857142857) internal successors, (54), 14 states have internal predecessors, (54), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:03:20,142 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:20,142 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-27 13:03:20,142 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:20,142 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-27 13:03:20,143 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-27 13:03:20,143 INFO L87 Difference]: Start difference. First operand 736 states and 1085 transitions. Second operand has 14 states, 14 states have (on average 3.857142857142857) internal successors, (54), 14 states have internal predecessors, (54), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:03:21,995 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:21,995 INFO L93 Difference]: Finished difference Result 1597 states and 2379 transitions. [2022-04-27 13:03:21,995 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-27 13:03:21,995 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.857142857142857) internal successors, (54), 14 states have internal predecessors, (54), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 43 [2022-04-27 13:03:21,995 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:21,995 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.857142857142857) internal successors, (54), 14 states have internal predecessors, (54), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:03:21,998 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 281 transitions. [2022-04-27 13:03:21,998 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.857142857142857) internal successors, (54), 14 states have internal predecessors, (54), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:03:22,001 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 281 transitions. [2022-04-27 13:03:22,001 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 281 transitions. [2022-04-27 13:03:22,159 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 281 edges. 281 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:22,229 INFO L225 Difference]: With dead ends: 1597 [2022-04-27 13:03:22,229 INFO L226 Difference]: Without dead ends: 1119 [2022-04-27 13:03:22,232 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 92 GetRequests, 73 SyntacticMatches, 0 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 40 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=144, Invalid=276, Unknown=0, NotChecked=0, Total=420 [2022-04-27 13:03:22,233 INFO L413 NwaCegarLoop]: 75 mSDtfsCounter, 237 mSDsluCounter, 330 mSDsCounter, 0 mSdLazyCounter, 171 mSolverCounterSat, 108 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 237 SdHoareTripleChecker+Valid, 405 SdHoareTripleChecker+Invalid, 279 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 108 IncrementalHoareTripleChecker+Valid, 171 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 13:03:22,233 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [237 Valid, 405 Invalid, 279 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [108 Valid, 171 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 13:03:22,234 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1119 states. [2022-04-27 13:03:23,224 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1119 to 1072. [2022-04-27 13:03:23,225 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:23,226 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1119 states. Second operand has 1072 states, 697 states have (on average 1.3113342898134863) internal successors, (914), 730 states have internal predecessors, (914), 318 states have call successors, (318), 57 states have call predecessors, (318), 56 states have return successors, (311), 284 states have call predecessors, (311), 311 states have call successors, (311) [2022-04-27 13:03:23,227 INFO L74 IsIncluded]: Start isIncluded. First operand 1119 states. Second operand has 1072 states, 697 states have (on average 1.3113342898134863) internal successors, (914), 730 states have internal predecessors, (914), 318 states have call successors, (318), 57 states have call predecessors, (318), 56 states have return successors, (311), 284 states have call predecessors, (311), 311 states have call successors, (311) [2022-04-27 13:03:23,228 INFO L87 Difference]: Start difference. First operand 1119 states. Second operand has 1072 states, 697 states have (on average 1.3113342898134863) internal successors, (914), 730 states have internal predecessors, (914), 318 states have call successors, (318), 57 states have call predecessors, (318), 56 states have return successors, (311), 284 states have call predecessors, (311), 311 states have call successors, (311) [2022-04-27 13:03:23,275 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:23,275 INFO L93 Difference]: Finished difference Result 1119 states and 1584 transitions. [2022-04-27 13:03:23,275 INFO L276 IsEmpty]: Start isEmpty. Operand 1119 states and 1584 transitions. [2022-04-27 13:03:23,278 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:23,278 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:23,279 INFO L74 IsIncluded]: Start isIncluded. First operand has 1072 states, 697 states have (on average 1.3113342898134863) internal successors, (914), 730 states have internal predecessors, (914), 318 states have call successors, (318), 57 states have call predecessors, (318), 56 states have return successors, (311), 284 states have call predecessors, (311), 311 states have call successors, (311) Second operand 1119 states. [2022-04-27 13:03:23,280 INFO L87 Difference]: Start difference. First operand has 1072 states, 697 states have (on average 1.3113342898134863) internal successors, (914), 730 states have internal predecessors, (914), 318 states have call successors, (318), 57 states have call predecessors, (318), 56 states have return successors, (311), 284 states have call predecessors, (311), 311 states have call successors, (311) Second operand 1119 states. [2022-04-27 13:03:23,327 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:23,328 INFO L93 Difference]: Finished difference Result 1119 states and 1584 transitions. [2022-04-27 13:03:23,328 INFO L276 IsEmpty]: Start isEmpty. Operand 1119 states and 1584 transitions. [2022-04-27 13:03:23,330 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:23,330 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:23,330 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:23,331 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:23,332 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1072 states, 697 states have (on average 1.3113342898134863) internal successors, (914), 730 states have internal predecessors, (914), 318 states have call successors, (318), 57 states have call predecessors, (318), 56 states have return successors, (311), 284 states have call predecessors, (311), 311 states have call successors, (311) [2022-04-27 13:03:23,395 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1072 states to 1072 states and 1543 transitions. [2022-04-27 13:03:23,396 INFO L78 Accepts]: Start accepts. Automaton has 1072 states and 1543 transitions. Word has length 43 [2022-04-27 13:03:23,396 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:23,396 INFO L495 AbstractCegarLoop]: Abstraction has 1072 states and 1543 transitions. [2022-04-27 13:03:23,397 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 3.857142857142857) internal successors, (54), 14 states have internal predecessors, (54), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:03:23,397 INFO L276 IsEmpty]: Start isEmpty. Operand 1072 states and 1543 transitions. [2022-04-27 13:03:23,397 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-27 13:03:23,397 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:23,397 INFO L195 NwaCegarLoop]: trace histogram [4, 3, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:03:23,432 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2022-04-27 13:03:23,613 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-27 13:03:23,613 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:23,613 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:23,614 INFO L85 PathProgramCache]: Analyzing trace with hash 1262965884, now seen corresponding path program 2 times [2022-04-27 13:03:23,614 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:23,614 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [981492861] [2022-04-27 13:03:23,614 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:23,614 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:23,622 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:23,622 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [847258673] [2022-04-27 13:03:23,622 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 13:03:23,622 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:23,622 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:23,640 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-27 13:03:23,641 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-27 13:03:23,681 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 13:03:23,681 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:03:23,682 INFO L263 TraceCheckSpWp]: Trace formula consists of 189 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-27 13:03:23,691 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:23,692 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:23,788 INFO L272 TraceCheckUtils]: 0: Hoare triple {23972#true} call ULTIMATE.init(); {23972#true} is VALID [2022-04-27 13:03:23,788 INFO L290 TraceCheckUtils]: 1: Hoare triple {23972#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);~counter~0 := 0; {23972#true} is VALID [2022-04-27 13:03:23,788 INFO L290 TraceCheckUtils]: 2: Hoare triple {23972#true} assume true; {23972#true} is VALID [2022-04-27 13:03:23,788 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23972#true} {23972#true} #108#return; {23972#true} is VALID [2022-04-27 13:03:23,788 INFO L272 TraceCheckUtils]: 4: Hoare triple {23972#true} call #t~ret9 := main(); {23972#true} is VALID [2022-04-27 13:03:23,788 INFO L290 TraceCheckUtils]: 5: Hoare triple {23972#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; {23972#true} is VALID [2022-04-27 13:03:23,788 INFO L272 TraceCheckUtils]: 6: Hoare triple {23972#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {23972#true} is VALID [2022-04-27 13:03:23,788 INFO L290 TraceCheckUtils]: 7: Hoare triple {23972#true} ~cond := #in~cond; {23972#true} is VALID [2022-04-27 13:03:23,788 INFO L290 TraceCheckUtils]: 8: Hoare triple {23972#true} assume !(0 == ~cond); {23972#true} is VALID [2022-04-27 13:03:23,788 INFO L290 TraceCheckUtils]: 9: Hoare triple {23972#true} assume true; {23972#true} is VALID [2022-04-27 13:03:23,789 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23972#true} {23972#true} #94#return; {23972#true} is VALID [2022-04-27 13:03:23,789 INFO L272 TraceCheckUtils]: 11: Hoare triple {23972#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {23972#true} is VALID [2022-04-27 13:03:23,789 INFO L290 TraceCheckUtils]: 12: Hoare triple {23972#true} ~cond := #in~cond; {23972#true} is VALID [2022-04-27 13:03:23,789 INFO L290 TraceCheckUtils]: 13: Hoare triple {23972#true} assume !(0 == ~cond); {23972#true} is VALID [2022-04-27 13:03:23,789 INFO L290 TraceCheckUtils]: 14: Hoare triple {23972#true} assume true; {23972#true} is VALID [2022-04-27 13:03:23,789 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {23972#true} {23972#true} #96#return; {23972#true} is VALID [2022-04-27 13:03:23,789 INFO L290 TraceCheckUtils]: 16: Hoare triple {23972#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {23972#true} is VALID [2022-04-27 13:03:23,789 INFO L290 TraceCheckUtils]: 17: Hoare triple {23972#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23972#true} is VALID [2022-04-27 13:03:23,789 INFO L290 TraceCheckUtils]: 18: Hoare triple {23972#true} assume !!(#t~post6 < 10);havoc #t~post6; {23972#true} is VALID [2022-04-27 13:03:23,789 INFO L290 TraceCheckUtils]: 19: Hoare triple {23972#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23972#true} is VALID [2022-04-27 13:03:23,789 INFO L290 TraceCheckUtils]: 20: Hoare triple {23972#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {23972#true} is VALID [2022-04-27 13:03:23,789 INFO L290 TraceCheckUtils]: 21: Hoare triple {23972#true} assume !!(#t~post7 < 10);havoc #t~post7; {23972#true} is VALID [2022-04-27 13:03:23,789 INFO L290 TraceCheckUtils]: 22: Hoare triple {23972#true} assume !(~c~0 >= ~b~0); {24043#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-27 13:03:23,790 INFO L290 TraceCheckUtils]: 23: Hoare triple {24043#(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; {24047#(< main_~b~0 main_~a~0)} is VALID [2022-04-27 13:03:23,790 INFO L290 TraceCheckUtils]: 24: Hoare triple {24047#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24047#(< main_~b~0 main_~a~0)} is VALID [2022-04-27 13:03:23,790 INFO L290 TraceCheckUtils]: 25: Hoare triple {24047#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 10);havoc #t~post6; {24047#(< main_~b~0 main_~a~0)} is VALID [2022-04-27 13:03:23,791 INFO L290 TraceCheckUtils]: 26: Hoare triple {24047#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24057#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 13:03:23,791 INFO L290 TraceCheckUtils]: 27: Hoare triple {24057#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24057#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 13:03:23,791 INFO L290 TraceCheckUtils]: 28: Hoare triple {24057#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 10);havoc #t~post7; {24057#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 13:03:23,792 INFO L290 TraceCheckUtils]: 29: Hoare triple {24057#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {23973#false} is VALID [2022-04-27 13:03:23,792 INFO L290 TraceCheckUtils]: 30: Hoare triple {23973#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; {23973#false} is VALID [2022-04-27 13:03:23,792 INFO L290 TraceCheckUtils]: 31: Hoare triple {23973#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23973#false} is VALID [2022-04-27 13:03:23,792 INFO L290 TraceCheckUtils]: 32: Hoare triple {23973#false} assume !!(#t~post6 < 10);havoc #t~post6; {23973#false} is VALID [2022-04-27 13:03:23,792 INFO L290 TraceCheckUtils]: 33: Hoare triple {23973#false} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23973#false} is VALID [2022-04-27 13:03:23,792 INFO L290 TraceCheckUtils]: 34: Hoare triple {23973#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {23973#false} is VALID [2022-04-27 13:03:23,792 INFO L290 TraceCheckUtils]: 35: Hoare triple {23973#false} assume !!(#t~post7 < 10);havoc #t~post7; {23973#false} is VALID [2022-04-27 13:03:23,792 INFO L290 TraceCheckUtils]: 36: Hoare triple {23973#false} assume !(~c~0 >= ~b~0); {23973#false} is VALID [2022-04-27 13:03:23,792 INFO L290 TraceCheckUtils]: 37: Hoare triple {23973#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; {23973#false} is VALID [2022-04-27 13:03:23,792 INFO L290 TraceCheckUtils]: 38: Hoare triple {23973#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23973#false} is VALID [2022-04-27 13:03:23,792 INFO L290 TraceCheckUtils]: 39: Hoare triple {23973#false} assume !(#t~post6 < 10);havoc #t~post6; {23973#false} is VALID [2022-04-27 13:03:23,792 INFO L272 TraceCheckUtils]: 40: Hoare triple {23973#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)); {23973#false} is VALID [2022-04-27 13:03:23,792 INFO L290 TraceCheckUtils]: 41: Hoare triple {23973#false} ~cond := #in~cond; {23973#false} is VALID [2022-04-27 13:03:23,793 INFO L290 TraceCheckUtils]: 42: Hoare triple {23973#false} assume 0 == ~cond; {23973#false} is VALID [2022-04-27 13:03:23,793 INFO L290 TraceCheckUtils]: 43: Hoare triple {23973#false} assume !false; {23973#false} is VALID [2022-04-27 13:03:23,793 INFO L134 CoverageAnalysis]: Checked inductivity of 31 backedges. 24 proven. 0 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2022-04-27 13:03:23,793 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:03:23,793 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:23,793 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [981492861] [2022-04-27 13:03:23,793 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:23,793 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [847258673] [2022-04-27 13:03:23,793 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [847258673] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:03:23,793 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:03:23,793 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 13:03:23,793 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [428725942] [2022-04-27 13:03:23,793 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:03:23,794 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 6.2) internal successors, (31), 5 states have internal predecessors, (31), 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 44 [2022-04-27 13:03:23,794 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:23,794 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 6.2) internal successors, (31), 5 states have internal predecessors, (31), 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-27 13:03:23,815 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-27 13:03:23,815 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:03:23,815 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:23,815 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:03:23,815 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 13:03:23,815 INFO L87 Difference]: Start difference. First operand 1072 states and 1543 transitions. Second operand has 5 states, 5 states have (on average 6.2) internal successors, (31), 5 states have internal predecessors, (31), 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-27 13:03:26,062 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:26,063 INFO L93 Difference]: Finished difference Result 1700 states and 2539 transitions. [2022-04-27 13:03:26,063 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 13:03:26,063 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 6.2) internal successors, (31), 5 states have internal predecessors, (31), 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 44 [2022-04-27 13:03:26,063 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:26,063 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 6.2) internal successors, (31), 5 states have internal predecessors, (31), 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-27 13:03:26,064 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 124 transitions. [2022-04-27 13:03:26,064 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 6.2) internal successors, (31), 5 states have internal predecessors, (31), 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-27 13:03:26,065 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 124 transitions. [2022-04-27 13:03:26,065 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 124 transitions. [2022-04-27 13:03:26,143 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:26,206 INFO L225 Difference]: With dead ends: 1700 [2022-04-27 13:03:26,206 INFO L226 Difference]: Without dead ends: 1234 [2022-04-27 13:03:26,207 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 46 GetRequests, 41 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-27 13:03:26,207 INFO L413 NwaCegarLoop]: 62 mSDtfsCounter, 29 mSDsluCounter, 108 mSDsCounter, 0 mSdLazyCounter, 87 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 170 SdHoareTripleChecker+Invalid, 96 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 87 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 13:03:26,207 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [33 Valid, 170 Invalid, 96 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 87 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 13:03:26,209 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1234 states. [2022-04-27 13:03:27,269 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1234 to 995. [2022-04-27 13:03:27,269 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:27,271 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1234 states. Second operand has 995 states, 660 states have (on average 1.3015151515151515) internal successors, (859), 690 states have internal predecessors, (859), 278 states have call successors, (278), 57 states have call predecessors, (278), 56 states have return successors, (271), 247 states have call predecessors, (271), 271 states have call successors, (271) [2022-04-27 13:03:27,271 INFO L74 IsIncluded]: Start isIncluded. First operand 1234 states. Second operand has 995 states, 660 states have (on average 1.3015151515151515) internal successors, (859), 690 states have internal predecessors, (859), 278 states have call successors, (278), 57 states have call predecessors, (278), 56 states have return successors, (271), 247 states have call predecessors, (271), 271 states have call successors, (271) [2022-04-27 13:03:27,272 INFO L87 Difference]: Start difference. First operand 1234 states. Second operand has 995 states, 660 states have (on average 1.3015151515151515) internal successors, (859), 690 states have internal predecessors, (859), 278 states have call successors, (278), 57 states have call predecessors, (278), 56 states have return successors, (271), 247 states have call predecessors, (271), 271 states have call successors, (271) [2022-04-27 13:03:27,337 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:27,337 INFO L93 Difference]: Finished difference Result 1234 states and 1815 transitions. [2022-04-27 13:03:27,337 INFO L276 IsEmpty]: Start isEmpty. Operand 1234 states and 1815 transitions. [2022-04-27 13:03:27,341 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:27,341 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:27,342 INFO L74 IsIncluded]: Start isIncluded. First operand has 995 states, 660 states have (on average 1.3015151515151515) internal successors, (859), 690 states have internal predecessors, (859), 278 states have call successors, (278), 57 states have call predecessors, (278), 56 states have return successors, (271), 247 states have call predecessors, (271), 271 states have call successors, (271) Second operand 1234 states. [2022-04-27 13:03:27,343 INFO L87 Difference]: Start difference. First operand has 995 states, 660 states have (on average 1.3015151515151515) internal successors, (859), 690 states have internal predecessors, (859), 278 states have call successors, (278), 57 states have call predecessors, (278), 56 states have return successors, (271), 247 states have call predecessors, (271), 271 states have call successors, (271) Second operand 1234 states. [2022-04-27 13:03:27,404 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:27,405 INFO L93 Difference]: Finished difference Result 1234 states and 1815 transitions. [2022-04-27 13:03:27,405 INFO L276 IsEmpty]: Start isEmpty. Operand 1234 states and 1815 transitions. [2022-04-27 13:03:27,408 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:27,408 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:27,409 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:27,409 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:27,410 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 995 states, 660 states have (on average 1.3015151515151515) internal successors, (859), 690 states have internal predecessors, (859), 278 states have call successors, (278), 57 states have call predecessors, (278), 56 states have return successors, (271), 247 states have call predecessors, (271), 271 states have call successors, (271) [2022-04-27 13:03:27,462 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 995 states to 995 states and 1408 transitions. [2022-04-27 13:03:27,463 INFO L78 Accepts]: Start accepts. Automaton has 995 states and 1408 transitions. Word has length 44 [2022-04-27 13:03:27,463 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:27,463 INFO L495 AbstractCegarLoop]: Abstraction has 995 states and 1408 transitions. [2022-04-27 13:03:27,463 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 6.2) internal successors, (31), 5 states have internal predecessors, (31), 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-27 13:03:27,463 INFO L276 IsEmpty]: Start isEmpty. Operand 995 states and 1408 transitions. [2022-04-27 13:03:27,464 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-27 13:03:27,464 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:27,464 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:03:27,482 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2022-04-27 13:03:27,679 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-27 13:03:27,679 INFO L420 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:27,680 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:27,680 INFO L85 PathProgramCache]: Analyzing trace with hash 958119025, now seen corresponding path program 1 times [2022-04-27 13:03:27,680 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:27,680 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [188107610] [2022-04-27 13:03:27,680 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:27,680 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:27,690 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:27,690 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [420981119] [2022-04-27 13:03:27,690 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:27,690 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:27,691 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:27,700 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-27 13:03:27,701 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-27 13:03:27,742 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:27,743 INFO L263 TraceCheckSpWp]: Trace formula consists of 187 conjuncts, 57 conjunts are in the unsatisfiable core [2022-04-27 13:03:27,752 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:27,752 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:28,417 INFO L272 TraceCheckUtils]: 0: Hoare triple {30652#true} call ULTIMATE.init(); {30652#true} is VALID [2022-04-27 13:03:28,417 INFO L290 TraceCheckUtils]: 1: Hoare triple {30652#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);~counter~0 := 0; {30652#true} is VALID [2022-04-27 13:03:28,417 INFO L290 TraceCheckUtils]: 2: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:03:28,417 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {30652#true} {30652#true} #108#return; {30652#true} is VALID [2022-04-27 13:03:28,417 INFO L272 TraceCheckUtils]: 4: Hoare triple {30652#true} call #t~ret9 := main(); {30652#true} is VALID [2022-04-27 13:03:28,417 INFO L290 TraceCheckUtils]: 5: Hoare triple {30652#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; {30652#true} is VALID [2022-04-27 13:03:28,417 INFO L272 TraceCheckUtils]: 6: Hoare triple {30652#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {30652#true} is VALID [2022-04-27 13:03:28,417 INFO L290 TraceCheckUtils]: 7: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:03:28,417 INFO L290 TraceCheckUtils]: 8: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:03:28,417 INFO L290 TraceCheckUtils]: 9: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:03:28,417 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {30652#true} {30652#true} #94#return; {30652#true} is VALID [2022-04-27 13:03:28,417 INFO L272 TraceCheckUtils]: 11: Hoare triple {30652#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {30652#true} is VALID [2022-04-27 13:03:28,417 INFO L290 TraceCheckUtils]: 12: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:03:28,418 INFO L290 TraceCheckUtils]: 13: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:03:28,418 INFO L290 TraceCheckUtils]: 14: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:03:28,418 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {30652#true} {30652#true} #96#return; {30652#true} is VALID [2022-04-27 13:03:28,431 INFO L290 TraceCheckUtils]: 16: Hoare triple {30652#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {30705#(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-27 13:03:28,432 INFO L290 TraceCheckUtils]: 17: Hoare triple {30705#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {30705#(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-27 13:03:28,432 INFO L290 TraceCheckUtils]: 18: Hoare triple {30705#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {30705#(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-27 13:03:28,432 INFO L290 TraceCheckUtils]: 19: Hoare triple {30705#(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; {30715#(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-27 13:03:28,433 INFO L290 TraceCheckUtils]: 20: Hoare triple {30715#(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))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {30715#(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-27 13:03:28,433 INFO L290 TraceCheckUtils]: 21: Hoare triple {30715#(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 !!(#t~post7 < 10);havoc #t~post7; {30715#(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-27 13:03:28,434 INFO L290 TraceCheckUtils]: 22: Hoare triple {30715#(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; {30725#(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-27 13:03:28,434 INFO L290 TraceCheckUtils]: 23: Hoare triple {30725#(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))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {30725#(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-27 13:03:28,435 INFO L290 TraceCheckUtils]: 24: Hoare triple {30725#(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 !!(#t~post8 < 10);havoc #t~post8; {30725#(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-27 13:03:28,435 INFO L272 TraceCheckUtils]: 25: Hoare triple {30725#(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)); {30652#true} is VALID [2022-04-27 13:03:28,435 INFO L290 TraceCheckUtils]: 26: Hoare triple {30652#true} ~cond := #in~cond; {30738#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:28,435 INFO L290 TraceCheckUtils]: 27: Hoare triple {30738#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:03:28,436 INFO L290 TraceCheckUtils]: 28: Hoare triple {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:03:28,436 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} {30725#(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))} #98#return; {30749#(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-27 13:03:28,436 INFO L272 TraceCheckUtils]: 30: Hoare triple {30749#(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)); {30652#true} is VALID [2022-04-27 13:03:28,437 INFO L290 TraceCheckUtils]: 31: Hoare triple {30652#true} ~cond := #in~cond; {30738#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:28,437 INFO L290 TraceCheckUtils]: 32: Hoare triple {30738#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:03:28,437 INFO L290 TraceCheckUtils]: 33: Hoare triple {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:03:28,438 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} {30749#(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))} #100#return; {30749#(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-27 13:03:28,438 INFO L272 TraceCheckUtils]: 35: Hoare triple {30749#(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)); {30652#true} is VALID [2022-04-27 13:03:28,438 INFO L290 TraceCheckUtils]: 36: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:03:28,438 INFO L290 TraceCheckUtils]: 37: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:03:28,438 INFO L290 TraceCheckUtils]: 38: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:03:28,438 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {30652#true} {30749#(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))} #102#return; {30749#(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-27 13:03:28,438 INFO L272 TraceCheckUtils]: 40: Hoare triple {30749#(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)); {30652#true} is VALID [2022-04-27 13:03:28,438 INFO L290 TraceCheckUtils]: 41: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:03:28,438 INFO L290 TraceCheckUtils]: 42: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:03:28,439 INFO L290 TraceCheckUtils]: 43: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:03:28,439 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {30652#true} {30749#(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))} #104#return; {30749#(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-27 13:03:28,439 INFO L290 TraceCheckUtils]: 45: Hoare triple {30749#(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); {30749#(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-27 13:03:28,440 INFO L290 TraceCheckUtils]: 46: Hoare triple {30749#(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; {30801#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:28,440 INFO L290 TraceCheckUtils]: 47: Hoare triple {30801#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {30801#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:28,441 INFO L290 TraceCheckUtils]: 48: Hoare triple {30801#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post7 < 10);havoc #t~post7; {30801#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:28,441 INFO L290 TraceCheckUtils]: 49: Hoare triple {30801#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {30801#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:28,441 INFO L290 TraceCheckUtils]: 50: Hoare triple {30801#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= 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; {30814#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:28,442 INFO L290 TraceCheckUtils]: 51: Hoare triple {30814#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {30814#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:28,442 INFO L290 TraceCheckUtils]: 52: Hoare triple {30814#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post6 < 10);havoc #t~post6; {30814#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:28,442 INFO L290 TraceCheckUtils]: 53: Hoare triple {30814#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !(0 != ~b~0); {30824#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= (+ main_~x~0 (* (- 1) main_~y~0)) 0) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:28,443 INFO L272 TraceCheckUtils]: 54: Hoare triple {30824#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= (+ main_~x~0 (* (- 1) main_~y~0)) 0) (= main_~a~0 main_~y~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)); {30828#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:03:28,443 INFO L290 TraceCheckUtils]: 55: Hoare triple {30828#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {30832#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:28,443 INFO L290 TraceCheckUtils]: 56: Hoare triple {30832#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {30653#false} is VALID [2022-04-27 13:03:28,444 INFO L290 TraceCheckUtils]: 57: Hoare triple {30653#false} assume !false; {30653#false} is VALID [2022-04-27 13:03:28,444 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 6 proven. 20 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-27 13:03:28,444 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:04:15,570 INFO L290 TraceCheckUtils]: 57: Hoare triple {30653#false} assume !false; {30653#false} is VALID [2022-04-27 13:04:15,570 INFO L290 TraceCheckUtils]: 56: Hoare triple {30832#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {30653#false} is VALID [2022-04-27 13:04:15,570 INFO L290 TraceCheckUtils]: 55: Hoare triple {30828#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {30832#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:04:15,571 INFO L272 TraceCheckUtils]: 54: Hoare triple {30848#(= (+ (* 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)); {30828#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:04:15,571 INFO L290 TraceCheckUtils]: 53: Hoare triple {30852#(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); {30848#(= (+ (* 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-27 13:04:15,572 INFO L290 TraceCheckUtils]: 52: Hoare triple {30852#(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 !!(#t~post6 < 10);havoc #t~post6; {30852#(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-27 13:04:15,572 INFO L290 TraceCheckUtils]: 51: Hoare triple {30852#(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)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {30852#(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-27 13:04:16,098 INFO L290 TraceCheckUtils]: 50: Hoare triple {30862#(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; {30852#(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-27 13:04:16,099 INFO L290 TraceCheckUtils]: 49: Hoare triple {30862#(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); {30862#(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-27 13:04:16,099 INFO L290 TraceCheckUtils]: 48: Hoare triple {30862#(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 !!(#t~post7 < 10);havoc #t~post7; {30862#(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-27 13:04:16,100 INFO L290 TraceCheckUtils]: 47: Hoare triple {30862#(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))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {30862#(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-27 13:04:16,125 INFO L290 TraceCheckUtils]: 46: Hoare triple {30875#(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; {30862#(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-27 13:04:16,126 INFO L290 TraceCheckUtils]: 45: Hoare triple {30875#(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); {30875#(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-27 13:04:16,127 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {30652#true} {30875#(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))))} #104#return; {30875#(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-27 13:04:16,127 INFO L290 TraceCheckUtils]: 43: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:04:16,127 INFO L290 TraceCheckUtils]: 42: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:04:16,127 INFO L290 TraceCheckUtils]: 41: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:04:16,127 INFO L272 TraceCheckUtils]: 40: Hoare triple {30875#(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)); {30652#true} is VALID [2022-04-27 13:04:16,128 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {30652#true} {30875#(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))))} #102#return; {30875#(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-27 13:04:16,128 INFO L290 TraceCheckUtils]: 38: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:04:16,128 INFO L290 TraceCheckUtils]: 37: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:04:16,128 INFO L290 TraceCheckUtils]: 36: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:04:16,128 INFO L272 TraceCheckUtils]: 35: Hoare triple {30875#(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)); {30652#true} is VALID [2022-04-27 13:04:16,130 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} {30912#(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))))} #100#return; {30875#(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-27 13:04:16,130 INFO L290 TraceCheckUtils]: 33: Hoare triple {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:04:16,130 INFO L290 TraceCheckUtils]: 32: Hoare triple {30922#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:04:16,131 INFO L290 TraceCheckUtils]: 31: Hoare triple {30652#true} ~cond := #in~cond; {30922#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:04:16,131 INFO L272 TraceCheckUtils]: 30: Hoare triple {30912#(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)); {30652#true} is VALID [2022-04-27 13:04:16,132 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} {30929#(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))))} #98#return; {30912#(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-27 13:04:16,132 INFO L290 TraceCheckUtils]: 28: Hoare triple {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:04:16,133 INFO L290 TraceCheckUtils]: 27: Hoare triple {30922#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:04:16,133 INFO L290 TraceCheckUtils]: 26: Hoare triple {30652#true} ~cond := #in~cond; {30922#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:04:16,133 INFO L272 TraceCheckUtils]: 25: Hoare triple {30929#(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)); {30652#true} is VALID [2022-04-27 13:04:16,134 INFO L290 TraceCheckUtils]: 24: Hoare triple {30929#(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 !!(#t~post8 < 10);havoc #t~post8; {30929#(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-27 13:04:16,134 INFO L290 TraceCheckUtils]: 23: Hoare triple {30929#(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))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {30929#(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-27 13:04:16,135 INFO L290 TraceCheckUtils]: 22: Hoare triple {30951#(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; {30929#(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-27 13:04:16,136 INFO L290 TraceCheckUtils]: 21: Hoare triple {30951#(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 !!(#t~post7 < 10);havoc #t~post7; {30951#(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-27 13:04:16,137 INFO L290 TraceCheckUtils]: 20: Hoare triple {30951#(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)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {30951#(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-27 13:04:16,137 INFO L290 TraceCheckUtils]: 19: Hoare triple {30652#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30951#(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-27 13:04:16,137 INFO L290 TraceCheckUtils]: 18: Hoare triple {30652#true} assume !!(#t~post6 < 10);havoc #t~post6; {30652#true} is VALID [2022-04-27 13:04:16,138 INFO L290 TraceCheckUtils]: 17: Hoare triple {30652#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {30652#true} is VALID [2022-04-27 13:04:16,138 INFO L290 TraceCheckUtils]: 16: Hoare triple {30652#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {30652#true} is VALID [2022-04-27 13:04:16,138 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {30652#true} {30652#true} #96#return; {30652#true} is VALID [2022-04-27 13:04:16,138 INFO L290 TraceCheckUtils]: 14: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:04:16,138 INFO L290 TraceCheckUtils]: 13: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:04:16,138 INFO L290 TraceCheckUtils]: 12: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:04:16,138 INFO L272 TraceCheckUtils]: 11: Hoare triple {30652#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {30652#true} is VALID [2022-04-27 13:04:16,138 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {30652#true} {30652#true} #94#return; {30652#true} is VALID [2022-04-27 13:04:16,138 INFO L290 TraceCheckUtils]: 9: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:04:16,138 INFO L290 TraceCheckUtils]: 8: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:04:16,138 INFO L290 TraceCheckUtils]: 7: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:04:16,138 INFO L272 TraceCheckUtils]: 6: Hoare triple {30652#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {30652#true} is VALID [2022-04-27 13:04:16,138 INFO L290 TraceCheckUtils]: 5: Hoare triple {30652#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; {30652#true} is VALID [2022-04-27 13:04:16,138 INFO L272 TraceCheckUtils]: 4: Hoare triple {30652#true} call #t~ret9 := main(); {30652#true} is VALID [2022-04-27 13:04:16,138 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {30652#true} {30652#true} #108#return; {30652#true} is VALID [2022-04-27 13:04:16,138 INFO L290 TraceCheckUtils]: 2: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:04:16,139 INFO L290 TraceCheckUtils]: 1: Hoare triple {30652#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);~counter~0 := 0; {30652#true} is VALID [2022-04-27 13:04:16,139 INFO L272 TraceCheckUtils]: 0: Hoare triple {30652#true} call ULTIMATE.init(); {30652#true} is VALID [2022-04-27 13:04:16,139 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 9 proven. 17 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-27 13:04:16,139 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:04:16,139 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [188107610] [2022-04-27 13:04:16,139 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:04:16,139 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [420981119] [2022-04-27 13:04:16,139 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [420981119] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:04:16,139 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:04:16,139 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 21 [2022-04-27 13:04:16,139 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [305250156] [2022-04-27 13:04:16,140 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:04:16,140 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 18 states have (on average 2.9444444444444446) internal successors, (53), 19 states have internal predecessors, (53), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (11), 4 states have call predecessors, (11), 6 states have call successors, (11) Word has length 58 [2022-04-27 13:04:16,140 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:04:16,140 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 21 states, 18 states have (on average 2.9444444444444446) internal successors, (53), 19 states have internal predecessors, (53), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (11), 4 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-27 13:04:16,324 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-27 13:04:16,324 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-04-27 13:04:16,324 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:04:16,325 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-04-27 13:04:16,325 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=349, Unknown=0, NotChecked=0, Total=420 [2022-04-27 13:04:16,325 INFO L87 Difference]: Start difference. First operand 995 states and 1408 transitions. Second operand has 21 states, 18 states have (on average 2.9444444444444446) internal successors, (53), 19 states have internal predecessors, (53), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (11), 4 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-27 13:04:33,658 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:33,658 INFO L93 Difference]: Finished difference Result 1412 states and 2014 transitions. [2022-04-27 13:04:33,658 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2022-04-27 13:04:33,658 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 18 states have (on average 2.9444444444444446) internal successors, (53), 19 states have internal predecessors, (53), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (11), 4 states have call predecessors, (11), 6 states have call successors, (11) Word has length 58 [2022-04-27 13:04:33,658 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:04:33,659 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 18 states have (on average 2.9444444444444446) internal successors, (53), 19 states have internal predecessors, (53), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (11), 4 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-27 13:04:33,663 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 308 transitions. [2022-04-27 13:04:33,663 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 18 states have (on average 2.9444444444444446) internal successors, (53), 19 states have internal predecessors, (53), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (11), 4 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-27 13:04:33,673 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 308 transitions. [2022-04-27 13:04:33,673 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 29 states and 308 transitions. [2022-04-27 13:04:42,300 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 308 edges. 307 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-27 13:04:42,379 INFO L225 Difference]: With dead ends: 1412 [2022-04-27 13:04:42,379 INFO L226 Difference]: Without dead ends: 1404 [2022-04-27 13:04:42,380 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 134 GetRequests, 95 SyntacticMatches, 1 SemanticMatches, 38 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 274 ImplicationChecksByTransitivity, 1.5s TimeCoverageRelationStatistics Valid=261, Invalid=1299, Unknown=0, NotChecked=0, Total=1560 [2022-04-27 13:04:42,380 INFO L413 NwaCegarLoop]: 60 mSDtfsCounter, 166 mSDsluCounter, 609 mSDsCounter, 0 mSdLazyCounter, 1343 mSolverCounterSat, 236 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 8.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 183 SdHoareTripleChecker+Valid, 669 SdHoareTripleChecker+Invalid, 1579 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 236 IncrementalHoareTripleChecker+Valid, 1343 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 8.2s IncrementalHoareTripleChecker+Time [2022-04-27 13:04:42,380 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [183 Valid, 669 Invalid, 1579 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [236 Valid, 1343 Invalid, 0 Unknown, 0 Unchecked, 8.2s Time] [2022-04-27 13:04:42,382 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1404 states. [2022-04-27 13:04:44,337 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1404 to 1226. [2022-04-27 13:04:44,337 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:04:44,339 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1404 states. Second operand has 1226 states, 845 states have (on average 1.2970414201183431) internal successors, (1096), 864 states have internal predecessors, (1096), 308 states have call successors, (308), 73 states have call predecessors, (308), 72 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) [2022-04-27 13:04:44,340 INFO L74 IsIncluded]: Start isIncluded. First operand 1404 states. Second operand has 1226 states, 845 states have (on average 1.2970414201183431) internal successors, (1096), 864 states have internal predecessors, (1096), 308 states have call successors, (308), 73 states have call predecessors, (308), 72 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) [2022-04-27 13:04:44,341 INFO L87 Difference]: Start difference. First operand 1404 states. Second operand has 1226 states, 845 states have (on average 1.2970414201183431) internal successors, (1096), 864 states have internal predecessors, (1096), 308 states have call successors, (308), 73 states have call predecessors, (308), 72 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) [2022-04-27 13:04:44,403 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:44,403 INFO L93 Difference]: Finished difference Result 1404 states and 1984 transitions. [2022-04-27 13:04:44,403 INFO L276 IsEmpty]: Start isEmpty. Operand 1404 states and 1984 transitions. [2022-04-27 13:04:44,407 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:44,407 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:44,408 INFO L74 IsIncluded]: Start isIncluded. First operand has 1226 states, 845 states have (on average 1.2970414201183431) internal successors, (1096), 864 states have internal predecessors, (1096), 308 states have call successors, (308), 73 states have call predecessors, (308), 72 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) Second operand 1404 states. [2022-04-27 13:04:44,409 INFO L87 Difference]: Start difference. First operand has 1226 states, 845 states have (on average 1.2970414201183431) internal successors, (1096), 864 states have internal predecessors, (1096), 308 states have call successors, (308), 73 states have call predecessors, (308), 72 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) Second operand 1404 states. [2022-04-27 13:04:44,470 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:44,470 INFO L93 Difference]: Finished difference Result 1404 states and 1984 transitions. [2022-04-27 13:04:44,470 INFO L276 IsEmpty]: Start isEmpty. Operand 1404 states and 1984 transitions. [2022-04-27 13:04:44,473 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:44,473 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:44,473 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:04:44,473 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:04:44,474 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1226 states, 845 states have (on average 1.2970414201183431) internal successors, (1096), 864 states have internal predecessors, (1096), 308 states have call successors, (308), 73 states have call predecessors, (308), 72 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) [2022-04-27 13:04:44,538 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1226 states to 1226 states and 1707 transitions. [2022-04-27 13:04:44,538 INFO L78 Accepts]: Start accepts. Automaton has 1226 states and 1707 transitions. Word has length 58 [2022-04-27 13:04:44,539 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:04:44,539 INFO L495 AbstractCegarLoop]: Abstraction has 1226 states and 1707 transitions. [2022-04-27 13:04:44,540 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 18 states have (on average 2.9444444444444446) internal successors, (53), 19 states have internal predecessors, (53), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (11), 4 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-27 13:04:44,540 INFO L276 IsEmpty]: Start isEmpty. Operand 1226 states and 1707 transitions. [2022-04-27 13:04:44,540 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2022-04-27 13:04:44,540 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:04:44,540 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:04:44,560 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-27 13:04:44,756 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-27 13:04:44,756 INFO L420 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:04:44,757 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:04:44,757 INFO L85 PathProgramCache]: Analyzing trace with hash 1288112160, now seen corresponding path program 1 times [2022-04-27 13:04:44,757 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:04:44,757 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1136499305] [2022-04-27 13:04:44,757 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:04:44,757 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:04:44,769 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:04:44,770 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [197992033] [2022-04-27 13:04:44,770 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:04:44,770 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:04:44,770 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:04:44,770 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-27 13:04:44,772 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-27 13:04:44,817 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:04:44,817 INFO L263 TraceCheckSpWp]: Trace formula consists of 215 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-27 13:04:44,830 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:04:44,831 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:04:45,175 INFO L272 TraceCheckUtils]: 0: Hoare triple {37759#true} call ULTIMATE.init(); {37759#true} is VALID [2022-04-27 13:04:45,175 INFO L290 TraceCheckUtils]: 1: Hoare triple {37759#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);~counter~0 := 0; {37767#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:45,176 INFO L290 TraceCheckUtils]: 2: Hoare triple {37767#(<= ~counter~0 0)} assume true; {37767#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:45,176 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37767#(<= ~counter~0 0)} {37759#true} #108#return; {37767#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:45,176 INFO L272 TraceCheckUtils]: 4: Hoare triple {37767#(<= ~counter~0 0)} call #t~ret9 := main(); {37767#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:45,177 INFO L290 TraceCheckUtils]: 5: Hoare triple {37767#(<= ~counter~0 0)} 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; {37767#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:45,177 INFO L272 TraceCheckUtils]: 6: Hoare triple {37767#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {37767#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:45,177 INFO L290 TraceCheckUtils]: 7: Hoare triple {37767#(<= ~counter~0 0)} ~cond := #in~cond; {37767#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:45,177 INFO L290 TraceCheckUtils]: 8: Hoare triple {37767#(<= ~counter~0 0)} assume !(0 == ~cond); {37767#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:45,178 INFO L290 TraceCheckUtils]: 9: Hoare triple {37767#(<= ~counter~0 0)} assume true; {37767#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:45,178 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {37767#(<= ~counter~0 0)} {37767#(<= ~counter~0 0)} #94#return; {37767#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:45,179 INFO L272 TraceCheckUtils]: 11: Hoare triple {37767#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {37767#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:45,179 INFO L290 TraceCheckUtils]: 12: Hoare triple {37767#(<= ~counter~0 0)} ~cond := #in~cond; {37767#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:45,179 INFO L290 TraceCheckUtils]: 13: Hoare triple {37767#(<= ~counter~0 0)} assume !(0 == ~cond); {37767#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:45,180 INFO L290 TraceCheckUtils]: 14: Hoare triple {37767#(<= ~counter~0 0)} assume true; {37767#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:45,180 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {37767#(<= ~counter~0 0)} {37767#(<= ~counter~0 0)} #96#return; {37767#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:45,180 INFO L290 TraceCheckUtils]: 16: Hoare triple {37767#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {37767#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:45,181 INFO L290 TraceCheckUtils]: 17: Hoare triple {37767#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {37816#(<= ~counter~0 1)} is VALID [2022-04-27 13:04:45,181 INFO L290 TraceCheckUtils]: 18: Hoare triple {37816#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {37816#(<= ~counter~0 1)} is VALID [2022-04-27 13:04:45,182 INFO L290 TraceCheckUtils]: 19: Hoare triple {37816#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37816#(<= ~counter~0 1)} is VALID [2022-04-27 13:04:45,182 INFO L290 TraceCheckUtils]: 20: Hoare triple {37816#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {37826#(<= ~counter~0 2)} is VALID [2022-04-27 13:04:45,182 INFO L290 TraceCheckUtils]: 21: Hoare triple {37826#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {37826#(<= ~counter~0 2)} is VALID [2022-04-27 13:04:45,183 INFO L290 TraceCheckUtils]: 22: Hoare triple {37826#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {37826#(<= ~counter~0 2)} is VALID [2022-04-27 13:04:45,183 INFO L290 TraceCheckUtils]: 23: Hoare triple {37826#(<= ~counter~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; {37826#(<= ~counter~0 2)} is VALID [2022-04-27 13:04:45,183 INFO L290 TraceCheckUtils]: 24: Hoare triple {37826#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {37839#(<= ~counter~0 3)} is VALID [2022-04-27 13:04:45,184 INFO L290 TraceCheckUtils]: 25: Hoare triple {37839#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {37839#(<= ~counter~0 3)} is VALID [2022-04-27 13:04:45,184 INFO L290 TraceCheckUtils]: 26: Hoare triple {37839#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37839#(<= ~counter~0 3)} is VALID [2022-04-27 13:04:45,184 INFO L290 TraceCheckUtils]: 27: Hoare triple {37839#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {37849#(<= ~counter~0 4)} is VALID [2022-04-27 13:04:45,185 INFO L290 TraceCheckUtils]: 28: Hoare triple {37849#(<= ~counter~0 4)} assume !!(#t~post7 < 10);havoc #t~post7; {37849#(<= ~counter~0 4)} is VALID [2022-04-27 13:04:45,185 INFO L290 TraceCheckUtils]: 29: Hoare triple {37849#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37849#(<= ~counter~0 4)} is VALID [2022-04-27 13:04:45,185 INFO L290 TraceCheckUtils]: 30: Hoare triple {37849#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,186 INFO L290 TraceCheckUtils]: 31: Hoare triple {37859#(<= ~counter~0 5)} assume !!(#t~post8 < 10);havoc #t~post8; {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,186 INFO L272 TraceCheckUtils]: 32: Hoare triple {37859#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,187 INFO L290 TraceCheckUtils]: 33: Hoare triple {37859#(<= ~counter~0 5)} ~cond := #in~cond; {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,187 INFO L290 TraceCheckUtils]: 34: Hoare triple {37859#(<= ~counter~0 5)} assume !(0 == ~cond); {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,187 INFO L290 TraceCheckUtils]: 35: Hoare triple {37859#(<= ~counter~0 5)} assume true; {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,188 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {37859#(<= ~counter~0 5)} {37859#(<= ~counter~0 5)} #98#return; {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,188 INFO L272 TraceCheckUtils]: 37: Hoare triple {37859#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,188 INFO L290 TraceCheckUtils]: 38: Hoare triple {37859#(<= ~counter~0 5)} ~cond := #in~cond; {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,189 INFO L290 TraceCheckUtils]: 39: Hoare triple {37859#(<= ~counter~0 5)} assume !(0 == ~cond); {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,189 INFO L290 TraceCheckUtils]: 40: Hoare triple {37859#(<= ~counter~0 5)} assume true; {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,189 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {37859#(<= ~counter~0 5)} {37859#(<= ~counter~0 5)} #100#return; {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,190 INFO L272 TraceCheckUtils]: 42: Hoare triple {37859#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,190 INFO L290 TraceCheckUtils]: 43: Hoare triple {37859#(<= ~counter~0 5)} ~cond := #in~cond; {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,190 INFO L290 TraceCheckUtils]: 44: Hoare triple {37859#(<= ~counter~0 5)} assume !(0 == ~cond); {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,191 INFO L290 TraceCheckUtils]: 45: Hoare triple {37859#(<= ~counter~0 5)} assume true; {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,191 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {37859#(<= ~counter~0 5)} {37859#(<= ~counter~0 5)} #102#return; {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,192 INFO L272 TraceCheckUtils]: 47: Hoare triple {37859#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,192 INFO L290 TraceCheckUtils]: 48: Hoare triple {37859#(<= ~counter~0 5)} ~cond := #in~cond; {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,192 INFO L290 TraceCheckUtils]: 49: Hoare triple {37859#(<= ~counter~0 5)} assume !(0 == ~cond); {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,192 INFO L290 TraceCheckUtils]: 50: Hoare triple {37859#(<= ~counter~0 5)} assume true; {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,193 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {37859#(<= ~counter~0 5)} {37859#(<= ~counter~0 5)} #104#return; {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,193 INFO L290 TraceCheckUtils]: 52: Hoare triple {37859#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,193 INFO L290 TraceCheckUtils]: 53: Hoare triple {37859#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,194 INFO L290 TraceCheckUtils]: 54: Hoare triple {37859#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {37932#(<= ~counter~0 6)} is VALID [2022-04-27 13:04:45,194 INFO L290 TraceCheckUtils]: 55: Hoare triple {37932#(<= ~counter~0 6)} assume !!(#t~post7 < 10);havoc #t~post7; {37932#(<= ~counter~0 6)} is VALID [2022-04-27 13:04:45,195 INFO L290 TraceCheckUtils]: 56: Hoare triple {37932#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {37932#(<= ~counter~0 6)} is VALID [2022-04-27 13:04:45,195 INFO L290 TraceCheckUtils]: 57: Hoare triple {37932#(<= ~counter~0 6)} ~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; {37932#(<= ~counter~0 6)} is VALID [2022-04-27 13:04:45,195 INFO L290 TraceCheckUtils]: 58: Hoare triple {37932#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {37945#(<= |main_#t~post6| 6)} is VALID [2022-04-27 13:04:45,195 INFO L290 TraceCheckUtils]: 59: Hoare triple {37945#(<= |main_#t~post6| 6)} assume !(#t~post6 < 10);havoc #t~post6; {37760#false} is VALID [2022-04-27 13:04:45,196 INFO L272 TraceCheckUtils]: 60: Hoare triple {37760#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)); {37760#false} is VALID [2022-04-27 13:04:45,196 INFO L290 TraceCheckUtils]: 61: Hoare triple {37760#false} ~cond := #in~cond; {37760#false} is VALID [2022-04-27 13:04:45,196 INFO L290 TraceCheckUtils]: 62: Hoare triple {37760#false} assume 0 == ~cond; {37760#false} is VALID [2022-04-27 13:04:45,196 INFO L290 TraceCheckUtils]: 63: Hoare triple {37760#false} assume !false; {37760#false} is VALID [2022-04-27 13:04:45,196 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 8 proven. 17 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-27 13:04:45,196 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:04:45,499 INFO L290 TraceCheckUtils]: 63: Hoare triple {37760#false} assume !false; {37760#false} is VALID [2022-04-27 13:04:45,499 INFO L290 TraceCheckUtils]: 62: Hoare triple {37760#false} assume 0 == ~cond; {37760#false} is VALID [2022-04-27 13:04:45,499 INFO L290 TraceCheckUtils]: 61: Hoare triple {37760#false} ~cond := #in~cond; {37760#false} is VALID [2022-04-27 13:04:45,499 INFO L272 TraceCheckUtils]: 60: Hoare triple {37760#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)); {37760#false} is VALID [2022-04-27 13:04:45,500 INFO L290 TraceCheckUtils]: 59: Hoare triple {37973#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {37760#false} is VALID [2022-04-27 13:04:45,500 INFO L290 TraceCheckUtils]: 58: Hoare triple {37977#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {37973#(< |main_#t~post6| 10)} is VALID [2022-04-27 13:04:45,500 INFO L290 TraceCheckUtils]: 57: Hoare triple {37977#(< ~counter~0 10)} ~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; {37977#(< ~counter~0 10)} is VALID [2022-04-27 13:04:45,500 INFO L290 TraceCheckUtils]: 56: Hoare triple {37977#(< ~counter~0 10)} assume !(~c~0 >= ~b~0); {37977#(< ~counter~0 10)} is VALID [2022-04-27 13:04:45,501 INFO L290 TraceCheckUtils]: 55: Hoare triple {37977#(< ~counter~0 10)} assume !!(#t~post7 < 10);havoc #t~post7; {37977#(< ~counter~0 10)} is VALID [2022-04-27 13:04:45,502 INFO L290 TraceCheckUtils]: 54: Hoare triple {37990#(< ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {37977#(< ~counter~0 10)} is VALID [2022-04-27 13:04:45,502 INFO L290 TraceCheckUtils]: 53: Hoare triple {37990#(< ~counter~0 9)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {37990#(< ~counter~0 9)} is VALID [2022-04-27 13:04:45,502 INFO L290 TraceCheckUtils]: 52: Hoare triple {37990#(< ~counter~0 9)} assume !(~c~0 >= 2 * ~v~0); {37990#(< ~counter~0 9)} is VALID [2022-04-27 13:04:45,502 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {37759#true} {37990#(< ~counter~0 9)} #104#return; {37990#(< ~counter~0 9)} is VALID [2022-04-27 13:04:45,503 INFO L290 TraceCheckUtils]: 50: Hoare triple {37759#true} assume true; {37759#true} is VALID [2022-04-27 13:04:45,503 INFO L290 TraceCheckUtils]: 49: Hoare triple {37759#true} assume !(0 == ~cond); {37759#true} is VALID [2022-04-27 13:04:45,503 INFO L290 TraceCheckUtils]: 48: Hoare triple {37759#true} ~cond := #in~cond; {37759#true} is VALID [2022-04-27 13:04:45,503 INFO L272 TraceCheckUtils]: 47: Hoare triple {37990#(< ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {37759#true} is VALID [2022-04-27 13:04:45,503 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {37759#true} {37990#(< ~counter~0 9)} #102#return; {37990#(< ~counter~0 9)} is VALID [2022-04-27 13:04:45,503 INFO L290 TraceCheckUtils]: 45: Hoare triple {37759#true} assume true; {37759#true} is VALID [2022-04-27 13:04:45,503 INFO L290 TraceCheckUtils]: 44: Hoare triple {37759#true} assume !(0 == ~cond); {37759#true} is VALID [2022-04-27 13:04:45,503 INFO L290 TraceCheckUtils]: 43: Hoare triple {37759#true} ~cond := #in~cond; {37759#true} is VALID [2022-04-27 13:04:45,503 INFO L272 TraceCheckUtils]: 42: Hoare triple {37990#(< ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {37759#true} is VALID [2022-04-27 13:04:45,504 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {37759#true} {37990#(< ~counter~0 9)} #100#return; {37990#(< ~counter~0 9)} is VALID [2022-04-27 13:04:45,504 INFO L290 TraceCheckUtils]: 40: Hoare triple {37759#true} assume true; {37759#true} is VALID [2022-04-27 13:04:45,504 INFO L290 TraceCheckUtils]: 39: Hoare triple {37759#true} assume !(0 == ~cond); {37759#true} is VALID [2022-04-27 13:04:45,504 INFO L290 TraceCheckUtils]: 38: Hoare triple {37759#true} ~cond := #in~cond; {37759#true} is VALID [2022-04-27 13:04:45,504 INFO L272 TraceCheckUtils]: 37: Hoare triple {37990#(< ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37759#true} is VALID [2022-04-27 13:04:45,505 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {37759#true} {37990#(< ~counter~0 9)} #98#return; {37990#(< ~counter~0 9)} is VALID [2022-04-27 13:04:45,505 INFO L290 TraceCheckUtils]: 35: Hoare triple {37759#true} assume true; {37759#true} is VALID [2022-04-27 13:04:45,505 INFO L290 TraceCheckUtils]: 34: Hoare triple {37759#true} assume !(0 == ~cond); {37759#true} is VALID [2022-04-27 13:04:45,505 INFO L290 TraceCheckUtils]: 33: Hoare triple {37759#true} ~cond := #in~cond; {37759#true} is VALID [2022-04-27 13:04:45,505 INFO L272 TraceCheckUtils]: 32: Hoare triple {37990#(< ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37759#true} is VALID [2022-04-27 13:04:45,505 INFO L290 TraceCheckUtils]: 31: Hoare triple {37990#(< ~counter~0 9)} assume !!(#t~post8 < 10);havoc #t~post8; {37990#(< ~counter~0 9)} is VALID [2022-04-27 13:04:45,506 INFO L290 TraceCheckUtils]: 30: Hoare triple {38063#(< ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {37990#(< ~counter~0 9)} is VALID [2022-04-27 13:04:45,506 INFO L290 TraceCheckUtils]: 29: Hoare triple {38063#(< ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {38063#(< ~counter~0 8)} is VALID [2022-04-27 13:04:45,506 INFO L290 TraceCheckUtils]: 28: Hoare triple {38063#(< ~counter~0 8)} assume !!(#t~post7 < 10);havoc #t~post7; {38063#(< ~counter~0 8)} is VALID [2022-04-27 13:04:45,507 INFO L290 TraceCheckUtils]: 27: Hoare triple {37932#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38063#(< ~counter~0 8)} is VALID [2022-04-27 13:04:45,507 INFO L290 TraceCheckUtils]: 26: Hoare triple {37932#(<= ~counter~0 6)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37932#(<= ~counter~0 6)} is VALID [2022-04-27 13:04:45,507 INFO L290 TraceCheckUtils]: 25: Hoare triple {37932#(<= ~counter~0 6)} assume !!(#t~post6 < 10);havoc #t~post6; {37932#(<= ~counter~0 6)} is VALID [2022-04-27 13:04:45,508 INFO L290 TraceCheckUtils]: 24: Hoare triple {37859#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {37932#(<= ~counter~0 6)} is VALID [2022-04-27 13:04:45,508 INFO L290 TraceCheckUtils]: 23: Hoare triple {37859#(<= ~counter~0 5)} ~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; {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,508 INFO L290 TraceCheckUtils]: 22: Hoare triple {37859#(<= ~counter~0 5)} assume !(~c~0 >= ~b~0); {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,509 INFO L290 TraceCheckUtils]: 21: Hoare triple {37859#(<= ~counter~0 5)} assume !!(#t~post7 < 10);havoc #t~post7; {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,509 INFO L290 TraceCheckUtils]: 20: Hoare triple {37849#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {37859#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:45,509 INFO L290 TraceCheckUtils]: 19: Hoare triple {37849#(<= ~counter~0 4)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37849#(<= ~counter~0 4)} is VALID [2022-04-27 13:04:45,510 INFO L290 TraceCheckUtils]: 18: Hoare triple {37849#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {37849#(<= ~counter~0 4)} is VALID [2022-04-27 13:04:45,510 INFO L290 TraceCheckUtils]: 17: Hoare triple {37839#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {37849#(<= ~counter~0 4)} is VALID [2022-04-27 13:04:45,510 INFO L290 TraceCheckUtils]: 16: Hoare triple {37839#(<= ~counter~0 3)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {37839#(<= ~counter~0 3)} is VALID [2022-04-27 13:04:45,511 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {37759#true} {37839#(<= ~counter~0 3)} #96#return; {37839#(<= ~counter~0 3)} is VALID [2022-04-27 13:04:45,511 INFO L290 TraceCheckUtils]: 14: Hoare triple {37759#true} assume true; {37759#true} is VALID [2022-04-27 13:04:45,511 INFO L290 TraceCheckUtils]: 13: Hoare triple {37759#true} assume !(0 == ~cond); {37759#true} is VALID [2022-04-27 13:04:45,511 INFO L290 TraceCheckUtils]: 12: Hoare triple {37759#true} ~cond := #in~cond; {37759#true} is VALID [2022-04-27 13:04:45,511 INFO L272 TraceCheckUtils]: 11: Hoare triple {37839#(<= ~counter~0 3)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {37759#true} is VALID [2022-04-27 13:04:45,511 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {37759#true} {37839#(<= ~counter~0 3)} #94#return; {37839#(<= ~counter~0 3)} is VALID [2022-04-27 13:04:45,511 INFO L290 TraceCheckUtils]: 9: Hoare triple {37759#true} assume true; {37759#true} is VALID [2022-04-27 13:04:45,512 INFO L290 TraceCheckUtils]: 8: Hoare triple {37759#true} assume !(0 == ~cond); {37759#true} is VALID [2022-04-27 13:04:45,512 INFO L290 TraceCheckUtils]: 7: Hoare triple {37759#true} ~cond := #in~cond; {37759#true} is VALID [2022-04-27 13:04:45,512 INFO L272 TraceCheckUtils]: 6: Hoare triple {37839#(<= ~counter~0 3)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {37759#true} is VALID [2022-04-27 13:04:45,512 INFO L290 TraceCheckUtils]: 5: Hoare triple {37839#(<= ~counter~0 3)} 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; {37839#(<= ~counter~0 3)} is VALID [2022-04-27 13:04:45,512 INFO L272 TraceCheckUtils]: 4: Hoare triple {37839#(<= ~counter~0 3)} call #t~ret9 := main(); {37839#(<= ~counter~0 3)} is VALID [2022-04-27 13:04:45,512 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37839#(<= ~counter~0 3)} {37759#true} #108#return; {37839#(<= ~counter~0 3)} is VALID [2022-04-27 13:04:45,513 INFO L290 TraceCheckUtils]: 2: Hoare triple {37839#(<= ~counter~0 3)} assume true; {37839#(<= ~counter~0 3)} is VALID [2022-04-27 13:04:45,513 INFO L290 TraceCheckUtils]: 1: Hoare triple {37759#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);~counter~0 := 0; {37839#(<= ~counter~0 3)} is VALID [2022-04-27 13:04:45,513 INFO L272 TraceCheckUtils]: 0: Hoare triple {37759#true} call ULTIMATE.init(); {37759#true} is VALID [2022-04-27 13:04:45,513 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 8 proven. 17 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-27 13:04:45,514 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:04:45,514 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1136499305] [2022-04-27 13:04:45,514 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:04:45,514 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [197992033] [2022-04-27 13:04:45,514 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [197992033] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:04:45,514 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:04:45,514 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 14 [2022-04-27 13:04:45,514 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1841720697] [2022-04-27 13:04:45,514 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:04:45,514 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.928571428571429) internal successors, (69), 14 states have internal predecessors, (69), 6 states have call successors, (16), 5 states have call predecessors, (16), 4 states have return successors, (14), 4 states have call predecessors, (14), 5 states have call successors, (14) Word has length 64 [2022-04-27 13:04:45,515 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:04:45,515 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 4.928571428571429) internal successors, (69), 14 states have internal predecessors, (69), 6 states have call successors, (16), 5 states have call predecessors, (16), 4 states have return successors, (14), 4 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-27 13:04:45,584 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:04:45,584 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-27 13:04:45,584 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:04:45,584 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-27 13:04:45,584 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-27 13:04:45,584 INFO L87 Difference]: Start difference. First operand 1226 states and 1707 transitions. Second operand has 14 states, 14 states have (on average 4.928571428571429) internal successors, (69), 14 states have internal predecessors, (69), 6 states have call successors, (16), 5 states have call predecessors, (16), 4 states have return successors, (14), 4 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-27 13:04:48,183 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:48,183 INFO L93 Difference]: Finished difference Result 1314 states and 1800 transitions. [2022-04-27 13:04:48,183 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-27 13:04:48,184 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.928571428571429) internal successors, (69), 14 states have internal predecessors, (69), 6 states have call successors, (16), 5 states have call predecessors, (16), 4 states have return successors, (14), 4 states have call predecessors, (14), 5 states have call successors, (14) Word has length 64 [2022-04-27 13:04:48,186 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:04:48,186 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.928571428571429) internal successors, (69), 14 states have internal predecessors, (69), 6 states have call successors, (16), 5 states have call predecessors, (16), 4 states have return successors, (14), 4 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-27 13:04:48,187 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 244 transitions. [2022-04-27 13:04:48,187 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.928571428571429) internal successors, (69), 14 states have internal predecessors, (69), 6 states have call successors, (16), 5 states have call predecessors, (16), 4 states have return successors, (14), 4 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-27 13:04:48,189 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 244 transitions. [2022-04-27 13:04:48,189 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 244 transitions. [2022-04-27 13:04:48,330 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 244 edges. 244 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:04:48,407 INFO L225 Difference]: With dead ends: 1314 [2022-04-27 13:04:48,407 INFO L226 Difference]: Without dead ends: 1292 [2022-04-27 13:04:48,416 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 134 GetRequests, 114 SyntacticMatches, 1 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 41 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=149, Invalid=271, Unknown=0, NotChecked=0, Total=420 [2022-04-27 13:04:48,417 INFO L413 NwaCegarLoop]: 69 mSDtfsCounter, 185 mSDsluCounter, 318 mSDsCounter, 0 mSdLazyCounter, 149 mSolverCounterSat, 101 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 185 SdHoareTripleChecker+Valid, 387 SdHoareTripleChecker+Invalid, 250 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 101 IncrementalHoareTripleChecker+Valid, 149 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 13:04:48,417 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [185 Valid, 387 Invalid, 250 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [101 Valid, 149 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 13:04:48,418 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1292 states. [2022-04-27 13:04:49,923 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1292 to 1255. [2022-04-27 13:04:49,923 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:04:49,925 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1292 states. Second operand has 1255 states, 875 states have (on average 1.2765714285714285) internal successors, (1117), 893 states have internal predecessors, (1117), 307 states have call successors, (307), 73 states have call predecessors, (307), 72 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) [2022-04-27 13:04:49,926 INFO L74 IsIncluded]: Start isIncluded. First operand 1292 states. Second operand has 1255 states, 875 states have (on average 1.2765714285714285) internal successors, (1117), 893 states have internal predecessors, (1117), 307 states have call successors, (307), 73 states have call predecessors, (307), 72 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) [2022-04-27 13:04:49,927 INFO L87 Difference]: Start difference. First operand 1292 states. Second operand has 1255 states, 875 states have (on average 1.2765714285714285) internal successors, (1117), 893 states have internal predecessors, (1117), 307 states have call successors, (307), 73 states have call predecessors, (307), 72 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) [2022-04-27 13:04:49,989 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:49,989 INFO L93 Difference]: Finished difference Result 1292 states and 1758 transitions. [2022-04-27 13:04:49,989 INFO L276 IsEmpty]: Start isEmpty. Operand 1292 states and 1758 transitions. [2022-04-27 13:04:49,992 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:49,992 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:49,994 INFO L74 IsIncluded]: Start isIncluded. First operand has 1255 states, 875 states have (on average 1.2765714285714285) internal successors, (1117), 893 states have internal predecessors, (1117), 307 states have call successors, (307), 73 states have call predecessors, (307), 72 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) Second operand 1292 states. [2022-04-27 13:04:49,994 INFO L87 Difference]: Start difference. First operand has 1255 states, 875 states have (on average 1.2765714285714285) internal successors, (1117), 893 states have internal predecessors, (1117), 307 states have call successors, (307), 73 states have call predecessors, (307), 72 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) Second operand 1292 states. [2022-04-27 13:04:50,043 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:50,043 INFO L93 Difference]: Finished difference Result 1292 states and 1758 transitions. [2022-04-27 13:04:50,043 INFO L276 IsEmpty]: Start isEmpty. Operand 1292 states and 1758 transitions. [2022-04-27 13:04:50,046 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:50,046 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:50,046 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:04:50,046 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:04:50,048 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1255 states, 875 states have (on average 1.2765714285714285) internal successors, (1117), 893 states have internal predecessors, (1117), 307 states have call successors, (307), 73 states have call predecessors, (307), 72 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) [2022-04-27 13:04:50,114 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1255 states to 1255 states and 1727 transitions. [2022-04-27 13:04:50,115 INFO L78 Accepts]: Start accepts. Automaton has 1255 states and 1727 transitions. Word has length 64 [2022-04-27 13:04:50,115 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:04:50,115 INFO L495 AbstractCegarLoop]: Abstraction has 1255 states and 1727 transitions. [2022-04-27 13:04:50,115 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 4.928571428571429) internal successors, (69), 14 states have internal predecessors, (69), 6 states have call successors, (16), 5 states have call predecessors, (16), 4 states have return successors, (14), 4 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-27 13:04:50,115 INFO L276 IsEmpty]: Start isEmpty. Operand 1255 states and 1727 transitions. [2022-04-27 13:04:50,116 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 68 [2022-04-27 13:04:50,116 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:04:50,116 INFO L195 NwaCegarLoop]: trace histogram [8, 7, 7, 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] [2022-04-27 13:04:50,139 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-27 13:04:50,331 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-27 13:04:50,332 INFO L420 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:04:50,332 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:04:50,332 INFO L85 PathProgramCache]: Analyzing trace with hash 1156119236, now seen corresponding path program 1 times [2022-04-27 13:04:50,332 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:04:50,332 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [718970736] [2022-04-27 13:04:50,332 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:04:50,333 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:04:50,351 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:04:50,352 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1529562008] [2022-04-27 13:04:50,352 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:04:50,352 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:04:50,352 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:04:50,371 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-27 13:04:50,372 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-27 13:04:50,411 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:04:50,412 INFO L263 TraceCheckSpWp]: Trace formula consists of 192 conjuncts, 18 conjunts are in the unsatisfiable core [2022-04-27 13:04:50,421 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:04:50,422 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:04:50,700 INFO L272 TraceCheckUtils]: 0: Hoare triple {44513#true} call ULTIMATE.init(); {44513#true} is VALID [2022-04-27 13:04:50,700 INFO L290 TraceCheckUtils]: 1: Hoare triple {44513#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);~counter~0 := 0; {44513#true} is VALID [2022-04-27 13:04:50,700 INFO L290 TraceCheckUtils]: 2: Hoare triple {44513#true} assume true; {44513#true} is VALID [2022-04-27 13:04:50,700 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44513#true} {44513#true} #108#return; {44513#true} is VALID [2022-04-27 13:04:50,700 INFO L272 TraceCheckUtils]: 4: Hoare triple {44513#true} call #t~ret9 := main(); {44513#true} is VALID [2022-04-27 13:04:50,700 INFO L290 TraceCheckUtils]: 5: Hoare triple {44513#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; {44513#true} is VALID [2022-04-27 13:04:50,700 INFO L272 TraceCheckUtils]: 6: Hoare triple {44513#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {44513#true} is VALID [2022-04-27 13:04:50,700 INFO L290 TraceCheckUtils]: 7: Hoare triple {44513#true} ~cond := #in~cond; {44513#true} is VALID [2022-04-27 13:04:50,700 INFO L290 TraceCheckUtils]: 8: Hoare triple {44513#true} assume !(0 == ~cond); {44513#true} is VALID [2022-04-27 13:04:50,700 INFO L290 TraceCheckUtils]: 9: Hoare triple {44513#true} assume true; {44513#true} is VALID [2022-04-27 13:04:50,700 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44513#true} {44513#true} #94#return; {44513#true} is VALID [2022-04-27 13:04:50,700 INFO L272 TraceCheckUtils]: 11: Hoare triple {44513#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {44513#true} is VALID [2022-04-27 13:04:50,701 INFO L290 TraceCheckUtils]: 12: Hoare triple {44513#true} ~cond := #in~cond; {44554#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:04:50,701 INFO L290 TraceCheckUtils]: 13: Hoare triple {44554#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {44558#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:04:50,701 INFO L290 TraceCheckUtils]: 14: Hoare triple {44558#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {44558#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:04:50,702 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {44558#(not (= |assume_abort_if_not_#in~cond| 0))} {44513#true} #96#return; {44565#(<= 1 main_~y~0)} is VALID [2022-04-27 13:04:50,702 INFO L290 TraceCheckUtils]: 16: Hoare triple {44565#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {44569#(<= 1 main_~b~0)} is VALID [2022-04-27 13:04:50,702 INFO L290 TraceCheckUtils]: 17: Hoare triple {44569#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {44569#(<= 1 main_~b~0)} is VALID [2022-04-27 13:04:50,702 INFO L290 TraceCheckUtils]: 18: Hoare triple {44569#(<= 1 main_~b~0)} assume !!(#t~post6 < 10);havoc #t~post6; {44569#(<= 1 main_~b~0)} is VALID [2022-04-27 13:04:50,703 INFO L290 TraceCheckUtils]: 19: Hoare triple {44569#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {44569#(<= 1 main_~b~0)} is VALID [2022-04-27 13:04:50,703 INFO L290 TraceCheckUtils]: 20: Hoare triple {44569#(<= 1 main_~b~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {44569#(<= 1 main_~b~0)} is VALID [2022-04-27 13:04:50,703 INFO L290 TraceCheckUtils]: 21: Hoare triple {44569#(<= 1 main_~b~0)} assume !!(#t~post7 < 10);havoc #t~post7; {44569#(<= 1 main_~b~0)} is VALID [2022-04-27 13:04:50,703 INFO L290 TraceCheckUtils]: 22: Hoare triple {44569#(<= 1 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {44588#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 13:04:50,704 INFO L290 TraceCheckUtils]: 23: Hoare triple {44588#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {44588#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 13:04:50,704 INFO L290 TraceCheckUtils]: 24: Hoare triple {44588#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} assume !!(#t~post8 < 10);havoc #t~post8; {44588#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 13:04:50,704 INFO L272 TraceCheckUtils]: 25: Hoare triple {44588#(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)); {44513#true} is VALID [2022-04-27 13:04:50,704 INFO L290 TraceCheckUtils]: 26: Hoare triple {44513#true} ~cond := #in~cond; {44513#true} is VALID [2022-04-27 13:04:50,704 INFO L290 TraceCheckUtils]: 27: Hoare triple {44513#true} assume !(0 == ~cond); {44513#true} is VALID [2022-04-27 13:04:50,704 INFO L290 TraceCheckUtils]: 28: Hoare triple {44513#true} assume true; {44513#true} is VALID [2022-04-27 13:04:50,705 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {44513#true} {44588#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #98#return; {44588#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 13:04:50,705 INFO L272 TraceCheckUtils]: 30: Hoare triple {44588#(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)); {44513#true} is VALID [2022-04-27 13:04:50,705 INFO L290 TraceCheckUtils]: 31: Hoare triple {44513#true} ~cond := #in~cond; {44513#true} is VALID [2022-04-27 13:04:50,705 INFO L290 TraceCheckUtils]: 32: Hoare triple {44513#true} assume !(0 == ~cond); {44513#true} is VALID [2022-04-27 13:04:50,705 INFO L290 TraceCheckUtils]: 33: Hoare triple {44513#true} assume true; {44513#true} is VALID [2022-04-27 13:04:50,706 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {44513#true} {44588#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #100#return; {44588#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 13:04:50,706 INFO L272 TraceCheckUtils]: 35: Hoare triple {44588#(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)); {44513#true} is VALID [2022-04-27 13:04:50,706 INFO L290 TraceCheckUtils]: 36: Hoare triple {44513#true} ~cond := #in~cond; {44513#true} is VALID [2022-04-27 13:04:50,706 INFO L290 TraceCheckUtils]: 37: Hoare triple {44513#true} assume !(0 == ~cond); {44513#true} is VALID [2022-04-27 13:04:50,706 INFO L290 TraceCheckUtils]: 38: Hoare triple {44513#true} assume true; {44513#true} is VALID [2022-04-27 13:04:50,706 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {44513#true} {44588#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #102#return; {44588#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 13:04:50,706 INFO L272 TraceCheckUtils]: 40: Hoare triple {44588#(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)); {44513#true} is VALID [2022-04-27 13:04:50,706 INFO L290 TraceCheckUtils]: 41: Hoare triple {44513#true} ~cond := #in~cond; {44513#true} is VALID [2022-04-27 13:04:50,706 INFO L290 TraceCheckUtils]: 42: Hoare triple {44513#true} assume !(0 == ~cond); {44513#true} is VALID [2022-04-27 13:04:50,706 INFO L290 TraceCheckUtils]: 43: Hoare triple {44513#true} assume true; {44513#true} is VALID [2022-04-27 13:04:50,707 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {44513#true} {44588#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #104#return; {44588#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 13:04:50,707 INFO L290 TraceCheckUtils]: 45: Hoare triple {44588#(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; {44658#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-27 13:04:50,708 INFO L290 TraceCheckUtils]: 46: Hoare triple {44658#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {44658#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-27 13:04:50,708 INFO L290 TraceCheckUtils]: 47: Hoare triple {44658#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} assume !!(#t~post8 < 10);havoc #t~post8; {44658#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-27 13:04:50,708 INFO L272 TraceCheckUtils]: 48: Hoare triple {44658#(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)); {44513#true} is VALID [2022-04-27 13:04:50,708 INFO L290 TraceCheckUtils]: 49: Hoare triple {44513#true} ~cond := #in~cond; {44513#true} is VALID [2022-04-27 13:04:50,708 INFO L290 TraceCheckUtils]: 50: Hoare triple {44513#true} assume !(0 == ~cond); {44513#true} is VALID [2022-04-27 13:04:50,708 INFO L290 TraceCheckUtils]: 51: Hoare triple {44513#true} assume true; {44513#true} is VALID [2022-04-27 13:04:50,709 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {44513#true} {44658#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #98#return; {44658#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-27 13:04:50,709 INFO L272 TraceCheckUtils]: 53: Hoare triple {44658#(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)); {44513#true} is VALID [2022-04-27 13:04:50,709 INFO L290 TraceCheckUtils]: 54: Hoare triple {44513#true} ~cond := #in~cond; {44513#true} is VALID [2022-04-27 13:04:50,709 INFO L290 TraceCheckUtils]: 55: Hoare triple {44513#true} assume !(0 == ~cond); {44513#true} is VALID [2022-04-27 13:04:50,709 INFO L290 TraceCheckUtils]: 56: Hoare triple {44513#true} assume true; {44513#true} is VALID [2022-04-27 13:04:50,709 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {44513#true} {44658#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #100#return; {44658#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-27 13:04:50,709 INFO L272 TraceCheckUtils]: 58: Hoare triple {44658#(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)); {44513#true} is VALID [2022-04-27 13:04:50,709 INFO L290 TraceCheckUtils]: 59: Hoare triple {44513#true} ~cond := #in~cond; {44513#true} is VALID [2022-04-27 13:04:50,710 INFO L290 TraceCheckUtils]: 60: Hoare triple {44513#true} assume !(0 == ~cond); {44513#true} is VALID [2022-04-27 13:04:50,710 INFO L290 TraceCheckUtils]: 61: Hoare triple {44513#true} assume true; {44513#true} is VALID [2022-04-27 13:04:50,710 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {44513#true} {44658#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #102#return; {44658#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-27 13:04:50,710 INFO L272 TraceCheckUtils]: 63: Hoare triple {44658#(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)); {44713#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:04:50,711 INFO L290 TraceCheckUtils]: 64: Hoare triple {44713#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {44717#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:04:50,711 INFO L290 TraceCheckUtils]: 65: Hoare triple {44717#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {44514#false} is VALID [2022-04-27 13:04:50,711 INFO L290 TraceCheckUtils]: 66: Hoare triple {44514#false} assume !false; {44514#false} is VALID [2022-04-27 13:04:50,711 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 17 proven. 6 refuted. 0 times theorem prover too weak. 85 trivial. 0 not checked. [2022-04-27 13:04:50,711 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:04:50,939 INFO L290 TraceCheckUtils]: 66: Hoare triple {44514#false} assume !false; {44514#false} is VALID [2022-04-27 13:04:50,940 INFO L290 TraceCheckUtils]: 65: Hoare triple {44717#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {44514#false} is VALID [2022-04-27 13:04:50,940 INFO L290 TraceCheckUtils]: 64: Hoare triple {44713#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {44717#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:04:50,940 INFO L272 TraceCheckUtils]: 63: Hoare triple {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {44713#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:04:50,941 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {44513#true} {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:04:50,941 INFO L290 TraceCheckUtils]: 61: Hoare triple {44513#true} assume true; {44513#true} is VALID [2022-04-27 13:04:50,941 INFO L290 TraceCheckUtils]: 60: Hoare triple {44513#true} assume !(0 == ~cond); {44513#true} is VALID [2022-04-27 13:04:50,941 INFO L290 TraceCheckUtils]: 59: Hoare triple {44513#true} ~cond := #in~cond; {44513#true} is VALID [2022-04-27 13:04:50,941 INFO L272 TraceCheckUtils]: 58: Hoare triple {44733#(= 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)); {44513#true} is VALID [2022-04-27 13:04:50,942 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {44513#true} {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} #100#return; {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:04:50,942 INFO L290 TraceCheckUtils]: 56: Hoare triple {44513#true} assume true; {44513#true} is VALID [2022-04-27 13:04:50,942 INFO L290 TraceCheckUtils]: 55: Hoare triple {44513#true} assume !(0 == ~cond); {44513#true} is VALID [2022-04-27 13:04:50,942 INFO L290 TraceCheckUtils]: 54: Hoare triple {44513#true} ~cond := #in~cond; {44513#true} is VALID [2022-04-27 13:04:50,942 INFO L272 TraceCheckUtils]: 53: Hoare triple {44733#(= 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)); {44513#true} is VALID [2022-04-27 13:04:50,943 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {44513#true} {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} #98#return; {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:04:50,943 INFO L290 TraceCheckUtils]: 51: Hoare triple {44513#true} assume true; {44513#true} is VALID [2022-04-27 13:04:50,943 INFO L290 TraceCheckUtils]: 50: Hoare triple {44513#true} assume !(0 == ~cond); {44513#true} is VALID [2022-04-27 13:04:50,943 INFO L290 TraceCheckUtils]: 49: Hoare triple {44513#true} ~cond := #in~cond; {44513#true} is VALID [2022-04-27 13:04:50,943 INFO L272 TraceCheckUtils]: 48: Hoare triple {44733#(= 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)); {44513#true} is VALID [2022-04-27 13:04:50,943 INFO L290 TraceCheckUtils]: 47: Hoare triple {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(#t~post8 < 10);havoc #t~post8; {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:04:50,943 INFO L290 TraceCheckUtils]: 46: Hoare triple {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:04:50,945 INFO L290 TraceCheckUtils]: 45: Hoare triple {44733#(= 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; {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:04:50,946 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {44513#true} {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} #104#return; {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:04:50,946 INFO L290 TraceCheckUtils]: 43: Hoare triple {44513#true} assume true; {44513#true} is VALID [2022-04-27 13:04:50,946 INFO L290 TraceCheckUtils]: 42: Hoare triple {44513#true} assume !(0 == ~cond); {44513#true} is VALID [2022-04-27 13:04:50,946 INFO L290 TraceCheckUtils]: 41: Hoare triple {44513#true} ~cond := #in~cond; {44513#true} is VALID [2022-04-27 13:04:50,946 INFO L272 TraceCheckUtils]: 40: Hoare triple {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {44513#true} is VALID [2022-04-27 13:04:50,946 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {44513#true} {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:04:50,947 INFO L290 TraceCheckUtils]: 38: Hoare triple {44513#true} assume true; {44513#true} is VALID [2022-04-27 13:04:50,947 INFO L290 TraceCheckUtils]: 37: Hoare triple {44513#true} assume !(0 == ~cond); {44513#true} is VALID [2022-04-27 13:04:50,947 INFO L290 TraceCheckUtils]: 36: Hoare triple {44513#true} ~cond := #in~cond; {44513#true} is VALID [2022-04-27 13:04:50,947 INFO L272 TraceCheckUtils]: 35: Hoare triple {44733#(= 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)); {44513#true} is VALID [2022-04-27 13:04:50,947 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {44513#true} {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} #100#return; {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:04:50,947 INFO L290 TraceCheckUtils]: 33: Hoare triple {44513#true} assume true; {44513#true} is VALID [2022-04-27 13:04:50,947 INFO L290 TraceCheckUtils]: 32: Hoare triple {44513#true} assume !(0 == ~cond); {44513#true} is VALID [2022-04-27 13:04:50,947 INFO L290 TraceCheckUtils]: 31: Hoare triple {44513#true} ~cond := #in~cond; {44513#true} is VALID [2022-04-27 13:04:50,948 INFO L272 TraceCheckUtils]: 30: Hoare triple {44733#(= 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)); {44513#true} is VALID [2022-04-27 13:04:50,948 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {44513#true} {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} #98#return; {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:04:50,948 INFO L290 TraceCheckUtils]: 28: Hoare triple {44513#true} assume true; {44513#true} is VALID [2022-04-27 13:04:50,948 INFO L290 TraceCheckUtils]: 27: Hoare triple {44513#true} assume !(0 == ~cond); {44513#true} is VALID [2022-04-27 13:04:50,948 INFO L290 TraceCheckUtils]: 26: Hoare triple {44513#true} ~cond := #in~cond; {44513#true} is VALID [2022-04-27 13:04:50,948 INFO L272 TraceCheckUtils]: 25: Hoare triple {44733#(= 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)); {44513#true} is VALID [2022-04-27 13:04:50,949 INFO L290 TraceCheckUtils]: 24: Hoare triple {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(#t~post8 < 10);havoc #t~post8; {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:04:50,949 INFO L290 TraceCheckUtils]: 23: Hoare triple {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:04:50,949 INFO L290 TraceCheckUtils]: 22: Hoare triple {44513#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {44733#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:04:50,949 INFO L290 TraceCheckUtils]: 21: Hoare triple {44513#true} assume !!(#t~post7 < 10);havoc #t~post7; {44513#true} is VALID [2022-04-27 13:04:50,950 INFO L290 TraceCheckUtils]: 20: Hoare triple {44513#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {44513#true} is VALID [2022-04-27 13:04:50,950 INFO L290 TraceCheckUtils]: 19: Hoare triple {44513#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {44513#true} is VALID [2022-04-27 13:04:50,963 INFO L290 TraceCheckUtils]: 18: Hoare triple {44513#true} assume !!(#t~post6 < 10);havoc #t~post6; {44513#true} is VALID [2022-04-27 13:04:50,963 INFO L290 TraceCheckUtils]: 17: Hoare triple {44513#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {44513#true} is VALID [2022-04-27 13:04:50,963 INFO L290 TraceCheckUtils]: 16: Hoare triple {44513#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {44513#true} is VALID [2022-04-27 13:04:50,963 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {44513#true} {44513#true} #96#return; {44513#true} is VALID [2022-04-27 13:04:50,963 INFO L290 TraceCheckUtils]: 14: Hoare triple {44513#true} assume true; {44513#true} is VALID [2022-04-27 13:04:50,963 INFO L290 TraceCheckUtils]: 13: Hoare triple {44513#true} assume !(0 == ~cond); {44513#true} is VALID [2022-04-27 13:04:50,963 INFO L290 TraceCheckUtils]: 12: Hoare triple {44513#true} ~cond := #in~cond; {44513#true} is VALID [2022-04-27 13:04:50,964 INFO L272 TraceCheckUtils]: 11: Hoare triple {44513#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {44513#true} is VALID [2022-04-27 13:04:50,964 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44513#true} {44513#true} #94#return; {44513#true} is VALID [2022-04-27 13:04:50,964 INFO L290 TraceCheckUtils]: 9: Hoare triple {44513#true} assume true; {44513#true} is VALID [2022-04-27 13:04:50,964 INFO L290 TraceCheckUtils]: 8: Hoare triple {44513#true} assume !(0 == ~cond); {44513#true} is VALID [2022-04-27 13:04:50,964 INFO L290 TraceCheckUtils]: 7: Hoare triple {44513#true} ~cond := #in~cond; {44513#true} is VALID [2022-04-27 13:04:50,964 INFO L272 TraceCheckUtils]: 6: Hoare triple {44513#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {44513#true} is VALID [2022-04-27 13:04:50,964 INFO L290 TraceCheckUtils]: 5: Hoare triple {44513#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; {44513#true} is VALID [2022-04-27 13:04:50,964 INFO L272 TraceCheckUtils]: 4: Hoare triple {44513#true} call #t~ret9 := main(); {44513#true} is VALID [2022-04-27 13:04:50,964 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44513#true} {44513#true} #108#return; {44513#true} is VALID [2022-04-27 13:04:50,964 INFO L290 TraceCheckUtils]: 2: Hoare triple {44513#true} assume true; {44513#true} is VALID [2022-04-27 13:04:50,964 INFO L290 TraceCheckUtils]: 1: Hoare triple {44513#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);~counter~0 := 0; {44513#true} is VALID [2022-04-27 13:04:50,964 INFO L272 TraceCheckUtils]: 0: Hoare triple {44513#true} call ULTIMATE.init(); {44513#true} is VALID [2022-04-27 13:04:50,964 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 94 trivial. 0 not checked. [2022-04-27 13:04:50,965 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:04:50,965 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [718970736] [2022-04-27 13:04:50,965 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:04:50,965 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1529562008] [2022-04-27 13:04:50,965 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1529562008] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-27 13:04:50,965 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 13:04:50,965 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-27 13:04:50,965 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2044864951] [2022-04-27 13:04:50,965 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:04:50,966 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, (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 67 [2022-04-27 13:04:50,966 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:04:50,966 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, (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-27 13:04:50,999 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:04:50,999 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:04:50,999 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:04:51,000 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:04:51,000 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-27 13:04:51,000 INFO L87 Difference]: Start difference. First operand 1255 states and 1727 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, (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-27 13:04:53,246 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:53,247 INFO L93 Difference]: Finished difference Result 1285 states and 1756 transitions. [2022-04-27 13:04:53,247 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:04:53,247 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, (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 67 [2022-04-27 13:04:53,247 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:04:53,247 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, (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-27 13:04:53,248 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-27 13:04:53,248 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, (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-27 13:04:53,248 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-27 13:04:53,248 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 56 transitions. [2022-04-27 13:04:53,291 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:04:53,359 INFO L225 Difference]: With dead ends: 1285 [2022-04-27 13:04:53,359 INFO L226 Difference]: Without dead ends: 1283 [2022-04-27 13:04:53,360 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 134 GetRequests, 122 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-27 13:04:53,360 INFO L413 NwaCegarLoop]: 45 mSDtfsCounter, 12 mSDsluCounter, 102 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 147 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-27 13:04:53,360 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 147 Invalid, 46 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 13:04:53,361 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1283 states. [2022-04-27 13:04:55,554 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1283 to 1275. [2022-04-27 13:04:55,554 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:04:55,573 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1283 states. Second operand has 1275 states, 890 states have (on average 1.2696629213483146) internal successors, (1130), 908 states have internal predecessors, (1130), 307 states have call successors, (307), 78 states have call predecessors, (307), 77 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) [2022-04-27 13:04:55,574 INFO L74 IsIncluded]: Start isIncluded. First operand 1283 states. Second operand has 1275 states, 890 states have (on average 1.2696629213483146) internal successors, (1130), 908 states have internal predecessors, (1130), 307 states have call successors, (307), 78 states have call predecessors, (307), 77 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) [2022-04-27 13:04:55,575 INFO L87 Difference]: Start difference. First operand 1283 states. Second operand has 1275 states, 890 states have (on average 1.2696629213483146) internal successors, (1130), 908 states have internal predecessors, (1130), 307 states have call successors, (307), 78 states have call predecessors, (307), 77 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) [2022-04-27 13:04:55,625 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:55,625 INFO L93 Difference]: Finished difference Result 1283 states and 1748 transitions. [2022-04-27 13:04:55,626 INFO L276 IsEmpty]: Start isEmpty. Operand 1283 states and 1748 transitions. [2022-04-27 13:04:55,628 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:55,628 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:55,630 INFO L74 IsIncluded]: Start isIncluded. First operand has 1275 states, 890 states have (on average 1.2696629213483146) internal successors, (1130), 908 states have internal predecessors, (1130), 307 states have call successors, (307), 78 states have call predecessors, (307), 77 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) Second operand 1283 states. [2022-04-27 13:04:55,631 INFO L87 Difference]: Start difference. First operand has 1275 states, 890 states have (on average 1.2696629213483146) internal successors, (1130), 908 states have internal predecessors, (1130), 307 states have call successors, (307), 78 states have call predecessors, (307), 77 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) Second operand 1283 states. [2022-04-27 13:04:55,676 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:55,676 INFO L93 Difference]: Finished difference Result 1283 states and 1748 transitions. [2022-04-27 13:04:55,676 INFO L276 IsEmpty]: Start isEmpty. Operand 1283 states and 1748 transitions. [2022-04-27 13:04:55,678 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:55,678 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:55,679 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:04:55,679 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:04:55,680 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1275 states, 890 states have (on average 1.2696629213483146) internal successors, (1130), 908 states have internal predecessors, (1130), 307 states have call successors, (307), 78 states have call predecessors, (307), 77 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) [2022-04-27 13:04:55,746 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1275 states to 1275 states and 1740 transitions. [2022-04-27 13:04:55,746 INFO L78 Accepts]: Start accepts. Automaton has 1275 states and 1740 transitions. Word has length 67 [2022-04-27 13:04:55,746 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:04:55,746 INFO L495 AbstractCegarLoop]: Abstraction has 1275 states and 1740 transitions. [2022-04-27 13:04:55,746 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, (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-27 13:04:55,746 INFO L276 IsEmpty]: Start isEmpty. Operand 1275 states and 1740 transitions. [2022-04-27 13:04:55,747 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2022-04-27 13:04:55,747 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:04:55,747 INFO L195 NwaCegarLoop]: trace histogram [7, 6, 6, 3, 3, 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] [2022-04-27 13:04:55,763 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-27 13:04:55,963 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-27 13:04:55,963 INFO L420 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:04:55,963 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:04:55,963 INFO L85 PathProgramCache]: Analyzing trace with hash -958869778, now seen corresponding path program 1 times [2022-04-27 13:04:55,963 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:04:55,963 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1137242808] [2022-04-27 13:04:55,963 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:04:55,964 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:04:55,976 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:04:55,977 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2017838109] [2022-04-27 13:04:55,977 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:04:55,977 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:04:55,977 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:04:55,992 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-27 13:04:56,010 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-27 13:04:56,039 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:04:56,040 INFO L263 TraceCheckSpWp]: Trace formula consists of 223 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-27 13:04:56,050 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:04:56,050 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:04:56,242 INFO L272 TraceCheckUtils]: 0: Hoare triple {51233#true} call ULTIMATE.init(); {51233#true} is VALID [2022-04-27 13:04:56,242 INFO L290 TraceCheckUtils]: 1: Hoare triple {51233#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);~counter~0 := 0; {51233#true} is VALID [2022-04-27 13:04:56,242 INFO L290 TraceCheckUtils]: 2: Hoare triple {51233#true} assume true; {51233#true} is VALID [2022-04-27 13:04:56,243 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {51233#true} {51233#true} #108#return; {51233#true} is VALID [2022-04-27 13:04:56,243 INFO L272 TraceCheckUtils]: 4: Hoare triple {51233#true} call #t~ret9 := main(); {51233#true} is VALID [2022-04-27 13:04:56,243 INFO L290 TraceCheckUtils]: 5: Hoare triple {51233#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; {51233#true} is VALID [2022-04-27 13:04:56,243 INFO L272 TraceCheckUtils]: 6: Hoare triple {51233#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {51233#true} is VALID [2022-04-27 13:04:56,243 INFO L290 TraceCheckUtils]: 7: Hoare triple {51233#true} ~cond := #in~cond; {51233#true} is VALID [2022-04-27 13:04:56,243 INFO L290 TraceCheckUtils]: 8: Hoare triple {51233#true} assume !(0 == ~cond); {51233#true} is VALID [2022-04-27 13:04:56,243 INFO L290 TraceCheckUtils]: 9: Hoare triple {51233#true} assume true; {51233#true} is VALID [2022-04-27 13:04:56,243 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {51233#true} {51233#true} #94#return; {51233#true} is VALID [2022-04-27 13:04:56,243 INFO L272 TraceCheckUtils]: 11: Hoare triple {51233#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {51233#true} is VALID [2022-04-27 13:04:56,243 INFO L290 TraceCheckUtils]: 12: Hoare triple {51233#true} ~cond := #in~cond; {51233#true} is VALID [2022-04-27 13:04:56,243 INFO L290 TraceCheckUtils]: 13: Hoare triple {51233#true} assume !(0 == ~cond); {51233#true} is VALID [2022-04-27 13:04:56,243 INFO L290 TraceCheckUtils]: 14: Hoare triple {51233#true} assume true; {51233#true} is VALID [2022-04-27 13:04:56,243 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {51233#true} {51233#true} #96#return; {51233#true} is VALID [2022-04-27 13:04:56,243 INFO L290 TraceCheckUtils]: 16: Hoare triple {51233#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {51233#true} is VALID [2022-04-27 13:04:56,243 INFO L290 TraceCheckUtils]: 17: Hoare triple {51233#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {51233#true} is VALID [2022-04-27 13:04:56,243 INFO L290 TraceCheckUtils]: 18: Hoare triple {51233#true} assume !!(#t~post6 < 10);havoc #t~post6; {51233#true} is VALID [2022-04-27 13:04:56,243 INFO L290 TraceCheckUtils]: 19: Hoare triple {51233#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {51233#true} is VALID [2022-04-27 13:04:56,244 INFO L290 TraceCheckUtils]: 20: Hoare triple {51233#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {51233#true} is VALID [2022-04-27 13:04:56,244 INFO L290 TraceCheckUtils]: 21: Hoare triple {51233#true} assume !!(#t~post7 < 10);havoc #t~post7; {51233#true} is VALID [2022-04-27 13:04:56,244 INFO L290 TraceCheckUtils]: 22: Hoare triple {51233#true} assume !(~c~0 >= ~b~0); {51233#true} is VALID [2022-04-27 13:04:56,244 INFO L290 TraceCheckUtils]: 23: Hoare triple {51233#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; {51233#true} is VALID [2022-04-27 13:04:56,244 INFO L290 TraceCheckUtils]: 24: Hoare triple {51233#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {51233#true} is VALID [2022-04-27 13:04:56,244 INFO L290 TraceCheckUtils]: 25: Hoare triple {51233#true} assume !!(#t~post6 < 10);havoc #t~post6; {51233#true} is VALID [2022-04-27 13:04:56,244 INFO L290 TraceCheckUtils]: 26: Hoare triple {51233#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {51233#true} is VALID [2022-04-27 13:04:56,244 INFO L290 TraceCheckUtils]: 27: Hoare triple {51233#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {51233#true} is VALID [2022-04-27 13:04:56,244 INFO L290 TraceCheckUtils]: 28: Hoare triple {51233#true} assume !!(#t~post7 < 10);havoc #t~post7; {51233#true} is VALID [2022-04-27 13:04:56,244 INFO L290 TraceCheckUtils]: 29: Hoare triple {51233#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {51325#(<= main_~v~0 main_~b~0)} is VALID [2022-04-27 13:04:56,245 INFO L290 TraceCheckUtils]: 30: Hoare triple {51325#(<= main_~v~0 main_~b~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {51325#(<= main_~v~0 main_~b~0)} is VALID [2022-04-27 13:04:56,245 INFO L290 TraceCheckUtils]: 31: Hoare triple {51325#(<= main_~v~0 main_~b~0)} assume !!(#t~post8 < 10);havoc #t~post8; {51325#(<= main_~v~0 main_~b~0)} is VALID [2022-04-27 13:04:56,245 INFO L272 TraceCheckUtils]: 32: Hoare triple {51325#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {51233#true} is VALID [2022-04-27 13:04:56,245 INFO L290 TraceCheckUtils]: 33: Hoare triple {51233#true} ~cond := #in~cond; {51233#true} is VALID [2022-04-27 13:04:56,245 INFO L290 TraceCheckUtils]: 34: Hoare triple {51233#true} assume !(0 == ~cond); {51233#true} is VALID [2022-04-27 13:04:56,245 INFO L290 TraceCheckUtils]: 35: Hoare triple {51233#true} assume true; {51233#true} is VALID [2022-04-27 13:04:56,246 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {51233#true} {51325#(<= main_~v~0 main_~b~0)} #98#return; {51325#(<= main_~v~0 main_~b~0)} is VALID [2022-04-27 13:04:56,246 INFO L272 TraceCheckUtils]: 37: Hoare triple {51325#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {51233#true} is VALID [2022-04-27 13:04:56,246 INFO L290 TraceCheckUtils]: 38: Hoare triple {51233#true} ~cond := #in~cond; {51233#true} is VALID [2022-04-27 13:04:56,246 INFO L290 TraceCheckUtils]: 39: Hoare triple {51233#true} assume !(0 == ~cond); {51233#true} is VALID [2022-04-27 13:04:56,246 INFO L290 TraceCheckUtils]: 40: Hoare triple {51233#true} assume true; {51233#true} is VALID [2022-04-27 13:04:56,246 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {51233#true} {51325#(<= main_~v~0 main_~b~0)} #100#return; {51325#(<= main_~v~0 main_~b~0)} is VALID [2022-04-27 13:04:56,246 INFO L272 TraceCheckUtils]: 42: Hoare triple {51325#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {51233#true} is VALID [2022-04-27 13:04:56,247 INFO L290 TraceCheckUtils]: 43: Hoare triple {51233#true} ~cond := #in~cond; {51233#true} is VALID [2022-04-27 13:04:56,247 INFO L290 TraceCheckUtils]: 44: Hoare triple {51233#true} assume !(0 == ~cond); {51233#true} is VALID [2022-04-27 13:04:56,247 INFO L290 TraceCheckUtils]: 45: Hoare triple {51233#true} assume true; {51233#true} is VALID [2022-04-27 13:04:56,247 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {51233#true} {51325#(<= main_~v~0 main_~b~0)} #102#return; {51325#(<= main_~v~0 main_~b~0)} is VALID [2022-04-27 13:04:56,247 INFO L272 TraceCheckUtils]: 47: Hoare triple {51325#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {51233#true} is VALID [2022-04-27 13:04:56,247 INFO L290 TraceCheckUtils]: 48: Hoare triple {51233#true} ~cond := #in~cond; {51233#true} is VALID [2022-04-27 13:04:56,247 INFO L290 TraceCheckUtils]: 49: Hoare triple {51233#true} assume !(0 == ~cond); {51233#true} is VALID [2022-04-27 13:04:56,247 INFO L290 TraceCheckUtils]: 50: Hoare triple {51233#true} assume true; {51233#true} is VALID [2022-04-27 13:04:56,248 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {51233#true} {51325#(<= main_~v~0 main_~b~0)} #104#return; {51325#(<= main_~v~0 main_~b~0)} is VALID [2022-04-27 13:04:56,248 INFO L290 TraceCheckUtils]: 52: Hoare triple {51325#(<= main_~v~0 main_~b~0)} assume !(~c~0 >= 2 * ~v~0); {51395#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-27 13:04:56,249 INFO L290 TraceCheckUtils]: 53: Hoare triple {51395#(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; {51399#(< main_~c~0 main_~b~0)} is VALID [2022-04-27 13:04:56,249 INFO L290 TraceCheckUtils]: 54: Hoare triple {51399#(< main_~c~0 main_~b~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {51399#(< main_~c~0 main_~b~0)} is VALID [2022-04-27 13:04:56,249 INFO L290 TraceCheckUtils]: 55: Hoare triple {51399#(< main_~c~0 main_~b~0)} assume !!(#t~post7 < 10);havoc #t~post7; {51399#(< main_~c~0 main_~b~0)} is VALID [2022-04-27 13:04:56,250 INFO L290 TraceCheckUtils]: 56: Hoare triple {51399#(< main_~c~0 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {51234#false} is VALID [2022-04-27 13:04:56,250 INFO L290 TraceCheckUtils]: 57: Hoare triple {51234#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {51234#false} is VALID [2022-04-27 13:04:56,250 INFO L290 TraceCheckUtils]: 58: Hoare triple {51234#false} assume !!(#t~post8 < 10);havoc #t~post8; {51234#false} is VALID [2022-04-27 13:04:56,250 INFO L272 TraceCheckUtils]: 59: Hoare triple {51234#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {51234#false} is VALID [2022-04-27 13:04:56,250 INFO L290 TraceCheckUtils]: 60: Hoare triple {51234#false} ~cond := #in~cond; {51234#false} is VALID [2022-04-27 13:04:56,250 INFO L290 TraceCheckUtils]: 61: Hoare triple {51234#false} assume !(0 == ~cond); {51234#false} is VALID [2022-04-27 13:04:56,250 INFO L290 TraceCheckUtils]: 62: Hoare triple {51234#false} assume true; {51234#false} is VALID [2022-04-27 13:04:56,250 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {51234#false} {51234#false} #98#return; {51234#false} is VALID [2022-04-27 13:04:56,250 INFO L272 TraceCheckUtils]: 64: Hoare triple {51234#false} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {51234#false} is VALID [2022-04-27 13:04:56,250 INFO L290 TraceCheckUtils]: 65: Hoare triple {51234#false} ~cond := #in~cond; {51234#false} is VALID [2022-04-27 13:04:56,250 INFO L290 TraceCheckUtils]: 66: Hoare triple {51234#false} assume !(0 == ~cond); {51234#false} is VALID [2022-04-27 13:04:56,250 INFO L290 TraceCheckUtils]: 67: Hoare triple {51234#false} assume true; {51234#false} is VALID [2022-04-27 13:04:56,250 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {51234#false} {51234#false} #100#return; {51234#false} is VALID [2022-04-27 13:04:56,250 INFO L272 TraceCheckUtils]: 69: Hoare triple {51234#false} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {51234#false} is VALID [2022-04-27 13:04:56,250 INFO L290 TraceCheckUtils]: 70: Hoare triple {51234#false} ~cond := #in~cond; {51234#false} is VALID [2022-04-27 13:04:56,250 INFO L290 TraceCheckUtils]: 71: Hoare triple {51234#false} assume 0 == ~cond; {51234#false} is VALID [2022-04-27 13:04:56,251 INFO L290 TraceCheckUtils]: 72: Hoare triple {51234#false} assume !false; {51234#false} is VALID [2022-04-27 13:04:56,251 INFO L134 CoverageAnalysis]: Checked inductivity of 93 backedges. 51 proven. 0 refuted. 0 times theorem prover too weak. 42 trivial. 0 not checked. [2022-04-27 13:04:56,251 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:04:56,251 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:04:56,251 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1137242808] [2022-04-27 13:04:56,251 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:04:56,251 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2017838109] [2022-04-27 13:04:56,251 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2017838109] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:04:56,251 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:04:56,251 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 13:04:56,251 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [129247365] [2022-04-27 13:04:56,251 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:04:56,253 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 6.4) internal successors, (32), 5 states have internal predecessors, (32), 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 73 [2022-04-27 13:04:56,253 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:04:56,253 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 6.4) internal successors, (32), 5 states have internal predecessors, (32), 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-27 13:04:56,290 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:04:56,290 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:04:56,290 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:04:56,291 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:04:56,291 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-27 13:04:56,291 INFO L87 Difference]: Start difference. First operand 1275 states and 1740 transitions. Second operand has 5 states, 5 states have (on average 6.4) internal successors, (32), 5 states have internal predecessors, (32), 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-27 13:04:58,263 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:58,263 INFO L93 Difference]: Finished difference Result 2192 states and 3032 transitions. [2022-04-27 13:04:58,263 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 13:04:58,264 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 6.4) internal successors, (32), 5 states have internal predecessors, (32), 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 73 [2022-04-27 13:04:58,264 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:04:58,264 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 6.4) internal successors, (32), 5 states have internal predecessors, (32), 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-27 13:04:58,264 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 104 transitions. [2022-04-27 13:04:58,265 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 6.4) internal successors, (32), 5 states have internal predecessors, (32), 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-27 13:04:58,265 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 104 transitions. [2022-04-27 13:04:58,265 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 104 transitions. [2022-04-27 13:04:58,336 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:04:58,404 INFO L225 Difference]: With dead ends: 2192 [2022-04-27 13:04:58,405 INFO L226 Difference]: Without dead ends: 1325 [2022-04-27 13:04:58,406 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 74 GetRequests, 70 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-27 13:04:58,406 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 12 mSDsluCounter, 102 mSDsCounter, 0 mSdLazyCounter, 59 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 150 SdHoareTripleChecker+Invalid, 61 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 59 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 13:04:58,407 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 150 Invalid, 61 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 59 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 13:04:58,407 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1325 states. [2022-04-27 13:04:59,865 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1325 to 1232. [2022-04-27 13:04:59,866 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:04:59,867 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1325 states. Second operand has 1232 states, 885 states have (on average 1.2677966101694915) internal successors, (1122), 888 states have internal predecessors, (1122), 271 states have call successors, (271), 76 states have call predecessors, (271), 75 states have return successors, (267), 267 states have call predecessors, (267), 267 states have call successors, (267) [2022-04-27 13:04:59,876 INFO L74 IsIncluded]: Start isIncluded. First operand 1325 states. Second operand has 1232 states, 885 states have (on average 1.2677966101694915) internal successors, (1122), 888 states have internal predecessors, (1122), 271 states have call successors, (271), 76 states have call predecessors, (271), 75 states have return successors, (267), 267 states have call predecessors, (267), 267 states have call successors, (267) [2022-04-27 13:04:59,877 INFO L87 Difference]: Start difference. First operand 1325 states. Second operand has 1232 states, 885 states have (on average 1.2677966101694915) internal successors, (1122), 888 states have internal predecessors, (1122), 271 states have call successors, (271), 76 states have call predecessors, (271), 75 states have return successors, (267), 267 states have call predecessors, (267), 267 states have call successors, (267) [2022-04-27 13:04:59,924 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:59,924 INFO L93 Difference]: Finished difference Result 1325 states and 1781 transitions. [2022-04-27 13:04:59,924 INFO L276 IsEmpty]: Start isEmpty. Operand 1325 states and 1781 transitions. [2022-04-27 13:04:59,927 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:59,927 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:59,928 INFO L74 IsIncluded]: Start isIncluded. First operand has 1232 states, 885 states have (on average 1.2677966101694915) internal successors, (1122), 888 states have internal predecessors, (1122), 271 states have call successors, (271), 76 states have call predecessors, (271), 75 states have return successors, (267), 267 states have call predecessors, (267), 267 states have call successors, (267) Second operand 1325 states. [2022-04-27 13:04:59,929 INFO L87 Difference]: Start difference. First operand has 1232 states, 885 states have (on average 1.2677966101694915) internal successors, (1122), 888 states have internal predecessors, (1122), 271 states have call successors, (271), 76 states have call predecessors, (271), 75 states have return successors, (267), 267 states have call predecessors, (267), 267 states have call successors, (267) Second operand 1325 states. [2022-04-27 13:04:59,976 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:59,976 INFO L93 Difference]: Finished difference Result 1325 states and 1781 transitions. [2022-04-27 13:04:59,976 INFO L276 IsEmpty]: Start isEmpty. Operand 1325 states and 1781 transitions. [2022-04-27 13:04:59,978 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:59,978 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:59,978 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:04:59,979 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:04:59,979 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1232 states, 885 states have (on average 1.2677966101694915) internal successors, (1122), 888 states have internal predecessors, (1122), 271 states have call successors, (271), 76 states have call predecessors, (271), 75 states have return successors, (267), 267 states have call predecessors, (267), 267 states have call successors, (267) [2022-04-27 13:05:00,040 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1232 states to 1232 states and 1660 transitions. [2022-04-27 13:05:00,041 INFO L78 Accepts]: Start accepts. Automaton has 1232 states and 1660 transitions. Word has length 73 [2022-04-27 13:05:00,041 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:05:00,041 INFO L495 AbstractCegarLoop]: Abstraction has 1232 states and 1660 transitions. [2022-04-27 13:05:00,041 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 6.4) internal successors, (32), 5 states have internal predecessors, (32), 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-27 13:05:00,041 INFO L276 IsEmpty]: Start isEmpty. Operand 1232 states and 1660 transitions. [2022-04-27 13:05:00,042 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-04-27 13:05:00,042 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:05:00,042 INFO L195 NwaCegarLoop]: trace histogram [6, 5, 5, 4, 4, 3, 3, 3, 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-27 13:05:00,060 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-27 13:05:00,255 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-27 13:05:00,255 INFO L420 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:05:00,256 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:05:00,256 INFO L85 PathProgramCache]: Analyzing trace with hash -705069158, now seen corresponding path program 2 times [2022-04-27 13:05:00,256 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:05:00,256 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2039851660] [2022-04-27 13:05:00,256 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:05:00,256 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:05:00,273 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:05:00,274 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1606239529] [2022-04-27 13:05:00,274 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 13:05:00,274 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:05:00,274 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:05:00,281 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-27 13:05:00,282 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-27 13:05:00,333 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 13:05:00,334 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:05:00,335 INFO L263 TraceCheckSpWp]: Trace formula consists of 244 conjuncts, 82 conjunts are in the unsatisfiable core [2022-04-27 13:05:00,348 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:05:00,349 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:05:01,636 INFO L272 TraceCheckUtils]: 0: Hoare triple {59040#true} call ULTIMATE.init(); {59040#true} is VALID [2022-04-27 13:05:01,636 INFO L290 TraceCheckUtils]: 1: Hoare triple {59040#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);~counter~0 := 0; {59040#true} is VALID [2022-04-27 13:05:01,636 INFO L290 TraceCheckUtils]: 2: Hoare triple {59040#true} assume true; {59040#true} is VALID [2022-04-27 13:05:01,636 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {59040#true} {59040#true} #108#return; {59040#true} is VALID [2022-04-27 13:05:01,636 INFO L272 TraceCheckUtils]: 4: Hoare triple {59040#true} call #t~ret9 := main(); {59040#true} is VALID [2022-04-27 13:05:01,636 INFO L290 TraceCheckUtils]: 5: Hoare triple {59040#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; {59040#true} is VALID [2022-04-27 13:05:01,637 INFO L272 TraceCheckUtils]: 6: Hoare triple {59040#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {59040#true} is VALID [2022-04-27 13:05:01,637 INFO L290 TraceCheckUtils]: 7: Hoare triple {59040#true} ~cond := #in~cond; {59040#true} is VALID [2022-04-27 13:05:01,637 INFO L290 TraceCheckUtils]: 8: Hoare triple {59040#true} assume !(0 == ~cond); {59040#true} is VALID [2022-04-27 13:05:01,637 INFO L290 TraceCheckUtils]: 9: Hoare triple {59040#true} assume true; {59040#true} is VALID [2022-04-27 13:05:01,637 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {59040#true} {59040#true} #94#return; {59040#true} is VALID [2022-04-27 13:05:01,637 INFO L272 TraceCheckUtils]: 11: Hoare triple {59040#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {59040#true} is VALID [2022-04-27 13:05:01,637 INFO L290 TraceCheckUtils]: 12: Hoare triple {59040#true} ~cond := #in~cond; {59081#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:05:01,637 INFO L290 TraceCheckUtils]: 13: Hoare triple {59081#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {59085#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:05:01,637 INFO L290 TraceCheckUtils]: 14: Hoare triple {59085#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {59085#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:05:01,638 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {59085#(not (= |assume_abort_if_not_#in~cond| 0))} {59040#true} #96#return; {59092#(<= 1 main_~y~0)} is VALID [2022-04-27 13:05:01,638 INFO L290 TraceCheckUtils]: 16: Hoare triple {59092#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {59096#(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-27 13:05:01,638 INFO L290 TraceCheckUtils]: 17: Hoare triple {59096#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59096#(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-27 13:05:01,639 INFO L290 TraceCheckUtils]: 18: Hoare triple {59096#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {59096#(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-27 13:05:01,639 INFO L290 TraceCheckUtils]: 19: Hoare triple {59096#(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; {59106#(and (= main_~r~0 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_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:01,639 INFO L290 TraceCheckUtils]: 20: Hoare triple {59106#(and (= main_~r~0 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_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {59106#(and (= main_~r~0 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_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:01,640 INFO L290 TraceCheckUtils]: 21: Hoare triple {59106#(and (= main_~r~0 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_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 10);havoc #t~post7; {59106#(and (= main_~r~0 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_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:01,640 INFO L290 TraceCheckUtils]: 22: Hoare triple {59106#(and (= main_~r~0 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_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {59116#(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) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:01,640 INFO L290 TraceCheckUtils]: 23: Hoare triple {59116#(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) (<= 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; {59120#(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) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-27 13:05:01,641 INFO L290 TraceCheckUtils]: 24: Hoare triple {59120#(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) (= main_~q~0 1) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59120#(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) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-27 13:05:01,641 INFO L290 TraceCheckUtils]: 25: Hoare triple {59120#(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) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(#t~post6 < 10);havoc #t~post6; {59120#(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) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-27 13:05:01,642 INFO L290 TraceCheckUtils]: 26: Hoare triple {59120#(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) (= 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; {59130#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~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) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-27 13:05:01,643 INFO L290 TraceCheckUtils]: 27: Hoare triple {59130#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~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) (= main_~q~0 1) (<= 1 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {59130#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~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) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-27 13:05:01,643 INFO L290 TraceCheckUtils]: 28: Hoare triple {59130#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~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) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(#t~post7 < 10);havoc #t~post7; {59130#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~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) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-27 13:05:01,644 INFO L290 TraceCheckUtils]: 29: Hoare triple {59130#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~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) (= 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; {59140#(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) (not (<= main_~a~0 main_~x~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) (<= 1 main_~y~0))} is VALID [2022-04-27 13:05:01,645 INFO L290 TraceCheckUtils]: 30: Hoare triple {59140#(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) (not (<= main_~a~0 main_~x~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) (<= 1 main_~y~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {59140#(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) (not (<= main_~a~0 main_~x~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) (<= 1 main_~y~0))} is VALID [2022-04-27 13:05:01,645 INFO L290 TraceCheckUtils]: 31: Hoare triple {59140#(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) (not (<= main_~a~0 main_~x~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) (<= 1 main_~y~0))} assume !!(#t~post8 < 10);havoc #t~post8; {59140#(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) (not (<= main_~a~0 main_~x~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) (<= 1 main_~y~0))} is VALID [2022-04-27 13:05:01,645 INFO L272 TraceCheckUtils]: 32: Hoare triple {59140#(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) (not (<= main_~a~0 main_~x~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) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {59040#true} is VALID [2022-04-27 13:05:01,645 INFO L290 TraceCheckUtils]: 33: Hoare triple {59040#true} ~cond := #in~cond; {59153#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:05:01,645 INFO L290 TraceCheckUtils]: 34: Hoare triple {59153#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {59157#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:01,646 INFO L290 TraceCheckUtils]: 35: Hoare triple {59157#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59157#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:01,647 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {59157#(not (= |__VERIFIER_assert_#in~cond| 0))} {59140#(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) (not (<= main_~a~0 main_~x~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) (<= 1 main_~y~0))} #98#return; {59164#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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-27 13:05:01,647 INFO L272 TraceCheckUtils]: 37: Hoare triple {59164#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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)); {59040#true} is VALID [2022-04-27 13:05:01,647 INFO L290 TraceCheckUtils]: 38: Hoare triple {59040#true} ~cond := #in~cond; {59040#true} is VALID [2022-04-27 13:05:01,647 INFO L290 TraceCheckUtils]: 39: Hoare triple {59040#true} assume !(0 == ~cond); {59040#true} is VALID [2022-04-27 13:05:01,647 INFO L290 TraceCheckUtils]: 40: Hoare triple {59040#true} assume true; {59040#true} is VALID [2022-04-27 13:05:01,648 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {59040#true} {59164#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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))))} #100#return; {59164#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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-27 13:05:01,648 INFO L272 TraceCheckUtils]: 42: Hoare triple {59164#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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)); {59040#true} is VALID [2022-04-27 13:05:01,648 INFO L290 TraceCheckUtils]: 43: Hoare triple {59040#true} ~cond := #in~cond; {59040#true} is VALID [2022-04-27 13:05:01,648 INFO L290 TraceCheckUtils]: 44: Hoare triple {59040#true} assume !(0 == ~cond); {59040#true} is VALID [2022-04-27 13:05:01,648 INFO L290 TraceCheckUtils]: 45: Hoare triple {59040#true} assume true; {59040#true} is VALID [2022-04-27 13:05:01,648 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {59040#true} {59164#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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))))} #102#return; {59164#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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-27 13:05:01,648 INFO L272 TraceCheckUtils]: 47: Hoare triple {59164#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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)); {59040#true} is VALID [2022-04-27 13:05:01,648 INFO L290 TraceCheckUtils]: 48: Hoare triple {59040#true} ~cond := #in~cond; {59040#true} is VALID [2022-04-27 13:05:01,648 INFO L290 TraceCheckUtils]: 49: Hoare triple {59040#true} assume !(0 == ~cond); {59040#true} is VALID [2022-04-27 13:05:01,649 INFO L290 TraceCheckUtils]: 50: Hoare triple {59040#true} assume true; {59040#true} is VALID [2022-04-27 13:05:01,649 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {59040#true} {59164#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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))))} #104#return; {59164#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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-27 13:05:01,649 INFO L290 TraceCheckUtils]: 52: Hoare triple {59164#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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); {59213#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (< main_~c~0 (* main_~v~0 2)) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 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-27 13:05:01,651 INFO L290 TraceCheckUtils]: 53: Hoare triple {59213#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (< main_~c~0 (* main_~v~0 2)) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 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))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {59217#(and (< (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 2)) (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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-27 13:05:01,652 INFO L290 TraceCheckUtils]: 54: Hoare triple {59217#(and (< (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 2)) (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {59217#(and (< (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 2)) (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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-27 13:05:01,652 INFO L290 TraceCheckUtils]: 55: Hoare triple {59217#(and (< (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 2)) (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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 !!(#t~post7 < 10);havoc #t~post7; {59217#(and (< (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 2)) (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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-27 13:05:01,653 INFO L290 TraceCheckUtils]: 56: Hoare triple {59217#(and (< (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 2)) (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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); {59217#(and (< (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 2)) (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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-27 13:05:01,655 INFO L290 TraceCheckUtils]: 57: Hoare triple {59217#(and (< (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 2)) (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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; {59230#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:01,656 INFO L290 TraceCheckUtils]: 58: Hoare triple {59230#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59230#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:01,656 INFO L290 TraceCheckUtils]: 59: Hoare triple {59230#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {59230#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:01,657 INFO L290 TraceCheckUtils]: 60: Hoare triple {59230#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~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; {59230#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:01,657 INFO L290 TraceCheckUtils]: 61: Hoare triple {59230#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {59230#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:01,658 INFO L290 TraceCheckUtils]: 62: Hoare triple {59230#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(#t~post7 < 10);havoc #t~post7; {59230#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:01,658 INFO L290 TraceCheckUtils]: 63: Hoare triple {59230#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~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; {59230#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:01,658 INFO L290 TraceCheckUtils]: 64: Hoare triple {59230#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {59230#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:01,659 INFO L290 TraceCheckUtils]: 65: Hoare triple {59230#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(#t~post8 < 10);havoc #t~post8; {59230#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:01,659 INFO L272 TraceCheckUtils]: 66: Hoare triple {59230#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {59040#true} is VALID [2022-04-27 13:05:01,659 INFO L290 TraceCheckUtils]: 67: Hoare triple {59040#true} ~cond := #in~cond; {59153#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:05:01,659 INFO L290 TraceCheckUtils]: 68: Hoare triple {59153#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {59157#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:01,659 INFO L290 TraceCheckUtils]: 69: Hoare triple {59157#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59157#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:01,660 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {59157#(not (= |__VERIFIER_assert_#in~cond| 0))} {59230#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #98#return; {59270#(and (< (* main_~b~0 2) main_~y~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ main_~q~0 1) 0))} is VALID [2022-04-27 13:05:01,661 INFO L272 TraceCheckUtils]: 71: Hoare triple {59270#(and (< (* main_~b~0 2) main_~y~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ main_~q~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {59274#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:05:01,661 INFO L290 TraceCheckUtils]: 72: Hoare triple {59274#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {59278#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:05:01,661 INFO L290 TraceCheckUtils]: 73: Hoare triple {59278#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {59041#false} is VALID [2022-04-27 13:05:01,661 INFO L290 TraceCheckUtils]: 74: Hoare triple {59041#false} assume !false; {59041#false} is VALID [2022-04-27 13:05:01,662 INFO L134 CoverageAnalysis]: Checked inductivity of 86 backedges. 20 proven. 43 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2022-04-27 13:05:01,662 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:05:59,511 INFO L290 TraceCheckUtils]: 74: Hoare triple {59041#false} assume !false; {59041#false} is VALID [2022-04-27 13:05:59,512 INFO L290 TraceCheckUtils]: 73: Hoare triple {59278#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {59041#false} is VALID [2022-04-27 13:05:59,512 INFO L290 TraceCheckUtils]: 72: Hoare triple {59274#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {59278#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:05:59,513 INFO L272 TraceCheckUtils]: 71: Hoare triple {59294#(= 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)); {59274#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:05:59,513 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {59157#(not (= |__VERIFIER_assert_#in~cond| 0))} {59298#(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)))))} #98#return; {59294#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:05:59,514 INFO L290 TraceCheckUtils]: 69: Hoare triple {59157#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59157#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:59,514 INFO L290 TraceCheckUtils]: 68: Hoare triple {59308#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {59157#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:59,514 INFO L290 TraceCheckUtils]: 67: Hoare triple {59040#true} ~cond := #in~cond; {59308#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:05:59,514 INFO L272 TraceCheckUtils]: 66: Hoare triple {59298#(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)); {59040#true} is VALID [2022-04-27 13:05:59,515 INFO L290 TraceCheckUtils]: 65: Hoare triple {59298#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post8 < 10);havoc #t~post8; {59298#(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-27 13:05:59,515 INFO L290 TraceCheckUtils]: 64: Hoare triple {59298#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {59298#(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-27 13:05:59,516 INFO L290 TraceCheckUtils]: 63: Hoare triple {59298#(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; {59298#(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-27 13:05:59,516 INFO L290 TraceCheckUtils]: 62: Hoare triple {59298#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post7 < 10);havoc #t~post7; {59298#(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-27 13:05:59,516 INFO L290 TraceCheckUtils]: 61: Hoare triple {59298#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {59298#(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-27 13:05:59,517 INFO L290 TraceCheckUtils]: 60: Hoare triple {59298#(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; {59298#(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-27 13:05:59,517 INFO L290 TraceCheckUtils]: 59: Hoare triple {59298#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post6 < 10);havoc #t~post6; {59298#(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-27 13:05:59,518 INFO L290 TraceCheckUtils]: 58: Hoare triple {59298#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59298#(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-27 13:05:59,533 INFO L290 TraceCheckUtils]: 57: Hoare triple {59339#(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; {59298#(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-27 13:05:59,534 INFO L290 TraceCheckUtils]: 56: Hoare triple {59339#(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); {59339#(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-27 13:05:59,534 INFO L290 TraceCheckUtils]: 55: Hoare triple {59339#(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 !!(#t~post7 < 10);havoc #t~post7; {59339#(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-27 13:05:59,535 INFO L290 TraceCheckUtils]: 54: Hoare triple {59339#(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)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {59339#(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-27 13:05:59,539 INFO L290 TraceCheckUtils]: 53: Hoare triple {59352#(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; {59339#(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-27 13:05:59,540 INFO L290 TraceCheckUtils]: 52: Hoare triple {59356#(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); {59352#(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-27 13:05:59,541 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {59040#true} {59356#(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)))))} #104#return; {59356#(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-27 13:05:59,541 INFO L290 TraceCheckUtils]: 50: Hoare triple {59040#true} assume true; {59040#true} is VALID [2022-04-27 13:05:59,541 INFO L290 TraceCheckUtils]: 49: Hoare triple {59040#true} assume !(0 == ~cond); {59040#true} is VALID [2022-04-27 13:05:59,541 INFO L290 TraceCheckUtils]: 48: Hoare triple {59040#true} ~cond := #in~cond; {59040#true} is VALID [2022-04-27 13:05:59,541 INFO L272 TraceCheckUtils]: 47: Hoare triple {59356#(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)); {59040#true} is VALID [2022-04-27 13:05:59,542 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {59040#true} {59356#(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)))))} #102#return; {59356#(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-27 13:05:59,542 INFO L290 TraceCheckUtils]: 45: Hoare triple {59040#true} assume true; {59040#true} is VALID [2022-04-27 13:05:59,542 INFO L290 TraceCheckUtils]: 44: Hoare triple {59040#true} assume !(0 == ~cond); {59040#true} is VALID [2022-04-27 13:05:59,542 INFO L290 TraceCheckUtils]: 43: Hoare triple {59040#true} ~cond := #in~cond; {59040#true} is VALID [2022-04-27 13:05:59,542 INFO L272 TraceCheckUtils]: 42: Hoare triple {59356#(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)); {59040#true} is VALID [2022-04-27 13:05:59,543 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {59040#true} {59356#(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)))))} #100#return; {59356#(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-27 13:05:59,543 INFO L290 TraceCheckUtils]: 40: Hoare triple {59040#true} assume true; {59040#true} is VALID [2022-04-27 13:05:59,543 INFO L290 TraceCheckUtils]: 39: Hoare triple {59040#true} assume !(0 == ~cond); {59040#true} is VALID [2022-04-27 13:05:59,543 INFO L290 TraceCheckUtils]: 38: Hoare triple {59040#true} ~cond := #in~cond; {59040#true} is VALID [2022-04-27 13:05:59,543 INFO L272 TraceCheckUtils]: 37: Hoare triple {59356#(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)); {59040#true} is VALID [2022-04-27 13:05:59,544 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {59157#(not (= |__VERIFIER_assert_#in~cond| 0))} {59405#(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)))))} #98#return; {59356#(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-27 13:05:59,544 INFO L290 TraceCheckUtils]: 35: Hoare triple {59157#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59157#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:59,545 INFO L290 TraceCheckUtils]: 34: Hoare triple {59308#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {59157#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:59,545 INFO L290 TraceCheckUtils]: 33: Hoare triple {59040#true} ~cond := #in~cond; {59308#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:05:59,545 INFO L272 TraceCheckUtils]: 32: Hoare triple {59405#(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)); {59040#true} is VALID [2022-04-27 13:05:59,545 INFO L290 TraceCheckUtils]: 31: Hoare triple {59405#(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 !!(#t~post8 < 10);havoc #t~post8; {59405#(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-27 13:05:59,546 INFO L290 TraceCheckUtils]: 30: Hoare triple {59405#(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)))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {59405#(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-27 13:05:59,547 INFO L290 TraceCheckUtils]: 29: Hoare triple {59427#(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; {59405#(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-27 13:05:59,547 INFO L290 TraceCheckUtils]: 28: Hoare triple {59427#(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 !!(#t~post7 < 10);havoc #t~post7; {59427#(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-27 13:05:59,548 INFO L290 TraceCheckUtils]: 27: Hoare triple {59427#(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)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {59427#(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-27 13:05:59,548 INFO L290 TraceCheckUtils]: 26: Hoare triple {59040#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {59427#(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-27 13:05:59,548 INFO L290 TraceCheckUtils]: 25: Hoare triple {59040#true} assume !!(#t~post6 < 10);havoc #t~post6; {59040#true} is VALID [2022-04-27 13:05:59,548 INFO L290 TraceCheckUtils]: 24: Hoare triple {59040#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59040#true} is VALID [2022-04-27 13:05:59,549 INFO L290 TraceCheckUtils]: 23: Hoare triple {59040#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; {59040#true} is VALID [2022-04-27 13:05:59,549 INFO L290 TraceCheckUtils]: 22: Hoare triple {59040#true} assume !(~c~0 >= ~b~0); {59040#true} is VALID [2022-04-27 13:05:59,549 INFO L290 TraceCheckUtils]: 21: Hoare triple {59040#true} assume !!(#t~post7 < 10);havoc #t~post7; {59040#true} is VALID [2022-04-27 13:05:59,549 INFO L290 TraceCheckUtils]: 20: Hoare triple {59040#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {59040#true} is VALID [2022-04-27 13:05:59,549 INFO L290 TraceCheckUtils]: 19: Hoare triple {59040#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {59040#true} is VALID [2022-04-27 13:05:59,549 INFO L290 TraceCheckUtils]: 18: Hoare triple {59040#true} assume !!(#t~post6 < 10);havoc #t~post6; {59040#true} is VALID [2022-04-27 13:05:59,549 INFO L290 TraceCheckUtils]: 17: Hoare triple {59040#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59040#true} is VALID [2022-04-27 13:05:59,549 INFO L290 TraceCheckUtils]: 16: Hoare triple {59040#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {59040#true} is VALID [2022-04-27 13:05:59,549 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {59040#true} {59040#true} #96#return; {59040#true} is VALID [2022-04-27 13:05:59,549 INFO L290 TraceCheckUtils]: 14: Hoare triple {59040#true} assume true; {59040#true} is VALID [2022-04-27 13:05:59,549 INFO L290 TraceCheckUtils]: 13: Hoare triple {59040#true} assume !(0 == ~cond); {59040#true} is VALID [2022-04-27 13:05:59,549 INFO L290 TraceCheckUtils]: 12: Hoare triple {59040#true} ~cond := #in~cond; {59040#true} is VALID [2022-04-27 13:05:59,549 INFO L272 TraceCheckUtils]: 11: Hoare triple {59040#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {59040#true} is VALID [2022-04-27 13:05:59,549 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {59040#true} {59040#true} #94#return; {59040#true} is VALID [2022-04-27 13:05:59,549 INFO L290 TraceCheckUtils]: 9: Hoare triple {59040#true} assume true; {59040#true} is VALID [2022-04-27 13:05:59,549 INFO L290 TraceCheckUtils]: 8: Hoare triple {59040#true} assume !(0 == ~cond); {59040#true} is VALID [2022-04-27 13:05:59,549 INFO L290 TraceCheckUtils]: 7: Hoare triple {59040#true} ~cond := #in~cond; {59040#true} is VALID [2022-04-27 13:05:59,550 INFO L272 TraceCheckUtils]: 6: Hoare triple {59040#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {59040#true} is VALID [2022-04-27 13:05:59,550 INFO L290 TraceCheckUtils]: 5: Hoare triple {59040#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; {59040#true} is VALID [2022-04-27 13:05:59,550 INFO L272 TraceCheckUtils]: 4: Hoare triple {59040#true} call #t~ret9 := main(); {59040#true} is VALID [2022-04-27 13:05:59,550 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {59040#true} {59040#true} #108#return; {59040#true} is VALID [2022-04-27 13:05:59,550 INFO L290 TraceCheckUtils]: 2: Hoare triple {59040#true} assume true; {59040#true} is VALID [2022-04-27 13:05:59,550 INFO L290 TraceCheckUtils]: 1: Hoare triple {59040#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);~counter~0 := 0; {59040#true} is VALID [2022-04-27 13:05:59,550 INFO L272 TraceCheckUtils]: 0: Hoare triple {59040#true} call ULTIMATE.init(); {59040#true} is VALID [2022-04-27 13:05:59,550 INFO L134 CoverageAnalysis]: Checked inductivity of 86 backedges. 36 proven. 21 refuted. 0 times theorem prover too weak. 29 trivial. 0 not checked. [2022-04-27 13:05:59,550 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:05:59,550 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2039851660] [2022-04-27 13:05:59,550 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:05:59,551 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1606239529] [2022-04-27 13:05:59,551 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1606239529] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:05:59,551 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:05:59,551 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 13] total 28 [2022-04-27 13:05:59,551 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1075139358] [2022-04-27 13:05:59,551 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:05:59,552 INFO L78 Accepts]: Start accepts. Automaton has has 28 states, 26 states have (on average 3.0) internal successors, (78), 22 states have internal predecessors, (78), 9 states have call successors, (16), 2 states have call predecessors, (16), 3 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) Word has length 75 [2022-04-27 13:05:59,552 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:05:59,552 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 28 states, 26 states have (on average 3.0) internal successors, (78), 22 states have internal predecessors, (78), 9 states have call successors, (16), 2 states have call predecessors, (16), 3 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-27 13:05:59,733 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:05:59,734 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 28 states [2022-04-27 13:05:59,734 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:05:59,734 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2022-04-27 13:05:59,734 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=631, Unknown=0, NotChecked=0, Total=756 [2022-04-27 13:05:59,734 INFO L87 Difference]: Start difference. First operand 1232 states and 1660 transitions. Second operand has 28 states, 26 states have (on average 3.0) internal successors, (78), 22 states have internal predecessors, (78), 9 states have call successors, (16), 2 states have call predecessors, (16), 3 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-27 13:06:18,025 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:06:31,474 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:31,474 INFO L93 Difference]: Finished difference Result 1475 states and 1968 transitions. [2022-04-27 13:06:31,474 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 33 states. [2022-04-27 13:06:31,475 INFO L78 Accepts]: Start accepts. Automaton has has 28 states, 26 states have (on average 3.0) internal successors, (78), 22 states have internal predecessors, (78), 9 states have call successors, (16), 2 states have call predecessors, (16), 3 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) Word has length 75 [2022-04-27 13:06:31,475 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:06:31,475 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 26 states have (on average 3.0) internal successors, (78), 22 states have internal predecessors, (78), 9 states have call successors, (16), 2 states have call predecessors, (16), 3 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-27 13:06:31,477 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 242 transitions. [2022-04-27 13:06:31,477 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 26 states have (on average 3.0) internal successors, (78), 22 states have internal predecessors, (78), 9 states have call successors, (16), 2 states have call predecessors, (16), 3 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-27 13:06:31,479 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 242 transitions. [2022-04-27 13:06:31,479 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 33 states and 242 transitions. [2022-04-27 13:06:31,972 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 242 edges. 242 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:06:32,053 INFO L225 Difference]: With dead ends: 1475 [2022-04-27 13:06:32,053 INFO L226 Difference]: Without dead ends: 1469 [2022-04-27 13:06:32,054 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 179 GetRequests, 129 SyntacticMatches, 2 SemanticMatches, 48 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 607 ImplicationChecksByTransitivity, 7.5s TimeCoverageRelationStatistics Valid=469, Invalid=1981, Unknown=0, NotChecked=0, Total=2450 [2022-04-27 13:06:32,054 INFO L413 NwaCegarLoop]: 58 mSDtfsCounter, 317 mSDsluCounter, 486 mSDsCounter, 0 mSdLazyCounter, 1052 mSolverCounterSat, 338 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 9.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 323 SdHoareTripleChecker+Valid, 544 SdHoareTripleChecker+Invalid, 1391 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 338 IncrementalHoareTripleChecker+Valid, 1052 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 9.6s IncrementalHoareTripleChecker+Time [2022-04-27 13:06:32,054 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [323 Valid, 544 Invalid, 1391 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [338 Valid, 1052 Invalid, 1 Unknown, 0 Unchecked, 9.6s Time] [2022-04-27 13:06:32,056 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1469 states. [2022-04-27 13:06:33,490 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1469 to 1416. [2022-04-27 13:06:33,490 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:06:33,491 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1469 states. Second operand has 1416 states, 1028 states have (on average 1.2752918287937742) internal successors, (1311), 1037 states have internal predecessors, (1311), 298 states have call successors, (298), 91 states have call predecessors, (298), 89 states have return successors, (295), 287 states have call predecessors, (295), 295 states have call successors, (295) [2022-04-27 13:06:33,492 INFO L74 IsIncluded]: Start isIncluded. First operand 1469 states. Second operand has 1416 states, 1028 states have (on average 1.2752918287937742) internal successors, (1311), 1037 states have internal predecessors, (1311), 298 states have call successors, (298), 91 states have call predecessors, (298), 89 states have return successors, (295), 287 states have call predecessors, (295), 295 states have call successors, (295) [2022-04-27 13:06:33,493 INFO L87 Difference]: Start difference. First operand 1469 states. Second operand has 1416 states, 1028 states have (on average 1.2752918287937742) internal successors, (1311), 1037 states have internal predecessors, (1311), 298 states have call successors, (298), 91 states have call predecessors, (298), 89 states have return successors, (295), 287 states have call predecessors, (295), 295 states have call successors, (295) [2022-04-27 13:06:33,547 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:33,547 INFO L93 Difference]: Finished difference Result 1469 states and 1958 transitions. [2022-04-27 13:06:33,547 INFO L276 IsEmpty]: Start isEmpty. Operand 1469 states and 1958 transitions. [2022-04-27 13:06:33,550 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:33,550 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:33,551 INFO L74 IsIncluded]: Start isIncluded. First operand has 1416 states, 1028 states have (on average 1.2752918287937742) internal successors, (1311), 1037 states have internal predecessors, (1311), 298 states have call successors, (298), 91 states have call predecessors, (298), 89 states have return successors, (295), 287 states have call predecessors, (295), 295 states have call successors, (295) Second operand 1469 states. [2022-04-27 13:06:33,552 INFO L87 Difference]: Start difference. First operand has 1416 states, 1028 states have (on average 1.2752918287937742) internal successors, (1311), 1037 states have internal predecessors, (1311), 298 states have call successors, (298), 91 states have call predecessors, (298), 89 states have return successors, (295), 287 states have call predecessors, (295), 295 states have call successors, (295) Second operand 1469 states. [2022-04-27 13:06:33,608 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:33,608 INFO L93 Difference]: Finished difference Result 1469 states and 1958 transitions. [2022-04-27 13:06:33,608 INFO L276 IsEmpty]: Start isEmpty. Operand 1469 states and 1958 transitions. [2022-04-27 13:06:33,611 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:33,611 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:33,611 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:06:33,611 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:06:33,612 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1416 states, 1028 states have (on average 1.2752918287937742) internal successors, (1311), 1037 states have internal predecessors, (1311), 298 states have call successors, (298), 91 states have call predecessors, (298), 89 states have return successors, (295), 287 states have call predecessors, (295), 295 states have call successors, (295) [2022-04-27 13:06:33,711 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1416 states to 1416 states and 1904 transitions. [2022-04-27 13:06:33,711 INFO L78 Accepts]: Start accepts. Automaton has 1416 states and 1904 transitions. Word has length 75 [2022-04-27 13:06:33,712 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:06:33,712 INFO L495 AbstractCegarLoop]: Abstraction has 1416 states and 1904 transitions. [2022-04-27 13:06:33,712 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 28 states, 26 states have (on average 3.0) internal successors, (78), 22 states have internal predecessors, (78), 9 states have call successors, (16), 2 states have call predecessors, (16), 3 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-27 13:06:33,712 INFO L276 IsEmpty]: Start isEmpty. Operand 1416 states and 1904 transitions. [2022-04-27 13:06:33,713 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 89 [2022-04-27 13:06:33,713 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:06:33,713 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 3, 3, 3, 3, 2, 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-27 13:06:33,729 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Ended with exit code 0 [2022-04-27 13:06:33,927 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-27 13:06:33,927 INFO L420 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:06:33,928 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:06:33,928 INFO L85 PathProgramCache]: Analyzing trace with hash -1082523945, now seen corresponding path program 1 times [2022-04-27 13:06:33,928 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:06:33,928 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1781607749] [2022-04-27 13:06:33,928 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:33,928 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:06:33,936 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:06:33,936 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1841069191] [2022-04-27 13:06:33,936 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:33,936 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:06:33,937 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:06:33,938 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-27 13:06:33,938 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-27 13:06:33,982 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:33,984 INFO L263 TraceCheckSpWp]: Trace formula consists of 263 conjuncts, 86 conjunts are in the unsatisfiable core [2022-04-27 13:06:33,995 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:33,996 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:06:35,510 INFO L272 TraceCheckUtils]: 0: Hoare triple {66640#true} call ULTIMATE.init(); {66640#true} is VALID [2022-04-27 13:06:35,511 INFO L290 TraceCheckUtils]: 1: Hoare triple {66640#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);~counter~0 := 0; {66640#true} is VALID [2022-04-27 13:06:35,511 INFO L290 TraceCheckUtils]: 2: Hoare triple {66640#true} assume true; {66640#true} is VALID [2022-04-27 13:06:35,511 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {66640#true} {66640#true} #108#return; {66640#true} is VALID [2022-04-27 13:06:35,511 INFO L272 TraceCheckUtils]: 4: Hoare triple {66640#true} call #t~ret9 := main(); {66640#true} is VALID [2022-04-27 13:06:35,511 INFO L290 TraceCheckUtils]: 5: Hoare triple {66640#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; {66640#true} is VALID [2022-04-27 13:06:35,511 INFO L272 TraceCheckUtils]: 6: Hoare triple {66640#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {66640#true} is VALID [2022-04-27 13:06:35,511 INFO L290 TraceCheckUtils]: 7: Hoare triple {66640#true} ~cond := #in~cond; {66640#true} is VALID [2022-04-27 13:06:35,511 INFO L290 TraceCheckUtils]: 8: Hoare triple {66640#true} assume !(0 == ~cond); {66640#true} is VALID [2022-04-27 13:06:35,511 INFO L290 TraceCheckUtils]: 9: Hoare triple {66640#true} assume true; {66640#true} is VALID [2022-04-27 13:06:35,511 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {66640#true} {66640#true} #94#return; {66640#true} is VALID [2022-04-27 13:06:35,511 INFO L272 TraceCheckUtils]: 11: Hoare triple {66640#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {66640#true} is VALID [2022-04-27 13:06:35,511 INFO L290 TraceCheckUtils]: 12: Hoare triple {66640#true} ~cond := #in~cond; {66640#true} is VALID [2022-04-27 13:06:35,511 INFO L290 TraceCheckUtils]: 13: Hoare triple {66640#true} assume !(0 == ~cond); {66640#true} is VALID [2022-04-27 13:06:35,512 INFO L290 TraceCheckUtils]: 14: Hoare triple {66640#true} assume true; {66640#true} is VALID [2022-04-27 13:06:35,512 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {66640#true} {66640#true} #96#return; {66640#true} is VALID [2022-04-27 13:06:35,512 INFO L290 TraceCheckUtils]: 16: Hoare triple {66640#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {66693#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 13:06:35,512 INFO L290 TraceCheckUtils]: 17: Hoare triple {66693#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {66693#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 13:06:35,513 INFO L290 TraceCheckUtils]: 18: Hoare triple {66693#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 10);havoc #t~post6; {66693#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 13:06:35,513 INFO L290 TraceCheckUtils]: 19: Hoare triple {66693#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= 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; {66703#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-27 13:06:35,513 INFO L290 TraceCheckUtils]: 20: Hoare triple {66703#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {66703#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-27 13:06:35,513 INFO L290 TraceCheckUtils]: 21: Hoare triple {66703#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !!(#t~post7 < 10);havoc #t~post7; {66703#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-27 13:06:35,514 INFO L290 TraceCheckUtils]: 22: Hoare triple {66703#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {66713#(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_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-27 13:06:35,515 INFO L290 TraceCheckUtils]: 23: Hoare triple {66713#(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_~p~0 1) (= 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; {66717#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-27 13:06:35,515 INFO L290 TraceCheckUtils]: 24: Hoare triple {66717#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {66717#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-27 13:06:35,515 INFO L290 TraceCheckUtils]: 25: Hoare triple {66717#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post6 < 10);havoc #t~post6; {66717#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-27 13:06:35,515 INFO L290 TraceCheckUtils]: 26: Hoare triple {66717#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= 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; {66727#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-27 13:06:35,516 INFO L290 TraceCheckUtils]: 27: Hoare triple {66727#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {66727#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-27 13:06:35,516 INFO L290 TraceCheckUtils]: 28: Hoare triple {66727#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post7 < 10);havoc #t~post7; {66727#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-27 13:06:35,517 INFO L290 TraceCheckUtils]: 29: Hoare triple {66727#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= 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; {66737#(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) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-27 13:06:35,517 INFO L290 TraceCheckUtils]: 30: Hoare triple {66737#(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) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {66737#(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) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-27 13:06:35,517 INFO L290 TraceCheckUtils]: 31: Hoare triple {66737#(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) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !!(#t~post8 < 10);havoc #t~post8; {66737#(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) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-27 13:06:35,517 INFO L272 TraceCheckUtils]: 32: Hoare triple {66737#(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) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= 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)); {66640#true} is VALID [2022-04-27 13:06:35,517 INFO L290 TraceCheckUtils]: 33: Hoare triple {66640#true} ~cond := #in~cond; {66640#true} is VALID [2022-04-27 13:06:35,517 INFO L290 TraceCheckUtils]: 34: Hoare triple {66640#true} assume !(0 == ~cond); {66640#true} is VALID [2022-04-27 13:06:35,517 INFO L290 TraceCheckUtils]: 35: Hoare triple {66640#true} assume true; {66640#true} is VALID [2022-04-27 13:06:35,518 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {66640#true} {66737#(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) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #98#return; {66737#(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) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-27 13:06:35,518 INFO L272 TraceCheckUtils]: 37: Hoare triple {66737#(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) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= 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)); {66640#true} is VALID [2022-04-27 13:06:35,518 INFO L290 TraceCheckUtils]: 38: Hoare triple {66640#true} ~cond := #in~cond; {66640#true} is VALID [2022-04-27 13:06:35,518 INFO L290 TraceCheckUtils]: 39: Hoare triple {66640#true} assume !(0 == ~cond); {66640#true} is VALID [2022-04-27 13:06:35,518 INFO L290 TraceCheckUtils]: 40: Hoare triple {66640#true} assume true; {66640#true} is VALID [2022-04-27 13:06:35,519 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {66640#true} {66737#(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) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #100#return; {66737#(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) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-27 13:06:35,519 INFO L272 TraceCheckUtils]: 42: Hoare triple {66737#(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) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= 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)); {66640#true} is VALID [2022-04-27 13:06:35,519 INFO L290 TraceCheckUtils]: 43: Hoare triple {66640#true} ~cond := #in~cond; {66640#true} is VALID [2022-04-27 13:06:35,519 INFO L290 TraceCheckUtils]: 44: Hoare triple {66640#true} assume !(0 == ~cond); {66640#true} is VALID [2022-04-27 13:06:35,519 INFO L290 TraceCheckUtils]: 45: Hoare triple {66640#true} assume true; {66640#true} is VALID [2022-04-27 13:06:35,519 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {66640#true} {66737#(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) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #102#return; {66737#(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) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-27 13:06:35,519 INFO L272 TraceCheckUtils]: 47: Hoare triple {66737#(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) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= 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)); {66640#true} is VALID [2022-04-27 13:06:35,520 INFO L290 TraceCheckUtils]: 48: Hoare triple {66640#true} ~cond := #in~cond; {66640#true} is VALID [2022-04-27 13:06:35,520 INFO L290 TraceCheckUtils]: 49: Hoare triple {66640#true} assume !(0 == ~cond); {66640#true} is VALID [2022-04-27 13:06:35,520 INFO L290 TraceCheckUtils]: 50: Hoare triple {66640#true} assume true; {66640#true} is VALID [2022-04-27 13:06:35,520 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {66640#true} {66737#(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) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #104#return; {66737#(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) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-27 13:06:35,521 INFO L290 TraceCheckUtils]: 52: Hoare triple {66737#(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) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= 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; {66807#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-27 13:06:35,521 INFO L290 TraceCheckUtils]: 53: Hoare triple {66807#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {66807#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-27 13:06:35,521 INFO L290 TraceCheckUtils]: 54: Hoare triple {66807#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} assume !!(#t~post8 < 10);havoc #t~post8; {66807#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-27 13:06:35,521 INFO L272 TraceCheckUtils]: 55: Hoare triple {66807#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= 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)); {66640#true} is VALID [2022-04-27 13:06:35,522 INFO L290 TraceCheckUtils]: 56: Hoare triple {66640#true} ~cond := #in~cond; {66820#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:06:35,522 INFO L290 TraceCheckUtils]: 57: Hoare triple {66820#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:06:35,522 INFO L290 TraceCheckUtils]: 58: Hoare triple {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:06:35,523 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} {66807#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} #98#return; {66831#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= 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-27 13:06:35,523 INFO L272 TraceCheckUtils]: 60: Hoare triple {66831#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= 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)); {66640#true} is VALID [2022-04-27 13:06:35,523 INFO L290 TraceCheckUtils]: 61: Hoare triple {66640#true} ~cond := #in~cond; {66820#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:06:35,524 INFO L290 TraceCheckUtils]: 62: Hoare triple {66820#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:06:35,524 INFO L290 TraceCheckUtils]: 63: Hoare triple {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:06:35,525 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} {66831#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= 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))))} #100#return; {66847#(and (< main_~x~0 main_~c~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_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= 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-27 13:06:35,525 INFO L272 TraceCheckUtils]: 65: Hoare triple {66847#(and (< main_~x~0 main_~c~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_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= 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)); {66640#true} is VALID [2022-04-27 13:06:35,525 INFO L290 TraceCheckUtils]: 66: Hoare triple {66640#true} ~cond := #in~cond; {66640#true} is VALID [2022-04-27 13:06:35,525 INFO L290 TraceCheckUtils]: 67: Hoare triple {66640#true} assume !(0 == ~cond); {66640#true} is VALID [2022-04-27 13:06:35,525 INFO L290 TraceCheckUtils]: 68: Hoare triple {66640#true} assume true; {66640#true} is VALID [2022-04-27 13:06:35,525 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {66640#true} {66847#(and (< main_~x~0 main_~c~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_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= 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))))} #102#return; {66847#(and (< main_~x~0 main_~c~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_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= 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-27 13:06:35,525 INFO L272 TraceCheckUtils]: 70: Hoare triple {66847#(and (< main_~x~0 main_~c~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_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= 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)); {66640#true} is VALID [2022-04-27 13:06:35,526 INFO L290 TraceCheckUtils]: 71: Hoare triple {66640#true} ~cond := #in~cond; {66820#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:06:35,526 INFO L290 TraceCheckUtils]: 72: Hoare triple {66820#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:06:35,526 INFO L290 TraceCheckUtils]: 73: Hoare triple {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:06:35,526 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} {66847#(and (< main_~x~0 main_~c~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_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= 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))))} #104#return; {66847#(and (< main_~x~0 main_~c~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_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= 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-27 13:06:35,527 INFO L290 TraceCheckUtils]: 75: Hoare triple {66847#(and (< main_~x~0 main_~c~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_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= 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); {66847#(and (< main_~x~0 main_~c~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_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= 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-27 13:06:35,528 INFO L290 TraceCheckUtils]: 76: Hoare triple {66847#(and (< main_~x~0 main_~c~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_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= 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; {66884#(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_~q~0 1) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (<= 0 main_~c~0) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:06:35,528 INFO L290 TraceCheckUtils]: 77: Hoare triple {66884#(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_~q~0 1) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (<= 0 main_~c~0) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {66884#(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_~q~0 1) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (<= 0 main_~c~0) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:06:35,529 INFO L290 TraceCheckUtils]: 78: Hoare triple {66884#(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_~q~0 1) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (<= 0 main_~c~0) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 10);havoc #t~post7; {66884#(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_~q~0 1) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (<= 0 main_~c~0) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:06:35,529 INFO L290 TraceCheckUtils]: 79: Hoare triple {66884#(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_~q~0 1) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (<= 0 main_~c~0) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {66894#(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) (<= 0 main_~c~0) (= main_~b~0 main_~x~0) (= main_~k~0 2) (< main_~c~0 main_~b~0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:06:35,530 INFO L290 TraceCheckUtils]: 80: Hoare triple {66894#(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) (<= 0 main_~c~0) (= main_~b~0 main_~x~0) (= main_~k~0 2) (< main_~c~0 main_~b~0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~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; {66898#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~p~0 main_~x~0))) (= main_~s~0 1) (< main_~y~0 (* 3 (* main_~p~0 main_~x~0))) (<= (* 2 (* main_~p~0 main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-27 13:06:35,531 INFO L290 TraceCheckUtils]: 81: Hoare triple {66898#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~p~0 main_~x~0))) (= main_~s~0 1) (< main_~y~0 (* 3 (* main_~p~0 main_~x~0))) (<= (* 2 (* main_~p~0 main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (= (+ (* main_~p~0 2) main_~q~0) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {66898#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~p~0 main_~x~0))) (= main_~s~0 1) (< main_~y~0 (* 3 (* main_~p~0 main_~x~0))) (<= (* 2 (* main_~p~0 main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-27 13:06:35,531 INFO L290 TraceCheckUtils]: 82: Hoare triple {66898#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~p~0 main_~x~0))) (= main_~s~0 1) (< main_~y~0 (* 3 (* main_~p~0 main_~x~0))) (<= (* 2 (* main_~p~0 main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !!(#t~post6 < 10);havoc #t~post6; {66898#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~p~0 main_~x~0))) (= main_~s~0 1) (< main_~y~0 (* 3 (* main_~p~0 main_~x~0))) (<= (* 2 (* main_~p~0 main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-27 13:06:35,531 INFO L290 TraceCheckUtils]: 83: Hoare triple {66898#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~p~0 main_~x~0))) (= main_~s~0 1) (< main_~y~0 (* 3 (* main_~p~0 main_~x~0))) (<= (* 2 (* main_~p~0 main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !(0 != ~b~0); {66908#(and (= main_~r~0 0) (= main_~y~0 (* 2 (* main_~p~0 main_~x~0))) (= main_~s~0 1) (< main_~y~0 (* 3 (* main_~p~0 main_~x~0))) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-27 13:06:35,533 INFO L272 TraceCheckUtils]: 84: Hoare triple {66908#(and (= main_~r~0 0) (= main_~y~0 (* 2 (* main_~p~0 main_~x~0))) (= main_~s~0 1) (< main_~y~0 (* 3 (* main_~p~0 main_~x~0))) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~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)); {66912#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:06:35,533 INFO L290 TraceCheckUtils]: 85: Hoare triple {66912#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {66916#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:06:35,533 INFO L290 TraceCheckUtils]: 86: Hoare triple {66916#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {66641#false} is VALID [2022-04-27 13:06:35,533 INFO L290 TraceCheckUtils]: 87: Hoare triple {66641#false} assume !false; {66641#false} is VALID [2022-04-27 13:06:35,534 INFO L134 CoverageAnalysis]: Checked inductivity of 158 backedges. 52 proven. 35 refuted. 0 times theorem prover too weak. 71 trivial. 0 not checked. [2022-04-27 13:06:35,534 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:07:54,896 INFO L290 TraceCheckUtils]: 87: Hoare triple {66641#false} assume !false; {66641#false} is VALID [2022-04-27 13:07:54,897 INFO L290 TraceCheckUtils]: 86: Hoare triple {66916#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {66641#false} is VALID [2022-04-27 13:07:54,898 INFO L290 TraceCheckUtils]: 85: Hoare triple {66912#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {66916#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:07:54,898 INFO L272 TraceCheckUtils]: 84: Hoare triple {66932#(= (+ (* 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)); {66912#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:07:54,899 INFO L290 TraceCheckUtils]: 83: Hoare triple {66936#(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); {66932#(= (+ (* 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-27 13:07:54,899 INFO L290 TraceCheckUtils]: 82: Hoare triple {66936#(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 !!(#t~post6 < 10);havoc #t~post6; {66936#(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-27 13:07:54,900 INFO L290 TraceCheckUtils]: 81: Hoare triple {66936#(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)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {66936#(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-27 13:07:55,041 INFO L290 TraceCheckUtils]: 80: Hoare triple {66946#(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; {66936#(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-27 13:07:55,042 INFO L290 TraceCheckUtils]: 79: Hoare triple {66950#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~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); {66946#(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-27 13:07:55,042 INFO L290 TraceCheckUtils]: 78: Hoare triple {66950#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~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 !!(#t~post7 < 10);havoc #t~post7; {66950#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~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-27 13:07:55,042 INFO L290 TraceCheckUtils]: 77: Hoare triple {66950#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~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))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {66950#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~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-27 13:07:57,047 WARN L290 TraceCheckUtils]: 76: Hoare triple {66960#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~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; {66950#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~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 UNKNOWN [2022-04-27 13:07:57,048 INFO L290 TraceCheckUtils]: 75: Hoare triple {66960#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~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); {66960#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~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-27 13:07:57,048 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} {66967#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~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))))} #104#return; {66960#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~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-27 13:07:57,049 INFO L290 TraceCheckUtils]: 73: Hoare triple {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:07:57,049 INFO L290 TraceCheckUtils]: 72: Hoare triple {66977#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:07:57,049 INFO L290 TraceCheckUtils]: 71: Hoare triple {66640#true} ~cond := #in~cond; {66977#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:07:57,049 INFO L272 TraceCheckUtils]: 70: Hoare triple {66967#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~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)); {66640#true} is VALID [2022-04-27 13:07:57,050 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {66640#true} {66967#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~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))))} #102#return; {66967#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~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-27 13:07:57,050 INFO L290 TraceCheckUtils]: 68: Hoare triple {66640#true} assume true; {66640#true} is VALID [2022-04-27 13:07:57,050 INFO L290 TraceCheckUtils]: 67: Hoare triple {66640#true} assume !(0 == ~cond); {66640#true} is VALID [2022-04-27 13:07:57,050 INFO L290 TraceCheckUtils]: 66: Hoare triple {66640#true} ~cond := #in~cond; {66640#true} is VALID [2022-04-27 13:07:57,050 INFO L272 TraceCheckUtils]: 65: Hoare triple {66967#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~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)); {66640#true} is VALID [2022-04-27 13:07:57,051 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} {66999#(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 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))))} #100#return; {66967#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~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-27 13:07:57,051 INFO L290 TraceCheckUtils]: 63: Hoare triple {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:07:57,052 INFO L290 TraceCheckUtils]: 62: Hoare triple {66977#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:07:57,052 INFO L290 TraceCheckUtils]: 61: Hoare triple {66640#true} ~cond := #in~cond; {66977#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:07:57,052 INFO L272 TraceCheckUtils]: 60: Hoare triple {66999#(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 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)); {66640#true} is VALID [2022-04-27 13:07:57,053 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} {67015#(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 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))))} #98#return; {66999#(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 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-27 13:07:57,053 INFO L290 TraceCheckUtils]: 58: Hoare triple {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:07:57,053 INFO L290 TraceCheckUtils]: 57: Hoare triple {66977#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {66824#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:07:57,054 INFO L290 TraceCheckUtils]: 56: Hoare triple {66640#true} ~cond := #in~cond; {66977#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:07:57,054 INFO L272 TraceCheckUtils]: 55: Hoare triple {67015#(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 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)); {66640#true} is VALID [2022-04-27 13:07:57,054 INFO L290 TraceCheckUtils]: 54: Hoare triple {67015#(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 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 !!(#t~post8 < 10);havoc #t~post8; {67015#(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 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-27 13:07:57,055 INFO L290 TraceCheckUtils]: 53: Hoare triple {67015#(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 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))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {67015#(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 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-27 13:07:57,115 INFO L290 TraceCheckUtils]: 52: Hoare triple {67037#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {67015#(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 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-27 13:07:57,115 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {66640#true} {67037#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #104#return; {67037#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-27 13:07:57,116 INFO L290 TraceCheckUtils]: 50: Hoare triple {66640#true} assume true; {66640#true} is VALID [2022-04-27 13:07:57,116 INFO L290 TraceCheckUtils]: 49: Hoare triple {66640#true} assume !(0 == ~cond); {66640#true} is VALID [2022-04-27 13:07:57,116 INFO L290 TraceCheckUtils]: 48: Hoare triple {66640#true} ~cond := #in~cond; {66640#true} is VALID [2022-04-27 13:07:57,116 INFO L272 TraceCheckUtils]: 47: Hoare triple {67037#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {66640#true} is VALID [2022-04-27 13:07:57,116 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {66640#true} {67037#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #102#return; {67037#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-27 13:07:57,116 INFO L290 TraceCheckUtils]: 45: Hoare triple {66640#true} assume true; {66640#true} is VALID [2022-04-27 13:07:57,116 INFO L290 TraceCheckUtils]: 44: Hoare triple {66640#true} assume !(0 == ~cond); {66640#true} is VALID [2022-04-27 13:07:57,116 INFO L290 TraceCheckUtils]: 43: Hoare triple {66640#true} ~cond := #in~cond; {66640#true} is VALID [2022-04-27 13:07:57,117 INFO L272 TraceCheckUtils]: 42: Hoare triple {67037#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {66640#true} is VALID [2022-04-27 13:07:57,117 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {66640#true} {67037#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #100#return; {67037#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-27 13:07:57,117 INFO L290 TraceCheckUtils]: 40: Hoare triple {66640#true} assume true; {66640#true} is VALID [2022-04-27 13:07:57,117 INFO L290 TraceCheckUtils]: 39: Hoare triple {66640#true} assume !(0 == ~cond); {66640#true} is VALID [2022-04-27 13:07:57,117 INFO L290 TraceCheckUtils]: 38: Hoare triple {66640#true} ~cond := #in~cond; {66640#true} is VALID [2022-04-27 13:07:57,117 INFO L272 TraceCheckUtils]: 37: Hoare triple {67037#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {66640#true} is VALID [2022-04-27 13:07:57,118 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {66640#true} {67037#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #98#return; {67037#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-27 13:07:57,118 INFO L290 TraceCheckUtils]: 35: Hoare triple {66640#true} assume true; {66640#true} is VALID [2022-04-27 13:07:57,118 INFO L290 TraceCheckUtils]: 34: Hoare triple {66640#true} assume !(0 == ~cond); {66640#true} is VALID [2022-04-27 13:07:57,118 INFO L290 TraceCheckUtils]: 33: Hoare triple {66640#true} ~cond := #in~cond; {66640#true} is VALID [2022-04-27 13:07:57,118 INFO L272 TraceCheckUtils]: 32: Hoare triple {67037#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {66640#true} is VALID [2022-04-27 13:07:57,119 INFO L290 TraceCheckUtils]: 31: Hoare triple {67037#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} assume !!(#t~post8 < 10);havoc #t~post8; {67037#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-27 13:07:57,119 INFO L290 TraceCheckUtils]: 30: Hoare triple {67037#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {67037#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-27 13:07:57,120 INFO L290 TraceCheckUtils]: 29: Hoare triple {67107#(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)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 1)) (* 2 (* main_~q~0 main_~x~0 1)) (* main_~y~0 main_~s~0))) (not (= main_~c~0 (* main_~b~0 2))) (<= main_~b~0 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {67037#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~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 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-27 13:07:57,121 INFO L290 TraceCheckUtils]: 28: Hoare triple {67107#(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)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 1)) (* 2 (* main_~q~0 main_~x~0 1)) (* main_~y~0 main_~s~0))) (not (= main_~c~0 (* main_~b~0 2))) (<= main_~b~0 0))} assume !!(#t~post7 < 10);havoc #t~post7; {67107#(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)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 1)) (* 2 (* main_~q~0 main_~x~0 1)) (* main_~y~0 main_~s~0))) (not (= main_~c~0 (* main_~b~0 2))) (<= main_~b~0 0))} is VALID [2022-04-27 13:07:57,121 INFO L290 TraceCheckUtils]: 27: Hoare triple {67107#(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)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 1)) (* 2 (* main_~q~0 main_~x~0 1)) (* main_~y~0 main_~s~0))) (not (= main_~c~0 (* main_~b~0 2))) (<= main_~b~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {67107#(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)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 1)) (* 2 (* main_~q~0 main_~x~0 1)) (* main_~y~0 main_~s~0))) (not (= main_~c~0 (* main_~b~0 2))) (<= main_~b~0 0))} is VALID [2022-04-27 13:07:57,122 INFO L290 TraceCheckUtils]: 26: Hoare triple {66640#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {67107#(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)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 1)) (* 2 (* main_~q~0 main_~x~0 1)) (* main_~y~0 main_~s~0))) (not (= main_~c~0 (* main_~b~0 2))) (<= main_~b~0 0))} is VALID [2022-04-27 13:07:57,122 INFO L290 TraceCheckUtils]: 25: Hoare triple {66640#true} assume !!(#t~post6 < 10);havoc #t~post6; {66640#true} is VALID [2022-04-27 13:07:57,123 INFO L290 TraceCheckUtils]: 24: Hoare triple {66640#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {66640#true} is VALID [2022-04-27 13:07:57,123 INFO L290 TraceCheckUtils]: 23: Hoare triple {66640#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; {66640#true} is VALID [2022-04-27 13:07:57,123 INFO L290 TraceCheckUtils]: 22: Hoare triple {66640#true} assume !(~c~0 >= ~b~0); {66640#true} is VALID [2022-04-27 13:07:57,123 INFO L290 TraceCheckUtils]: 21: Hoare triple {66640#true} assume !!(#t~post7 < 10);havoc #t~post7; {66640#true} is VALID [2022-04-27 13:07:57,123 INFO L290 TraceCheckUtils]: 20: Hoare triple {66640#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {66640#true} is VALID [2022-04-27 13:07:57,123 INFO L290 TraceCheckUtils]: 19: Hoare triple {66640#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {66640#true} is VALID [2022-04-27 13:07:57,123 INFO L290 TraceCheckUtils]: 18: Hoare triple {66640#true} assume !!(#t~post6 < 10);havoc #t~post6; {66640#true} is VALID [2022-04-27 13:07:57,123 INFO L290 TraceCheckUtils]: 17: Hoare triple {66640#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {66640#true} is VALID [2022-04-27 13:07:57,123 INFO L290 TraceCheckUtils]: 16: Hoare triple {66640#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {66640#true} is VALID [2022-04-27 13:07:57,123 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {66640#true} {66640#true} #96#return; {66640#true} is VALID [2022-04-27 13:07:57,123 INFO L290 TraceCheckUtils]: 14: Hoare triple {66640#true} assume true; {66640#true} is VALID [2022-04-27 13:07:57,123 INFO L290 TraceCheckUtils]: 13: Hoare triple {66640#true} assume !(0 == ~cond); {66640#true} is VALID [2022-04-27 13:07:57,123 INFO L290 TraceCheckUtils]: 12: Hoare triple {66640#true} ~cond := #in~cond; {66640#true} is VALID [2022-04-27 13:07:57,123 INFO L272 TraceCheckUtils]: 11: Hoare triple {66640#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {66640#true} is VALID [2022-04-27 13:07:57,123 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {66640#true} {66640#true} #94#return; {66640#true} is VALID [2022-04-27 13:07:57,124 INFO L290 TraceCheckUtils]: 9: Hoare triple {66640#true} assume true; {66640#true} is VALID [2022-04-27 13:07:57,124 INFO L290 TraceCheckUtils]: 8: Hoare triple {66640#true} assume !(0 == ~cond); {66640#true} is VALID [2022-04-27 13:07:57,124 INFO L290 TraceCheckUtils]: 7: Hoare triple {66640#true} ~cond := #in~cond; {66640#true} is VALID [2022-04-27 13:07:57,124 INFO L272 TraceCheckUtils]: 6: Hoare triple {66640#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {66640#true} is VALID [2022-04-27 13:07:57,124 INFO L290 TraceCheckUtils]: 5: Hoare triple {66640#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; {66640#true} is VALID [2022-04-27 13:07:57,124 INFO L272 TraceCheckUtils]: 4: Hoare triple {66640#true} call #t~ret9 := main(); {66640#true} is VALID [2022-04-27 13:07:57,124 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {66640#true} {66640#true} #108#return; {66640#true} is VALID [2022-04-27 13:07:57,124 INFO L290 TraceCheckUtils]: 2: Hoare triple {66640#true} assume true; {66640#true} is VALID [2022-04-27 13:07:57,124 INFO L290 TraceCheckUtils]: 1: Hoare triple {66640#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);~counter~0 := 0; {66640#true} is VALID [2022-04-27 13:07:57,124 INFO L272 TraceCheckUtils]: 0: Hoare triple {66640#true} call ULTIMATE.init(); {66640#true} is VALID [2022-04-27 13:07:57,125 INFO L134 CoverageAnalysis]: Checked inductivity of 158 backedges. 65 proven. 19 refuted. 0 times theorem prover too weak. 74 trivial. 0 not checked. [2022-04-27 13:07:57,125 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:07:57,125 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1781607749] [2022-04-27 13:07:57,125 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:07:57,125 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1841069191] [2022-04-27 13:07:57,125 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1841069191] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:07:57,125 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:07:57,125 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 16] total 30 [2022-04-27 13:07:57,125 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1197375173] [2022-04-27 13:07:57,125 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:07:57,126 INFO L78 Accepts]: Start accepts. Automaton has has 30 states, 25 states have (on average 2.84) internal successors, (71), 26 states have internal predecessors, (71), 11 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 8 states have call predecessors, (19), 9 states have call successors, (19) Word has length 88 [2022-04-27 13:07:57,126 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:07:57,126 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 30 states, 25 states have (on average 2.84) internal successors, (71), 26 states have internal predecessors, (71), 11 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 8 states have call predecessors, (19), 9 states have call successors, (19) [2022-04-27 13:07:58,165 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:07:58,165 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 30 states [2022-04-27 13:07:58,165 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:07:58,166 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 30 interpolants. [2022-04-27 13:07:58,166 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=142, Invalid=728, Unknown=0, NotChecked=0, Total=870 [2022-04-27 13:07:58,166 INFO L87 Difference]: Start difference. First operand 1416 states and 1904 transitions. Second operand has 30 states, 25 states have (on average 2.84) internal successors, (71), 26 states have internal predecessors, (71), 11 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 8 states have call predecessors, (19), 9 states have call successors, (19) [2022-04-27 13:08:30,364 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:08:48,419 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:08:53,011 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:09:01,601 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:09:22,137 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:09:24,179 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:09:28,045 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:09:30,067 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:09:50,693 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:09:50,693 INFO L93 Difference]: Finished difference Result 1739 states and 2346 transitions. [2022-04-27 13:09:50,693 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 84 states. [2022-04-27 13:09:50,693 INFO L78 Accepts]: Start accepts. Automaton has has 30 states, 25 states have (on average 2.84) internal successors, (71), 26 states have internal predecessors, (71), 11 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 8 states have call predecessors, (19), 9 states have call successors, (19) Word has length 88 [2022-04-27 13:09:50,693 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:09:50,693 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 30 states, 25 states have (on average 2.84) internal successors, (71), 26 states have internal predecessors, (71), 11 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 8 states have call predecessors, (19), 9 states have call successors, (19) [2022-04-27 13:09:50,719 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 424 transitions. [2022-04-27 13:09:50,720 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 30 states, 25 states have (on average 2.84) internal successors, (71), 26 states have internal predecessors, (71), 11 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 8 states have call predecessors, (19), 9 states have call successors, (19) [2022-04-27 13:09:50,726 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 424 transitions. [2022-04-27 13:09:50,726 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 84 states and 424 transitions. [2022-04-27 13:10:01,427 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 424 edges. 422 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-27 13:10:01,557 INFO L225 Difference]: With dead ends: 1739 [2022-04-27 13:10:01,557 INFO L226 Difference]: Without dead ends: 1728 [2022-04-27 13:10:01,560 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 271 GetRequests, 167 SyntacticMatches, 1 SemanticMatches, 103 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3594 ImplicationChecksByTransitivity, 50.3s TimeCoverageRelationStatistics Valid=1770, Invalid=9150, Unknown=0, NotChecked=0, Total=10920 [2022-04-27 13:10:01,561 INFO L413 NwaCegarLoop]: 87 mSDtfsCounter, 390 mSDsluCounter, 881 mSDsCounter, 0 mSdLazyCounter, 1958 mSolverCounterSat, 486 mSolverCounterUnsat, 8 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 33.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 390 SdHoareTripleChecker+Valid, 968 SdHoareTripleChecker+Invalid, 2452 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 486 IncrementalHoareTripleChecker+Valid, 1958 IncrementalHoareTripleChecker+Invalid, 8 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 33.1s IncrementalHoareTripleChecker+Time [2022-04-27 13:10:01,562 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [390 Valid, 968 Invalid, 2452 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [486 Valid, 1958 Invalid, 8 Unknown, 0 Unchecked, 33.1s Time] [2022-04-27 13:10:01,568 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1728 states. [2022-04-27 13:10:04,905 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1728 to 1597. [2022-04-27 13:10:04,905 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:10:04,906 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1728 states. Second operand has 1597 states, 1149 states have (on average 1.288076588337685) internal successors, (1480), 1158 states have internal predecessors, (1480), 350 states have call successors, (350), 99 states have call predecessors, (350), 97 states have return successors, (347), 339 states have call predecessors, (347), 347 states have call successors, (347) [2022-04-27 13:10:04,907 INFO L74 IsIncluded]: Start isIncluded. First operand 1728 states. Second operand has 1597 states, 1149 states have (on average 1.288076588337685) internal successors, (1480), 1158 states have internal predecessors, (1480), 350 states have call successors, (350), 99 states have call predecessors, (350), 97 states have return successors, (347), 339 states have call predecessors, (347), 347 states have call successors, (347) [2022-04-27 13:10:04,908 INFO L87 Difference]: Start difference. First operand 1728 states. Second operand has 1597 states, 1149 states have (on average 1.288076588337685) internal successors, (1480), 1158 states have internal predecessors, (1480), 350 states have call successors, (350), 99 states have call predecessors, (350), 97 states have return successors, (347), 339 states have call predecessors, (347), 347 states have call successors, (347) [2022-04-27 13:10:04,994 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:10:04,994 INFO L93 Difference]: Finished difference Result 1728 states and 2326 transitions. [2022-04-27 13:10:04,994 INFO L276 IsEmpty]: Start isEmpty. Operand 1728 states and 2326 transitions. [2022-04-27 13:10:04,997 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:10:04,997 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:10:04,999 INFO L74 IsIncluded]: Start isIncluded. First operand has 1597 states, 1149 states have (on average 1.288076588337685) internal successors, (1480), 1158 states have internal predecessors, (1480), 350 states have call successors, (350), 99 states have call predecessors, (350), 97 states have return successors, (347), 339 states have call predecessors, (347), 347 states have call successors, (347) Second operand 1728 states. [2022-04-27 13:10:05,000 INFO L87 Difference]: Start difference. First operand has 1597 states, 1149 states have (on average 1.288076588337685) internal successors, (1480), 1158 states have internal predecessors, (1480), 350 states have call successors, (350), 99 states have call predecessors, (350), 97 states have return successors, (347), 339 states have call predecessors, (347), 347 states have call successors, (347) Second operand 1728 states. [2022-04-27 13:10:05,089 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:10:05,089 INFO L93 Difference]: Finished difference Result 1728 states and 2326 transitions. [2022-04-27 13:10:05,090 INFO L276 IsEmpty]: Start isEmpty. Operand 1728 states and 2326 transitions. [2022-04-27 13:10:05,092 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:10:05,093 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:10:05,093 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:10:05,093 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:10:05,094 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1597 states, 1149 states have (on average 1.288076588337685) internal successors, (1480), 1158 states have internal predecessors, (1480), 350 states have call successors, (350), 99 states have call predecessors, (350), 97 states have return successors, (347), 339 states have call predecessors, (347), 347 states have call successors, (347) [2022-04-27 13:10:05,221 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1597 states to 1597 states and 2177 transitions. [2022-04-27 13:10:05,222 INFO L78 Accepts]: Start accepts. Automaton has 1597 states and 2177 transitions. Word has length 88 [2022-04-27 13:10:05,223 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:10:05,223 INFO L495 AbstractCegarLoop]: Abstraction has 1597 states and 2177 transitions. [2022-04-27 13:10:05,223 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 30 states, 25 states have (on average 2.84) internal successors, (71), 26 states have internal predecessors, (71), 11 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 8 states have call predecessors, (19), 9 states have call successors, (19) [2022-04-27 13:10:05,223 INFO L276 IsEmpty]: Start isEmpty. Operand 1597 states and 2177 transitions. [2022-04-27 13:10:05,224 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2022-04-27 13:10:05,224 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:10:05,224 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 5, 4, 4, 3, 3, 3, 2, 2, 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] [2022-04-27 13:10:05,243 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Forceful destruction successful, exit code 0 [2022-04-27 13:10:05,439 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 22 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable21 [2022-04-27 13:10:05,439 INFO L420 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:10:05,440 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:10:05,440 INFO L85 PathProgramCache]: Analyzing trace with hash -2034142563, now seen corresponding path program 1 times [2022-04-27 13:10:05,440 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:10:05,440 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [321369912] [2022-04-27 13:10:05,440 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:10:05,440 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:10:05,457 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:10:05,457 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1226962815] [2022-04-27 13:10:05,457 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:10:05,458 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:10:05,458 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:10:05,460 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:10:05,460 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Waiting until timeout for monitored process [2022-04-27 13:10:05,516 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:10:05,517 INFO L263 TraceCheckSpWp]: Trace formula consists of 300 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-27 13:10:05,535 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:10:05,536 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:10:06,021 INFO L272 TraceCheckUtils]: 0: Hoare triple {75595#true} call ULTIMATE.init(); {75595#true} is VALID [2022-04-27 13:10:06,021 INFO L290 TraceCheckUtils]: 1: Hoare triple {75595#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);~counter~0 := 0; {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,021 INFO L290 TraceCheckUtils]: 2: Hoare triple {75603#(<= ~counter~0 0)} assume true; {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,022 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {75603#(<= ~counter~0 0)} {75595#true} #108#return; {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,022 INFO L272 TraceCheckUtils]: 4: Hoare triple {75603#(<= ~counter~0 0)} call #t~ret9 := main(); {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,022 INFO L290 TraceCheckUtils]: 5: Hoare triple {75603#(<= ~counter~0 0)} 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; {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,022 INFO L272 TraceCheckUtils]: 6: Hoare triple {75603#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,023 INFO L290 TraceCheckUtils]: 7: Hoare triple {75603#(<= ~counter~0 0)} ~cond := #in~cond; {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,023 INFO L290 TraceCheckUtils]: 8: Hoare triple {75603#(<= ~counter~0 0)} assume !(0 == ~cond); {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,023 INFO L290 TraceCheckUtils]: 9: Hoare triple {75603#(<= ~counter~0 0)} assume true; {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,023 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {75603#(<= ~counter~0 0)} {75603#(<= ~counter~0 0)} #94#return; {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,023 INFO L272 TraceCheckUtils]: 11: Hoare triple {75603#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,024 INFO L290 TraceCheckUtils]: 12: Hoare triple {75603#(<= ~counter~0 0)} ~cond := #in~cond; {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,024 INFO L290 TraceCheckUtils]: 13: Hoare triple {75603#(<= ~counter~0 0)} assume !(0 == ~cond); {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,024 INFO L290 TraceCheckUtils]: 14: Hoare triple {75603#(<= ~counter~0 0)} assume true; {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,024 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {75603#(<= ~counter~0 0)} {75603#(<= ~counter~0 0)} #96#return; {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,025 INFO L290 TraceCheckUtils]: 16: Hoare triple {75603#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,026 INFO L290 TraceCheckUtils]: 17: Hoare triple {75603#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {75652#(<= ~counter~0 1)} is VALID [2022-04-27 13:10:06,026 INFO L290 TraceCheckUtils]: 18: Hoare triple {75652#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {75652#(<= ~counter~0 1)} is VALID [2022-04-27 13:10:06,026 INFO L290 TraceCheckUtils]: 19: Hoare triple {75652#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {75652#(<= ~counter~0 1)} is VALID [2022-04-27 13:10:06,027 INFO L290 TraceCheckUtils]: 20: Hoare triple {75652#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {75662#(<= ~counter~0 2)} is VALID [2022-04-27 13:10:06,027 INFO L290 TraceCheckUtils]: 21: Hoare triple {75662#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {75662#(<= ~counter~0 2)} is VALID [2022-04-27 13:10:06,027 INFO L290 TraceCheckUtils]: 22: Hoare triple {75662#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {75662#(<= ~counter~0 2)} is VALID [2022-04-27 13:10:06,027 INFO L290 TraceCheckUtils]: 23: Hoare triple {75662#(<= ~counter~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; {75662#(<= ~counter~0 2)} is VALID [2022-04-27 13:10:06,028 INFO L290 TraceCheckUtils]: 24: Hoare triple {75662#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {75675#(<= ~counter~0 3)} is VALID [2022-04-27 13:10:06,028 INFO L290 TraceCheckUtils]: 25: Hoare triple {75675#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {75675#(<= ~counter~0 3)} is VALID [2022-04-27 13:10:06,028 INFO L290 TraceCheckUtils]: 26: Hoare triple {75675#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {75675#(<= ~counter~0 3)} is VALID [2022-04-27 13:10:06,029 INFO L290 TraceCheckUtils]: 27: Hoare triple {75675#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {75685#(<= ~counter~0 4)} is VALID [2022-04-27 13:10:06,029 INFO L290 TraceCheckUtils]: 28: Hoare triple {75685#(<= ~counter~0 4)} assume !!(#t~post7 < 10);havoc #t~post7; {75685#(<= ~counter~0 4)} is VALID [2022-04-27 13:10:06,029 INFO L290 TraceCheckUtils]: 29: Hoare triple {75685#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {75685#(<= ~counter~0 4)} is VALID [2022-04-27 13:10:06,030 INFO L290 TraceCheckUtils]: 30: Hoare triple {75685#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,030 INFO L290 TraceCheckUtils]: 31: Hoare triple {75695#(<= ~counter~0 5)} assume !!(#t~post8 < 10);havoc #t~post8; {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,031 INFO L272 TraceCheckUtils]: 32: Hoare triple {75695#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,031 INFO L290 TraceCheckUtils]: 33: Hoare triple {75695#(<= ~counter~0 5)} ~cond := #in~cond; {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,031 INFO L290 TraceCheckUtils]: 34: Hoare triple {75695#(<= ~counter~0 5)} assume !(0 == ~cond); {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,031 INFO L290 TraceCheckUtils]: 35: Hoare triple {75695#(<= ~counter~0 5)} assume true; {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,032 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {75695#(<= ~counter~0 5)} {75695#(<= ~counter~0 5)} #98#return; {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,032 INFO L272 TraceCheckUtils]: 37: Hoare triple {75695#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,032 INFO L290 TraceCheckUtils]: 38: Hoare triple {75695#(<= ~counter~0 5)} ~cond := #in~cond; {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,033 INFO L290 TraceCheckUtils]: 39: Hoare triple {75695#(<= ~counter~0 5)} assume !(0 == ~cond); {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,033 INFO L290 TraceCheckUtils]: 40: Hoare triple {75695#(<= ~counter~0 5)} assume true; {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,034 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {75695#(<= ~counter~0 5)} {75695#(<= ~counter~0 5)} #100#return; {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,034 INFO L272 TraceCheckUtils]: 42: Hoare triple {75695#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,034 INFO L290 TraceCheckUtils]: 43: Hoare triple {75695#(<= ~counter~0 5)} ~cond := #in~cond; {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,035 INFO L290 TraceCheckUtils]: 44: Hoare triple {75695#(<= ~counter~0 5)} assume !(0 == ~cond); {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,035 INFO L290 TraceCheckUtils]: 45: Hoare triple {75695#(<= ~counter~0 5)} assume true; {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,035 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {75695#(<= ~counter~0 5)} {75695#(<= ~counter~0 5)} #102#return; {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,035 INFO L272 TraceCheckUtils]: 47: Hoare triple {75695#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,036 INFO L290 TraceCheckUtils]: 48: Hoare triple {75695#(<= ~counter~0 5)} ~cond := #in~cond; {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,036 INFO L290 TraceCheckUtils]: 49: Hoare triple {75695#(<= ~counter~0 5)} assume !(0 == ~cond); {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,036 INFO L290 TraceCheckUtils]: 50: Hoare triple {75695#(<= ~counter~0 5)} assume true; {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,036 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {75695#(<= ~counter~0 5)} {75695#(<= ~counter~0 5)} #104#return; {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,037 INFO L290 TraceCheckUtils]: 52: Hoare triple {75695#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,037 INFO L290 TraceCheckUtils]: 53: Hoare triple {75695#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,037 INFO L290 TraceCheckUtils]: 54: Hoare triple {75695#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {75768#(<= ~counter~0 6)} is VALID [2022-04-27 13:10:06,038 INFO L290 TraceCheckUtils]: 55: Hoare triple {75768#(<= ~counter~0 6)} assume !!(#t~post7 < 10);havoc #t~post7; {75768#(<= ~counter~0 6)} is VALID [2022-04-27 13:10:06,038 INFO L290 TraceCheckUtils]: 56: Hoare triple {75768#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {75768#(<= ~counter~0 6)} is VALID [2022-04-27 13:10:06,038 INFO L290 TraceCheckUtils]: 57: Hoare triple {75768#(<= ~counter~0 6)} ~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; {75768#(<= ~counter~0 6)} is VALID [2022-04-27 13:10:06,039 INFO L290 TraceCheckUtils]: 58: Hoare triple {75768#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {75781#(<= ~counter~0 7)} is VALID [2022-04-27 13:10:06,039 INFO L290 TraceCheckUtils]: 59: Hoare triple {75781#(<= ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {75781#(<= ~counter~0 7)} is VALID [2022-04-27 13:10:06,039 INFO L290 TraceCheckUtils]: 60: Hoare triple {75781#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {75781#(<= ~counter~0 7)} is VALID [2022-04-27 13:10:06,040 INFO L290 TraceCheckUtils]: 61: Hoare triple {75781#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {75791#(<= ~counter~0 8)} is VALID [2022-04-27 13:10:06,040 INFO L290 TraceCheckUtils]: 62: Hoare triple {75791#(<= ~counter~0 8)} assume !!(#t~post7 < 10);havoc #t~post7; {75791#(<= ~counter~0 8)} is VALID [2022-04-27 13:10:06,040 INFO L290 TraceCheckUtils]: 63: Hoare triple {75791#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {75791#(<= ~counter~0 8)} is VALID [2022-04-27 13:10:06,041 INFO L290 TraceCheckUtils]: 64: Hoare triple {75791#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,041 INFO L290 TraceCheckUtils]: 65: Hoare triple {75801#(<= ~counter~0 9)} assume !!(#t~post8 < 10);havoc #t~post8; {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,041 INFO L272 TraceCheckUtils]: 66: Hoare triple {75801#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,041 INFO L290 TraceCheckUtils]: 67: Hoare triple {75801#(<= ~counter~0 9)} ~cond := #in~cond; {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,042 INFO L290 TraceCheckUtils]: 68: Hoare triple {75801#(<= ~counter~0 9)} assume !(0 == ~cond); {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,042 INFO L290 TraceCheckUtils]: 69: Hoare triple {75801#(<= ~counter~0 9)} assume true; {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,042 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {75801#(<= ~counter~0 9)} {75801#(<= ~counter~0 9)} #98#return; {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,042 INFO L272 TraceCheckUtils]: 71: Hoare triple {75801#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,043 INFO L290 TraceCheckUtils]: 72: Hoare triple {75801#(<= ~counter~0 9)} ~cond := #in~cond; {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,043 INFO L290 TraceCheckUtils]: 73: Hoare triple {75801#(<= ~counter~0 9)} assume !(0 == ~cond); {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,043 INFO L290 TraceCheckUtils]: 74: Hoare triple {75801#(<= ~counter~0 9)} assume true; {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,043 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {75801#(<= ~counter~0 9)} {75801#(<= ~counter~0 9)} #100#return; {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,044 INFO L272 TraceCheckUtils]: 76: Hoare triple {75801#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,044 INFO L290 TraceCheckUtils]: 77: Hoare triple {75801#(<= ~counter~0 9)} ~cond := #in~cond; {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,044 INFO L290 TraceCheckUtils]: 78: Hoare triple {75801#(<= ~counter~0 9)} assume !(0 == ~cond); {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,044 INFO L290 TraceCheckUtils]: 79: Hoare triple {75801#(<= ~counter~0 9)} assume true; {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,045 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {75801#(<= ~counter~0 9)} {75801#(<= ~counter~0 9)} #102#return; {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,045 INFO L272 TraceCheckUtils]: 81: Hoare triple {75801#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,045 INFO L290 TraceCheckUtils]: 82: Hoare triple {75801#(<= ~counter~0 9)} ~cond := #in~cond; {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,045 INFO L290 TraceCheckUtils]: 83: Hoare triple {75801#(<= ~counter~0 9)} assume !(0 == ~cond); {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,046 INFO L290 TraceCheckUtils]: 84: Hoare triple {75801#(<= ~counter~0 9)} assume true; {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,046 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {75801#(<= ~counter~0 9)} {75801#(<= ~counter~0 9)} #104#return; {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,046 INFO L290 TraceCheckUtils]: 86: Hoare triple {75801#(<= ~counter~0 9)} assume !(~c~0 >= 2 * ~v~0); {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,046 INFO L290 TraceCheckUtils]: 87: Hoare triple {75801#(<= ~counter~0 9)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,047 INFO L290 TraceCheckUtils]: 88: Hoare triple {75801#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {75874#(<= |main_#t~post7| 9)} is VALID [2022-04-27 13:10:06,047 INFO L290 TraceCheckUtils]: 89: Hoare triple {75874#(<= |main_#t~post7| 9)} assume !(#t~post7 < 10);havoc #t~post7; {75596#false} is VALID [2022-04-27 13:10:06,047 INFO L290 TraceCheckUtils]: 90: Hoare triple {75596#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; {75596#false} is VALID [2022-04-27 13:10:06,047 INFO L290 TraceCheckUtils]: 91: Hoare triple {75596#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {75596#false} is VALID [2022-04-27 13:10:06,047 INFO L290 TraceCheckUtils]: 92: Hoare triple {75596#false} assume !(#t~post6 < 10);havoc #t~post6; {75596#false} is VALID [2022-04-27 13:10:06,047 INFO L272 TraceCheckUtils]: 93: Hoare triple {75596#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)); {75596#false} is VALID [2022-04-27 13:10:06,047 INFO L290 TraceCheckUtils]: 94: Hoare triple {75596#false} ~cond := #in~cond; {75596#false} is VALID [2022-04-27 13:10:06,047 INFO L290 TraceCheckUtils]: 95: Hoare triple {75596#false} assume 0 == ~cond; {75596#false} is VALID [2022-04-27 13:10:06,047 INFO L290 TraceCheckUtils]: 96: Hoare triple {75596#false} assume !false; {75596#false} is VALID [2022-04-27 13:10:06,048 INFO L134 CoverageAnalysis]: Checked inductivity of 184 backedges. 24 proven. 108 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-27 13:10:06,048 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:10:06,285 INFO L290 TraceCheckUtils]: 96: Hoare triple {75596#false} assume !false; {75596#false} is VALID [2022-04-27 13:10:06,285 INFO L290 TraceCheckUtils]: 95: Hoare triple {75596#false} assume 0 == ~cond; {75596#false} is VALID [2022-04-27 13:10:06,285 INFO L290 TraceCheckUtils]: 94: Hoare triple {75596#false} ~cond := #in~cond; {75596#false} is VALID [2022-04-27 13:10:06,285 INFO L272 TraceCheckUtils]: 93: Hoare triple {75596#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)); {75596#false} is VALID [2022-04-27 13:10:06,285 INFO L290 TraceCheckUtils]: 92: Hoare triple {75596#false} assume !(#t~post6 < 10);havoc #t~post6; {75596#false} is VALID [2022-04-27 13:10:06,285 INFO L290 TraceCheckUtils]: 91: Hoare triple {75596#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {75596#false} is VALID [2022-04-27 13:10:06,285 INFO L290 TraceCheckUtils]: 90: Hoare triple {75596#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; {75596#false} is VALID [2022-04-27 13:10:06,285 INFO L290 TraceCheckUtils]: 89: Hoare triple {75874#(<= |main_#t~post7| 9)} assume !(#t~post7 < 10);havoc #t~post7; {75596#false} is VALID [2022-04-27 13:10:06,286 INFO L290 TraceCheckUtils]: 88: Hoare triple {75801#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {75874#(<= |main_#t~post7| 9)} is VALID [2022-04-27 13:10:06,286 INFO L290 TraceCheckUtils]: 87: Hoare triple {75801#(<= ~counter~0 9)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,286 INFO L290 TraceCheckUtils]: 86: Hoare triple {75801#(<= ~counter~0 9)} assume !(~c~0 >= 2 * ~v~0); {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,286 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {75595#true} {75801#(<= ~counter~0 9)} #104#return; {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,286 INFO L290 TraceCheckUtils]: 84: Hoare triple {75595#true} assume true; {75595#true} is VALID [2022-04-27 13:10:06,286 INFO L290 TraceCheckUtils]: 83: Hoare triple {75595#true} assume !(0 == ~cond); {75595#true} is VALID [2022-04-27 13:10:06,286 INFO L290 TraceCheckUtils]: 82: Hoare triple {75595#true} ~cond := #in~cond; {75595#true} is VALID [2022-04-27 13:10:06,286 INFO L272 TraceCheckUtils]: 81: Hoare triple {75801#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {75595#true} is VALID [2022-04-27 13:10:06,287 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {75595#true} {75801#(<= ~counter~0 9)} #102#return; {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,287 INFO L290 TraceCheckUtils]: 79: Hoare triple {75595#true} assume true; {75595#true} is VALID [2022-04-27 13:10:06,287 INFO L290 TraceCheckUtils]: 78: Hoare triple {75595#true} assume !(0 == ~cond); {75595#true} is VALID [2022-04-27 13:10:06,287 INFO L290 TraceCheckUtils]: 77: Hoare triple {75595#true} ~cond := #in~cond; {75595#true} is VALID [2022-04-27 13:10:06,287 INFO L272 TraceCheckUtils]: 76: Hoare triple {75801#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {75595#true} is VALID [2022-04-27 13:10:06,287 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {75595#true} {75801#(<= ~counter~0 9)} #100#return; {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,287 INFO L290 TraceCheckUtils]: 74: Hoare triple {75595#true} assume true; {75595#true} is VALID [2022-04-27 13:10:06,287 INFO L290 TraceCheckUtils]: 73: Hoare triple {75595#true} assume !(0 == ~cond); {75595#true} is VALID [2022-04-27 13:10:06,288 INFO L290 TraceCheckUtils]: 72: Hoare triple {75595#true} ~cond := #in~cond; {75595#true} is VALID [2022-04-27 13:10:06,288 INFO L272 TraceCheckUtils]: 71: Hoare triple {75801#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {75595#true} is VALID [2022-04-27 13:10:06,288 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {75595#true} {75801#(<= ~counter~0 9)} #98#return; {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,288 INFO L290 TraceCheckUtils]: 69: Hoare triple {75595#true} assume true; {75595#true} is VALID [2022-04-27 13:10:06,288 INFO L290 TraceCheckUtils]: 68: Hoare triple {75595#true} assume !(0 == ~cond); {75595#true} is VALID [2022-04-27 13:10:06,288 INFO L290 TraceCheckUtils]: 67: Hoare triple {75595#true} ~cond := #in~cond; {75595#true} is VALID [2022-04-27 13:10:06,288 INFO L272 TraceCheckUtils]: 66: Hoare triple {75801#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {75595#true} is VALID [2022-04-27 13:10:06,288 INFO L290 TraceCheckUtils]: 65: Hoare triple {75801#(<= ~counter~0 9)} assume !!(#t~post8 < 10);havoc #t~post8; {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,289 INFO L290 TraceCheckUtils]: 64: Hoare triple {75791#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {75801#(<= ~counter~0 9)} is VALID [2022-04-27 13:10:06,290 INFO L290 TraceCheckUtils]: 63: Hoare triple {75791#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {75791#(<= ~counter~0 8)} is VALID [2022-04-27 13:10:06,290 INFO L290 TraceCheckUtils]: 62: Hoare triple {75791#(<= ~counter~0 8)} assume !!(#t~post7 < 10);havoc #t~post7; {75791#(<= ~counter~0 8)} is VALID [2022-04-27 13:10:06,290 INFO L290 TraceCheckUtils]: 61: Hoare triple {75781#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {75791#(<= ~counter~0 8)} is VALID [2022-04-27 13:10:06,291 INFO L290 TraceCheckUtils]: 60: Hoare triple {75781#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {75781#(<= ~counter~0 7)} is VALID [2022-04-27 13:10:06,291 INFO L290 TraceCheckUtils]: 59: Hoare triple {75781#(<= ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {75781#(<= ~counter~0 7)} is VALID [2022-04-27 13:10:06,291 INFO L290 TraceCheckUtils]: 58: Hoare triple {75768#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {75781#(<= ~counter~0 7)} is VALID [2022-04-27 13:10:06,291 INFO L290 TraceCheckUtils]: 57: Hoare triple {75768#(<= ~counter~0 6)} ~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; {75768#(<= ~counter~0 6)} is VALID [2022-04-27 13:10:06,292 INFO L290 TraceCheckUtils]: 56: Hoare triple {75768#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {75768#(<= ~counter~0 6)} is VALID [2022-04-27 13:10:06,292 INFO L290 TraceCheckUtils]: 55: Hoare triple {75768#(<= ~counter~0 6)} assume !!(#t~post7 < 10);havoc #t~post7; {75768#(<= ~counter~0 6)} is VALID [2022-04-27 13:10:06,292 INFO L290 TraceCheckUtils]: 54: Hoare triple {75695#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {75768#(<= ~counter~0 6)} is VALID [2022-04-27 13:10:06,292 INFO L290 TraceCheckUtils]: 53: Hoare triple {75695#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,293 INFO L290 TraceCheckUtils]: 52: Hoare triple {75695#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,293 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {75595#true} {75695#(<= ~counter~0 5)} #104#return; {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,293 INFO L290 TraceCheckUtils]: 50: Hoare triple {75595#true} assume true; {75595#true} is VALID [2022-04-27 13:10:06,293 INFO L290 TraceCheckUtils]: 49: Hoare triple {75595#true} assume !(0 == ~cond); {75595#true} is VALID [2022-04-27 13:10:06,293 INFO L290 TraceCheckUtils]: 48: Hoare triple {75595#true} ~cond := #in~cond; {75595#true} is VALID [2022-04-27 13:10:06,293 INFO L272 TraceCheckUtils]: 47: Hoare triple {75695#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {75595#true} is VALID [2022-04-27 13:10:06,293 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {75595#true} {75695#(<= ~counter~0 5)} #102#return; {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,294 INFO L290 TraceCheckUtils]: 45: Hoare triple {75595#true} assume true; {75595#true} is VALID [2022-04-27 13:10:06,294 INFO L290 TraceCheckUtils]: 44: Hoare triple {75595#true} assume !(0 == ~cond); {75595#true} is VALID [2022-04-27 13:10:06,294 INFO L290 TraceCheckUtils]: 43: Hoare triple {75595#true} ~cond := #in~cond; {75595#true} is VALID [2022-04-27 13:10:06,294 INFO L272 TraceCheckUtils]: 42: Hoare triple {75695#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {75595#true} is VALID [2022-04-27 13:10:06,294 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {75595#true} {75695#(<= ~counter~0 5)} #100#return; {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,294 INFO L290 TraceCheckUtils]: 40: Hoare triple {75595#true} assume true; {75595#true} is VALID [2022-04-27 13:10:06,294 INFO L290 TraceCheckUtils]: 39: Hoare triple {75595#true} assume !(0 == ~cond); {75595#true} is VALID [2022-04-27 13:10:06,294 INFO L290 TraceCheckUtils]: 38: Hoare triple {75595#true} ~cond := #in~cond; {75595#true} is VALID [2022-04-27 13:10:06,294 INFO L272 TraceCheckUtils]: 37: Hoare triple {75695#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {75595#true} is VALID [2022-04-27 13:10:06,295 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {75595#true} {75695#(<= ~counter~0 5)} #98#return; {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,295 INFO L290 TraceCheckUtils]: 35: Hoare triple {75595#true} assume true; {75595#true} is VALID [2022-04-27 13:10:06,295 INFO L290 TraceCheckUtils]: 34: Hoare triple {75595#true} assume !(0 == ~cond); {75595#true} is VALID [2022-04-27 13:10:06,295 INFO L290 TraceCheckUtils]: 33: Hoare triple {75595#true} ~cond := #in~cond; {75595#true} is VALID [2022-04-27 13:10:06,295 INFO L272 TraceCheckUtils]: 32: Hoare triple {75695#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {75595#true} is VALID [2022-04-27 13:10:06,295 INFO L290 TraceCheckUtils]: 31: Hoare triple {75695#(<= ~counter~0 5)} assume !!(#t~post8 < 10);havoc #t~post8; {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,296 INFO L290 TraceCheckUtils]: 30: Hoare triple {75685#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {75695#(<= ~counter~0 5)} is VALID [2022-04-27 13:10:06,296 INFO L290 TraceCheckUtils]: 29: Hoare triple {75685#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {75685#(<= ~counter~0 4)} is VALID [2022-04-27 13:10:06,296 INFO L290 TraceCheckUtils]: 28: Hoare triple {75685#(<= ~counter~0 4)} assume !!(#t~post7 < 10);havoc #t~post7; {75685#(<= ~counter~0 4)} is VALID [2022-04-27 13:10:06,297 INFO L290 TraceCheckUtils]: 27: Hoare triple {75675#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {75685#(<= ~counter~0 4)} is VALID [2022-04-27 13:10:06,297 INFO L290 TraceCheckUtils]: 26: Hoare triple {75675#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {75675#(<= ~counter~0 3)} is VALID [2022-04-27 13:10:06,297 INFO L290 TraceCheckUtils]: 25: Hoare triple {75675#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {75675#(<= ~counter~0 3)} is VALID [2022-04-27 13:10:06,298 INFO L290 TraceCheckUtils]: 24: Hoare triple {75662#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {75675#(<= ~counter~0 3)} is VALID [2022-04-27 13:10:06,298 INFO L290 TraceCheckUtils]: 23: Hoare triple {75662#(<= ~counter~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; {75662#(<= ~counter~0 2)} is VALID [2022-04-27 13:10:06,298 INFO L290 TraceCheckUtils]: 22: Hoare triple {75662#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {75662#(<= ~counter~0 2)} is VALID [2022-04-27 13:10:06,298 INFO L290 TraceCheckUtils]: 21: Hoare triple {75662#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {75662#(<= ~counter~0 2)} is VALID [2022-04-27 13:10:06,299 INFO L290 TraceCheckUtils]: 20: Hoare triple {75652#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {75662#(<= ~counter~0 2)} is VALID [2022-04-27 13:10:06,299 INFO L290 TraceCheckUtils]: 19: Hoare triple {75652#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {75652#(<= ~counter~0 1)} is VALID [2022-04-27 13:10:06,299 INFO L290 TraceCheckUtils]: 18: Hoare triple {75652#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {75652#(<= ~counter~0 1)} is VALID [2022-04-27 13:10:06,300 INFO L290 TraceCheckUtils]: 17: Hoare triple {75603#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {75652#(<= ~counter~0 1)} is VALID [2022-04-27 13:10:06,300 INFO L290 TraceCheckUtils]: 16: Hoare triple {75603#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,300 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {75595#true} {75603#(<= ~counter~0 0)} #96#return; {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,300 INFO L290 TraceCheckUtils]: 14: Hoare triple {75595#true} assume true; {75595#true} is VALID [2022-04-27 13:10:06,300 INFO L290 TraceCheckUtils]: 13: Hoare triple {75595#true} assume !(0 == ~cond); {75595#true} is VALID [2022-04-27 13:10:06,300 INFO L290 TraceCheckUtils]: 12: Hoare triple {75595#true} ~cond := #in~cond; {75595#true} is VALID [2022-04-27 13:10:06,300 INFO L272 TraceCheckUtils]: 11: Hoare triple {75603#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {75595#true} is VALID [2022-04-27 13:10:06,301 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {75595#true} {75603#(<= ~counter~0 0)} #94#return; {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,301 INFO L290 TraceCheckUtils]: 9: Hoare triple {75595#true} assume true; {75595#true} is VALID [2022-04-27 13:10:06,301 INFO L290 TraceCheckUtils]: 8: Hoare triple {75595#true} assume !(0 == ~cond); {75595#true} is VALID [2022-04-27 13:10:06,301 INFO L290 TraceCheckUtils]: 7: Hoare triple {75595#true} ~cond := #in~cond; {75595#true} is VALID [2022-04-27 13:10:06,301 INFO L272 TraceCheckUtils]: 6: Hoare triple {75603#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {75595#true} is VALID [2022-04-27 13:10:06,301 INFO L290 TraceCheckUtils]: 5: Hoare triple {75603#(<= ~counter~0 0)} 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; {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,302 INFO L272 TraceCheckUtils]: 4: Hoare triple {75603#(<= ~counter~0 0)} call #t~ret9 := main(); {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,302 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {75603#(<= ~counter~0 0)} {75595#true} #108#return; {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,302 INFO L290 TraceCheckUtils]: 2: Hoare triple {75603#(<= ~counter~0 0)} assume true; {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,302 INFO L290 TraceCheckUtils]: 1: Hoare triple {75595#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);~counter~0 := 0; {75603#(<= ~counter~0 0)} is VALID [2022-04-27 13:10:06,302 INFO L272 TraceCheckUtils]: 0: Hoare triple {75595#true} call ULTIMATE.init(); {75595#true} is VALID [2022-04-27 13:10:06,303 INFO L134 CoverageAnalysis]: Checked inductivity of 184 backedges. 24 proven. 44 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-27 13:10:06,303 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:10:06,303 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [321369912] [2022-04-27 13:10:06,303 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:10:06,303 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1226962815] [2022-04-27 13:10:06,303 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1226962815] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:10:06,303 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:10:06,303 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 13 [2022-04-27 13:10:06,303 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [29224200] [2022-04-27 13:10:06,303 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:10:06,304 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.461538461538462) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (23), 5 states have call predecessors, (23), 4 states have return successors, (21), 3 states have call predecessors, (21), 4 states have call successors, (21) Word has length 97 [2022-04-27 13:10:06,315 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:10:06,315 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 4.461538461538462) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (23), 5 states have call predecessors, (23), 4 states have return successors, (21), 3 states have call predecessors, (21), 4 states have call successors, (21) [2022-04-27 13:10:06,395 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:10:06,395 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-27 13:10:06,396 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:10:06,396 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-27 13:10:06,396 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=68, Invalid=88, Unknown=0, NotChecked=0, Total=156 [2022-04-27 13:10:06,396 INFO L87 Difference]: Start difference. First operand 1597 states and 2177 transitions. Second operand has 13 states, 13 states have (on average 4.461538461538462) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (23), 5 states have call predecessors, (23), 4 states have return successors, (21), 3 states have call predecessors, (21), 4 states have call successors, (21) [2022-04-27 13:10:10,326 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:10:10,326 INFO L93 Difference]: Finished difference Result 2280 states and 3230 transitions. [2022-04-27 13:10:10,326 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-27 13:10:10,327 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.461538461538462) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (23), 5 states have call predecessors, (23), 4 states have return successors, (21), 3 states have call predecessors, (21), 4 states have call successors, (21) Word has length 97 [2022-04-27 13:10:10,327 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:10:10,327 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.461538461538462) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (23), 5 states have call predecessors, (23), 4 states have return successors, (21), 3 states have call predecessors, (21), 4 states have call successors, (21) [2022-04-27 13:10:10,329 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 258 transitions. [2022-04-27 13:10:10,329 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.461538461538462) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (23), 5 states have call predecessors, (23), 4 states have return successors, (21), 3 states have call predecessors, (21), 4 states have call successors, (21) [2022-04-27 13:10:10,330 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 258 transitions. [2022-04-27 13:10:10,330 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 258 transitions. [2022-04-27 13:10:10,565 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 258 edges. 258 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:10:10,677 INFO L225 Difference]: With dead ends: 2280 [2022-04-27 13:10:10,678 INFO L226 Difference]: Without dead ends: 1626 [2022-04-27 13:10:10,679 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 200 GetRequests, 181 SyntacticMatches, 1 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 40 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=139, Invalid=241, Unknown=0, NotChecked=0, Total=380 [2022-04-27 13:10:10,679 INFO L413 NwaCegarLoop]: 73 mSDtfsCounter, 164 mSDsluCounter, 267 mSDsCounter, 0 mSdLazyCounter, 168 mSolverCounterSat, 76 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 164 SdHoareTripleChecker+Valid, 340 SdHoareTripleChecker+Invalid, 244 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 76 IncrementalHoareTripleChecker+Valid, 168 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 13:10:10,679 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [164 Valid, 340 Invalid, 244 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [76 Valid, 168 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 13:10:10,680 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1626 states. [2022-04-27 13:10:13,753 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1626 to 1613. [2022-04-27 13:10:13,754 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:10:13,755 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1626 states. Second operand has 1613 states, 1165 states have (on average 1.2763948497854076) internal successors, (1487), 1174 states have internal predecessors, (1487), 350 states have call successors, (350), 99 states have call predecessors, (350), 97 states have return successors, (347), 339 states have call predecessors, (347), 347 states have call successors, (347) [2022-04-27 13:10:13,756 INFO L74 IsIncluded]: Start isIncluded. First operand 1626 states. Second operand has 1613 states, 1165 states have (on average 1.2763948497854076) internal successors, (1487), 1174 states have internal predecessors, (1487), 350 states have call successors, (350), 99 states have call predecessors, (350), 97 states have return successors, (347), 339 states have call predecessors, (347), 347 states have call successors, (347) [2022-04-27 13:10:13,757 INFO L87 Difference]: Start difference. First operand 1626 states. Second operand has 1613 states, 1165 states have (on average 1.2763948497854076) internal successors, (1487), 1174 states have internal predecessors, (1487), 350 states have call successors, (350), 99 states have call predecessors, (350), 97 states have return successors, (347), 339 states have call predecessors, (347), 347 states have call successors, (347) [2022-04-27 13:10:13,871 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:10:13,872 INFO L93 Difference]: Finished difference Result 1626 states and 2195 transitions. [2022-04-27 13:10:13,872 INFO L276 IsEmpty]: Start isEmpty. Operand 1626 states and 2195 transitions. [2022-04-27 13:10:13,874 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:10:13,874 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:10:13,876 INFO L74 IsIncluded]: Start isIncluded. First operand has 1613 states, 1165 states have (on average 1.2763948497854076) internal successors, (1487), 1174 states have internal predecessors, (1487), 350 states have call successors, (350), 99 states have call predecessors, (350), 97 states have return successors, (347), 339 states have call predecessors, (347), 347 states have call successors, (347) Second operand 1626 states. [2022-04-27 13:10:13,877 INFO L87 Difference]: Start difference. First operand has 1613 states, 1165 states have (on average 1.2763948497854076) internal successors, (1487), 1174 states have internal predecessors, (1487), 350 states have call successors, (350), 99 states have call predecessors, (350), 97 states have return successors, (347), 339 states have call predecessors, (347), 347 states have call successors, (347) Second operand 1626 states. [2022-04-27 13:10:13,953 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:10:13,954 INFO L93 Difference]: Finished difference Result 1626 states and 2195 transitions. [2022-04-27 13:10:13,954 INFO L276 IsEmpty]: Start isEmpty. Operand 1626 states and 2195 transitions. [2022-04-27 13:10:13,956 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:10:13,956 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:10:13,956 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:10:13,956 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:10:13,958 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1613 states, 1165 states have (on average 1.2763948497854076) internal successors, (1487), 1174 states have internal predecessors, (1487), 350 states have call successors, (350), 99 states have call predecessors, (350), 97 states have return successors, (347), 339 states have call predecessors, (347), 347 states have call successors, (347) [2022-04-27 13:10:14,067 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1613 states to 1613 states and 2184 transitions. [2022-04-27 13:10:14,068 INFO L78 Accepts]: Start accepts. Automaton has 1613 states and 2184 transitions. Word has length 97 [2022-04-27 13:10:14,068 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:10:14,068 INFO L495 AbstractCegarLoop]: Abstraction has 1613 states and 2184 transitions. [2022-04-27 13:10:14,068 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 4.461538461538462) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (23), 5 states have call predecessors, (23), 4 states have return successors, (21), 3 states have call predecessors, (21), 4 states have call successors, (21) [2022-04-27 13:10:14,068 INFO L276 IsEmpty]: Start isEmpty. Operand 1613 states and 2184 transitions. [2022-04-27 13:10:14,069 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2022-04-27 13:10:14,069 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:10:14,069 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 5, 5, 3, 3, 3, 3, 3, 3, 3, 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] [2022-04-27 13:10:14,089 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Ended with exit code 0 [2022-04-27 13:10:14,289 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable22,23 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:10:14,289 INFO L420 AbstractCegarLoop]: === Iteration 24 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:10:14,289 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:10:14,289 INFO L85 PathProgramCache]: Analyzing trace with hash 516983514, now seen corresponding path program 3 times [2022-04-27 13:10:14,290 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:10:14,290 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [708859714] [2022-04-27 13:10:14,290 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:10:14,290 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:10:14,301 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:10:14,301 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [134695985] [2022-04-27 13:10:14,301 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 13:10:14,301 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:10:14,301 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:10:14,305 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:10:14,315 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Waiting until timeout for monitored process [2022-04-27 13:10:14,364 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2022-04-27 13:10:14,364 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:10:14,365 INFO L263 TraceCheckSpWp]: Trace formula consists of 246 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-27 13:10:14,382 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:10:14,384 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:10:14,843 INFO L272 TraceCheckUtils]: 0: Hoare triple {85079#true} call ULTIMATE.init(); {85079#true} is VALID [2022-04-27 13:10:14,844 INFO L290 TraceCheckUtils]: 1: Hoare triple {85079#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);~counter~0 := 0; {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:14,844 INFO L290 TraceCheckUtils]: 2: Hoare triple {85087#(<= 0 ~counter~0)} assume true; {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:14,844 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {85087#(<= 0 ~counter~0)} {85079#true} #108#return; {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:14,845 INFO L272 TraceCheckUtils]: 4: Hoare triple {85087#(<= 0 ~counter~0)} call #t~ret9 := main(); {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:14,845 INFO L290 TraceCheckUtils]: 5: Hoare triple {85087#(<= 0 ~counter~0)} 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; {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:14,845 INFO L272 TraceCheckUtils]: 6: Hoare triple {85087#(<= 0 ~counter~0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:14,845 INFO L290 TraceCheckUtils]: 7: Hoare triple {85087#(<= 0 ~counter~0)} ~cond := #in~cond; {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:14,846 INFO L290 TraceCheckUtils]: 8: Hoare triple {85087#(<= 0 ~counter~0)} assume !(0 == ~cond); {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:14,846 INFO L290 TraceCheckUtils]: 9: Hoare triple {85087#(<= 0 ~counter~0)} assume true; {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:14,846 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {85087#(<= 0 ~counter~0)} {85087#(<= 0 ~counter~0)} #94#return; {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:14,847 INFO L272 TraceCheckUtils]: 11: Hoare triple {85087#(<= 0 ~counter~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:14,847 INFO L290 TraceCheckUtils]: 12: Hoare triple {85087#(<= 0 ~counter~0)} ~cond := #in~cond; {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:14,847 INFO L290 TraceCheckUtils]: 13: Hoare triple {85087#(<= 0 ~counter~0)} assume !(0 == ~cond); {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:14,847 INFO L290 TraceCheckUtils]: 14: Hoare triple {85087#(<= 0 ~counter~0)} assume true; {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:14,848 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {85087#(<= 0 ~counter~0)} {85087#(<= 0 ~counter~0)} #96#return; {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:14,848 INFO L290 TraceCheckUtils]: 16: Hoare triple {85087#(<= 0 ~counter~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:14,849 INFO L290 TraceCheckUtils]: 17: Hoare triple {85087#(<= 0 ~counter~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85136#(<= 1 ~counter~0)} is VALID [2022-04-27 13:10:14,850 INFO L290 TraceCheckUtils]: 18: Hoare triple {85136#(<= 1 ~counter~0)} assume !!(#t~post6 < 10);havoc #t~post6; {85136#(<= 1 ~counter~0)} is VALID [2022-04-27 13:10:14,850 INFO L290 TraceCheckUtils]: 19: Hoare triple {85136#(<= 1 ~counter~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85136#(<= 1 ~counter~0)} is VALID [2022-04-27 13:10:14,851 INFO L290 TraceCheckUtils]: 20: Hoare triple {85136#(<= 1 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85146#(<= 2 ~counter~0)} is VALID [2022-04-27 13:10:14,851 INFO L290 TraceCheckUtils]: 21: Hoare triple {85146#(<= 2 ~counter~0)} assume !!(#t~post7 < 10);havoc #t~post7; {85146#(<= 2 ~counter~0)} is VALID [2022-04-27 13:10:14,851 INFO L290 TraceCheckUtils]: 22: Hoare triple {85146#(<= 2 ~counter~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {85146#(<= 2 ~counter~0)} is VALID [2022-04-27 13:10:14,852 INFO L290 TraceCheckUtils]: 23: Hoare triple {85146#(<= 2 ~counter~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,852 INFO L290 TraceCheckUtils]: 24: Hoare triple {85156#(<= 3 ~counter~0)} assume !!(#t~post8 < 10);havoc #t~post8; {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,853 INFO L272 TraceCheckUtils]: 25: Hoare triple {85156#(<= 3 ~counter~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,853 INFO L290 TraceCheckUtils]: 26: Hoare triple {85156#(<= 3 ~counter~0)} ~cond := #in~cond; {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,853 INFO L290 TraceCheckUtils]: 27: Hoare triple {85156#(<= 3 ~counter~0)} assume !(0 == ~cond); {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,853 INFO L290 TraceCheckUtils]: 28: Hoare triple {85156#(<= 3 ~counter~0)} assume true; {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,854 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {85156#(<= 3 ~counter~0)} {85156#(<= 3 ~counter~0)} #98#return; {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,854 INFO L272 TraceCheckUtils]: 30: Hoare triple {85156#(<= 3 ~counter~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,855 INFO L290 TraceCheckUtils]: 31: Hoare triple {85156#(<= 3 ~counter~0)} ~cond := #in~cond; {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,855 INFO L290 TraceCheckUtils]: 32: Hoare triple {85156#(<= 3 ~counter~0)} assume !(0 == ~cond); {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,855 INFO L290 TraceCheckUtils]: 33: Hoare triple {85156#(<= 3 ~counter~0)} assume true; {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,857 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {85156#(<= 3 ~counter~0)} {85156#(<= 3 ~counter~0)} #100#return; {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,857 INFO L272 TraceCheckUtils]: 35: Hoare triple {85156#(<= 3 ~counter~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,857 INFO L290 TraceCheckUtils]: 36: Hoare triple {85156#(<= 3 ~counter~0)} ~cond := #in~cond; {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,858 INFO L290 TraceCheckUtils]: 37: Hoare triple {85156#(<= 3 ~counter~0)} assume !(0 == ~cond); {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,858 INFO L290 TraceCheckUtils]: 38: Hoare triple {85156#(<= 3 ~counter~0)} assume true; {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,858 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {85156#(<= 3 ~counter~0)} {85156#(<= 3 ~counter~0)} #102#return; {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,859 INFO L272 TraceCheckUtils]: 40: Hoare triple {85156#(<= 3 ~counter~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,859 INFO L290 TraceCheckUtils]: 41: Hoare triple {85156#(<= 3 ~counter~0)} ~cond := #in~cond; {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,859 INFO L290 TraceCheckUtils]: 42: Hoare triple {85156#(<= 3 ~counter~0)} assume !(0 == ~cond); {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,860 INFO L290 TraceCheckUtils]: 43: Hoare triple {85156#(<= 3 ~counter~0)} assume true; {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,860 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {85156#(<= 3 ~counter~0)} {85156#(<= 3 ~counter~0)} #104#return; {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,860 INFO L290 TraceCheckUtils]: 45: Hoare triple {85156#(<= 3 ~counter~0)} assume !(~c~0 >= 2 * ~v~0); {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,860 INFO L290 TraceCheckUtils]: 46: Hoare triple {85156#(<= 3 ~counter~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:14,862 INFO L290 TraceCheckUtils]: 47: Hoare triple {85156#(<= 3 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85229#(<= 4 ~counter~0)} is VALID [2022-04-27 13:10:14,862 INFO L290 TraceCheckUtils]: 48: Hoare triple {85229#(<= 4 ~counter~0)} assume !!(#t~post7 < 10);havoc #t~post7; {85229#(<= 4 ~counter~0)} is VALID [2022-04-27 13:10:14,862 INFO L290 TraceCheckUtils]: 49: Hoare triple {85229#(<= 4 ~counter~0)} assume !(~c~0 >= ~b~0); {85229#(<= 4 ~counter~0)} is VALID [2022-04-27 13:10:14,862 INFO L290 TraceCheckUtils]: 50: Hoare triple {85229#(<= 4 ~counter~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; {85229#(<= 4 ~counter~0)} is VALID [2022-04-27 13:10:14,863 INFO L290 TraceCheckUtils]: 51: Hoare triple {85229#(<= 4 ~counter~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85242#(<= 5 ~counter~0)} is VALID [2022-04-27 13:10:14,863 INFO L290 TraceCheckUtils]: 52: Hoare triple {85242#(<= 5 ~counter~0)} assume !!(#t~post6 < 10);havoc #t~post6; {85242#(<= 5 ~counter~0)} is VALID [2022-04-27 13:10:14,863 INFO L290 TraceCheckUtils]: 53: Hoare triple {85242#(<= 5 ~counter~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85242#(<= 5 ~counter~0)} is VALID [2022-04-27 13:10:14,864 INFO L290 TraceCheckUtils]: 54: Hoare triple {85242#(<= 5 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85252#(<= 6 ~counter~0)} is VALID [2022-04-27 13:10:14,864 INFO L290 TraceCheckUtils]: 55: Hoare triple {85252#(<= 6 ~counter~0)} assume !!(#t~post7 < 10);havoc #t~post7; {85252#(<= 6 ~counter~0)} is VALID [2022-04-27 13:10:14,864 INFO L290 TraceCheckUtils]: 56: Hoare triple {85252#(<= 6 ~counter~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {85252#(<= 6 ~counter~0)} is VALID [2022-04-27 13:10:14,865 INFO L290 TraceCheckUtils]: 57: Hoare triple {85252#(<= 6 ~counter~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,865 INFO L290 TraceCheckUtils]: 58: Hoare triple {85262#(<= 7 ~counter~0)} assume !!(#t~post8 < 10);havoc #t~post8; {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,866 INFO L272 TraceCheckUtils]: 59: Hoare triple {85262#(<= 7 ~counter~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,866 INFO L290 TraceCheckUtils]: 60: Hoare triple {85262#(<= 7 ~counter~0)} ~cond := #in~cond; {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,866 INFO L290 TraceCheckUtils]: 61: Hoare triple {85262#(<= 7 ~counter~0)} assume !(0 == ~cond); {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,866 INFO L290 TraceCheckUtils]: 62: Hoare triple {85262#(<= 7 ~counter~0)} assume true; {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,866 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {85262#(<= 7 ~counter~0)} {85262#(<= 7 ~counter~0)} #98#return; {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,867 INFO L272 TraceCheckUtils]: 64: Hoare triple {85262#(<= 7 ~counter~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,867 INFO L290 TraceCheckUtils]: 65: Hoare triple {85262#(<= 7 ~counter~0)} ~cond := #in~cond; {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,867 INFO L290 TraceCheckUtils]: 66: Hoare triple {85262#(<= 7 ~counter~0)} assume !(0 == ~cond); {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,867 INFO L290 TraceCheckUtils]: 67: Hoare triple {85262#(<= 7 ~counter~0)} assume true; {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,868 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {85262#(<= 7 ~counter~0)} {85262#(<= 7 ~counter~0)} #100#return; {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,868 INFO L272 TraceCheckUtils]: 69: Hoare triple {85262#(<= 7 ~counter~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,868 INFO L290 TraceCheckUtils]: 70: Hoare triple {85262#(<= 7 ~counter~0)} ~cond := #in~cond; {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,869 INFO L290 TraceCheckUtils]: 71: Hoare triple {85262#(<= 7 ~counter~0)} assume !(0 == ~cond); {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,869 INFO L290 TraceCheckUtils]: 72: Hoare triple {85262#(<= 7 ~counter~0)} assume true; {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,869 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {85262#(<= 7 ~counter~0)} {85262#(<= 7 ~counter~0)} #102#return; {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,869 INFO L272 TraceCheckUtils]: 74: Hoare triple {85262#(<= 7 ~counter~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,870 INFO L290 TraceCheckUtils]: 75: Hoare triple {85262#(<= 7 ~counter~0)} ~cond := #in~cond; {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,870 INFO L290 TraceCheckUtils]: 76: Hoare triple {85262#(<= 7 ~counter~0)} assume !(0 == ~cond); {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,870 INFO L290 TraceCheckUtils]: 77: Hoare triple {85262#(<= 7 ~counter~0)} assume true; {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,870 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {85262#(<= 7 ~counter~0)} {85262#(<= 7 ~counter~0)} #104#return; {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,870 INFO L290 TraceCheckUtils]: 79: Hoare triple {85262#(<= 7 ~counter~0)} assume !(~c~0 >= 2 * ~v~0); {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,871 INFO L290 TraceCheckUtils]: 80: Hoare triple {85262#(<= 7 ~counter~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:14,871 INFO L290 TraceCheckUtils]: 81: Hoare triple {85262#(<= 7 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85335#(<= 8 ~counter~0)} is VALID [2022-04-27 13:10:14,871 INFO L290 TraceCheckUtils]: 82: Hoare triple {85335#(<= 8 ~counter~0)} assume !!(#t~post7 < 10);havoc #t~post7; {85335#(<= 8 ~counter~0)} is VALID [2022-04-27 13:10:14,872 INFO L290 TraceCheckUtils]: 83: Hoare triple {85335#(<= 8 ~counter~0)} assume !(~c~0 >= ~b~0); {85335#(<= 8 ~counter~0)} is VALID [2022-04-27 13:10:14,872 INFO L290 TraceCheckUtils]: 84: Hoare triple {85335#(<= 8 ~counter~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; {85335#(<= 8 ~counter~0)} is VALID [2022-04-27 13:10:14,872 INFO L290 TraceCheckUtils]: 85: Hoare triple {85335#(<= 8 ~counter~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85348#(<= 9 ~counter~0)} is VALID [2022-04-27 13:10:14,873 INFO L290 TraceCheckUtils]: 86: Hoare triple {85348#(<= 9 ~counter~0)} assume !!(#t~post6 < 10);havoc #t~post6; {85348#(<= 9 ~counter~0)} is VALID [2022-04-27 13:10:14,873 INFO L290 TraceCheckUtils]: 87: Hoare triple {85348#(<= 9 ~counter~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85348#(<= 9 ~counter~0)} is VALID [2022-04-27 13:10:14,873 INFO L290 TraceCheckUtils]: 88: Hoare triple {85348#(<= 9 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85358#(<= 10 ~counter~0)} is VALID [2022-04-27 13:10:14,874 INFO L290 TraceCheckUtils]: 89: Hoare triple {85358#(<= 10 ~counter~0)} assume !!(#t~post7 < 10);havoc #t~post7; {85358#(<= 10 ~counter~0)} is VALID [2022-04-27 13:10:14,874 INFO L290 TraceCheckUtils]: 90: Hoare triple {85358#(<= 10 ~counter~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {85358#(<= 10 ~counter~0)} is VALID [2022-04-27 13:10:14,874 INFO L290 TraceCheckUtils]: 91: Hoare triple {85358#(<= 10 ~counter~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85368#(<= 10 |main_#t~post8|)} is VALID [2022-04-27 13:10:14,874 INFO L290 TraceCheckUtils]: 92: Hoare triple {85368#(<= 10 |main_#t~post8|)} assume !!(#t~post8 < 10);havoc #t~post8; {85080#false} is VALID [2022-04-27 13:10:14,874 INFO L272 TraceCheckUtils]: 93: Hoare triple {85080#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85080#false} is VALID [2022-04-27 13:10:14,874 INFO L290 TraceCheckUtils]: 94: Hoare triple {85080#false} ~cond := #in~cond; {85080#false} is VALID [2022-04-27 13:10:14,875 INFO L290 TraceCheckUtils]: 95: Hoare triple {85080#false} assume 0 == ~cond; {85080#false} is VALID [2022-04-27 13:10:14,875 INFO L290 TraceCheckUtils]: 96: Hoare triple {85080#false} assume !false; {85080#false} is VALID [2022-04-27 13:10:14,875 INFO L134 CoverageAnalysis]: Checked inductivity of 186 backedges. 132 proven. 2 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-27 13:10:14,875 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:10:15,162 INFO L290 TraceCheckUtils]: 96: Hoare triple {85080#false} assume !false; {85080#false} is VALID [2022-04-27 13:10:15,163 INFO L290 TraceCheckUtils]: 95: Hoare triple {85080#false} assume 0 == ~cond; {85080#false} is VALID [2022-04-27 13:10:15,163 INFO L290 TraceCheckUtils]: 94: Hoare triple {85080#false} ~cond := #in~cond; {85080#false} is VALID [2022-04-27 13:10:15,163 INFO L272 TraceCheckUtils]: 93: Hoare triple {85080#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85080#false} is VALID [2022-04-27 13:10:15,163 INFO L290 TraceCheckUtils]: 92: Hoare triple {85368#(<= 10 |main_#t~post8|)} assume !!(#t~post8 < 10);havoc #t~post8; {85080#false} is VALID [2022-04-27 13:10:15,163 INFO L290 TraceCheckUtils]: 91: Hoare triple {85358#(<= 10 ~counter~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85368#(<= 10 |main_#t~post8|)} is VALID [2022-04-27 13:10:15,163 INFO L290 TraceCheckUtils]: 90: Hoare triple {85358#(<= 10 ~counter~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {85358#(<= 10 ~counter~0)} is VALID [2022-04-27 13:10:15,163 INFO L290 TraceCheckUtils]: 89: Hoare triple {85358#(<= 10 ~counter~0)} assume !!(#t~post7 < 10);havoc #t~post7; {85358#(<= 10 ~counter~0)} is VALID [2022-04-27 13:10:15,165 INFO L290 TraceCheckUtils]: 88: Hoare triple {85348#(<= 9 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85358#(<= 10 ~counter~0)} is VALID [2022-04-27 13:10:15,165 INFO L290 TraceCheckUtils]: 87: Hoare triple {85348#(<= 9 ~counter~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85348#(<= 9 ~counter~0)} is VALID [2022-04-27 13:10:15,165 INFO L290 TraceCheckUtils]: 86: Hoare triple {85348#(<= 9 ~counter~0)} assume !!(#t~post6 < 10);havoc #t~post6; {85348#(<= 9 ~counter~0)} is VALID [2022-04-27 13:10:15,165 INFO L290 TraceCheckUtils]: 85: Hoare triple {85335#(<= 8 ~counter~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85348#(<= 9 ~counter~0)} is VALID [2022-04-27 13:10:15,166 INFO L290 TraceCheckUtils]: 84: Hoare triple {85335#(<= 8 ~counter~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; {85335#(<= 8 ~counter~0)} is VALID [2022-04-27 13:10:15,166 INFO L290 TraceCheckUtils]: 83: Hoare triple {85335#(<= 8 ~counter~0)} assume !(~c~0 >= ~b~0); {85335#(<= 8 ~counter~0)} is VALID [2022-04-27 13:10:15,166 INFO L290 TraceCheckUtils]: 82: Hoare triple {85335#(<= 8 ~counter~0)} assume !!(#t~post7 < 10);havoc #t~post7; {85335#(<= 8 ~counter~0)} is VALID [2022-04-27 13:10:15,167 INFO L290 TraceCheckUtils]: 81: Hoare triple {85262#(<= 7 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85335#(<= 8 ~counter~0)} is VALID [2022-04-27 13:10:15,167 INFO L290 TraceCheckUtils]: 80: Hoare triple {85262#(<= 7 ~counter~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:15,167 INFO L290 TraceCheckUtils]: 79: Hoare triple {85262#(<= 7 ~counter~0)} assume !(~c~0 >= 2 * ~v~0); {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:15,167 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {85079#true} {85262#(<= 7 ~counter~0)} #104#return; {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:15,167 INFO L290 TraceCheckUtils]: 77: Hoare triple {85079#true} assume true; {85079#true} is VALID [2022-04-27 13:10:15,167 INFO L290 TraceCheckUtils]: 76: Hoare triple {85079#true} assume !(0 == ~cond); {85079#true} is VALID [2022-04-27 13:10:15,167 INFO L290 TraceCheckUtils]: 75: Hoare triple {85079#true} ~cond := #in~cond; {85079#true} is VALID [2022-04-27 13:10:15,167 INFO L272 TraceCheckUtils]: 74: Hoare triple {85262#(<= 7 ~counter~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {85079#true} is VALID [2022-04-27 13:10:15,168 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {85079#true} {85262#(<= 7 ~counter~0)} #102#return; {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:15,168 INFO L290 TraceCheckUtils]: 72: Hoare triple {85079#true} assume true; {85079#true} is VALID [2022-04-27 13:10:15,168 INFO L290 TraceCheckUtils]: 71: Hoare triple {85079#true} assume !(0 == ~cond); {85079#true} is VALID [2022-04-27 13:10:15,168 INFO L290 TraceCheckUtils]: 70: Hoare triple {85079#true} ~cond := #in~cond; {85079#true} is VALID [2022-04-27 13:10:15,168 INFO L272 TraceCheckUtils]: 69: Hoare triple {85262#(<= 7 ~counter~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {85079#true} is VALID [2022-04-27 13:10:15,168 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {85079#true} {85262#(<= 7 ~counter~0)} #100#return; {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:15,168 INFO L290 TraceCheckUtils]: 67: Hoare triple {85079#true} assume true; {85079#true} is VALID [2022-04-27 13:10:15,168 INFO L290 TraceCheckUtils]: 66: Hoare triple {85079#true} assume !(0 == ~cond); {85079#true} is VALID [2022-04-27 13:10:15,168 INFO L290 TraceCheckUtils]: 65: Hoare triple {85079#true} ~cond := #in~cond; {85079#true} is VALID [2022-04-27 13:10:15,169 INFO L272 TraceCheckUtils]: 64: Hoare triple {85262#(<= 7 ~counter~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {85079#true} is VALID [2022-04-27 13:10:15,169 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {85079#true} {85262#(<= 7 ~counter~0)} #98#return; {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:15,169 INFO L290 TraceCheckUtils]: 62: Hoare triple {85079#true} assume true; {85079#true} is VALID [2022-04-27 13:10:15,169 INFO L290 TraceCheckUtils]: 61: Hoare triple {85079#true} assume !(0 == ~cond); {85079#true} is VALID [2022-04-27 13:10:15,169 INFO L290 TraceCheckUtils]: 60: Hoare triple {85079#true} ~cond := #in~cond; {85079#true} is VALID [2022-04-27 13:10:15,169 INFO L272 TraceCheckUtils]: 59: Hoare triple {85262#(<= 7 ~counter~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85079#true} is VALID [2022-04-27 13:10:15,170 INFO L290 TraceCheckUtils]: 58: Hoare triple {85262#(<= 7 ~counter~0)} assume !!(#t~post8 < 10);havoc #t~post8; {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:15,170 INFO L290 TraceCheckUtils]: 57: Hoare triple {85252#(<= 6 ~counter~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85262#(<= 7 ~counter~0)} is VALID [2022-04-27 13:10:15,170 INFO L290 TraceCheckUtils]: 56: Hoare triple {85252#(<= 6 ~counter~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {85252#(<= 6 ~counter~0)} is VALID [2022-04-27 13:10:15,170 INFO L290 TraceCheckUtils]: 55: Hoare triple {85252#(<= 6 ~counter~0)} assume !!(#t~post7 < 10);havoc #t~post7; {85252#(<= 6 ~counter~0)} is VALID [2022-04-27 13:10:15,171 INFO L290 TraceCheckUtils]: 54: Hoare triple {85242#(<= 5 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85252#(<= 6 ~counter~0)} is VALID [2022-04-27 13:10:15,171 INFO L290 TraceCheckUtils]: 53: Hoare triple {85242#(<= 5 ~counter~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85242#(<= 5 ~counter~0)} is VALID [2022-04-27 13:10:15,171 INFO L290 TraceCheckUtils]: 52: Hoare triple {85242#(<= 5 ~counter~0)} assume !!(#t~post6 < 10);havoc #t~post6; {85242#(<= 5 ~counter~0)} is VALID [2022-04-27 13:10:15,172 INFO L290 TraceCheckUtils]: 51: Hoare triple {85229#(<= 4 ~counter~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85242#(<= 5 ~counter~0)} is VALID [2022-04-27 13:10:15,172 INFO L290 TraceCheckUtils]: 50: Hoare triple {85229#(<= 4 ~counter~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; {85229#(<= 4 ~counter~0)} is VALID [2022-04-27 13:10:15,172 INFO L290 TraceCheckUtils]: 49: Hoare triple {85229#(<= 4 ~counter~0)} assume !(~c~0 >= ~b~0); {85229#(<= 4 ~counter~0)} is VALID [2022-04-27 13:10:15,172 INFO L290 TraceCheckUtils]: 48: Hoare triple {85229#(<= 4 ~counter~0)} assume !!(#t~post7 < 10);havoc #t~post7; {85229#(<= 4 ~counter~0)} is VALID [2022-04-27 13:10:15,173 INFO L290 TraceCheckUtils]: 47: Hoare triple {85156#(<= 3 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85229#(<= 4 ~counter~0)} is VALID [2022-04-27 13:10:15,173 INFO L290 TraceCheckUtils]: 46: Hoare triple {85156#(<= 3 ~counter~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:15,173 INFO L290 TraceCheckUtils]: 45: Hoare triple {85156#(<= 3 ~counter~0)} assume !(~c~0 >= 2 * ~v~0); {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:15,174 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {85079#true} {85156#(<= 3 ~counter~0)} #104#return; {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:15,174 INFO L290 TraceCheckUtils]: 43: Hoare triple {85079#true} assume true; {85079#true} is VALID [2022-04-27 13:10:15,174 INFO L290 TraceCheckUtils]: 42: Hoare triple {85079#true} assume !(0 == ~cond); {85079#true} is VALID [2022-04-27 13:10:15,174 INFO L290 TraceCheckUtils]: 41: Hoare triple {85079#true} ~cond := #in~cond; {85079#true} is VALID [2022-04-27 13:10:15,174 INFO L272 TraceCheckUtils]: 40: Hoare triple {85156#(<= 3 ~counter~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {85079#true} is VALID [2022-04-27 13:10:15,174 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {85079#true} {85156#(<= 3 ~counter~0)} #102#return; {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:15,174 INFO L290 TraceCheckUtils]: 38: Hoare triple {85079#true} assume true; {85079#true} is VALID [2022-04-27 13:10:15,174 INFO L290 TraceCheckUtils]: 37: Hoare triple {85079#true} assume !(0 == ~cond); {85079#true} is VALID [2022-04-27 13:10:15,174 INFO L290 TraceCheckUtils]: 36: Hoare triple {85079#true} ~cond := #in~cond; {85079#true} is VALID [2022-04-27 13:10:15,174 INFO L272 TraceCheckUtils]: 35: Hoare triple {85156#(<= 3 ~counter~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {85079#true} is VALID [2022-04-27 13:10:15,175 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {85079#true} {85156#(<= 3 ~counter~0)} #100#return; {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:15,175 INFO L290 TraceCheckUtils]: 33: Hoare triple {85079#true} assume true; {85079#true} is VALID [2022-04-27 13:10:15,175 INFO L290 TraceCheckUtils]: 32: Hoare triple {85079#true} assume !(0 == ~cond); {85079#true} is VALID [2022-04-27 13:10:15,175 INFO L290 TraceCheckUtils]: 31: Hoare triple {85079#true} ~cond := #in~cond; {85079#true} is VALID [2022-04-27 13:10:15,175 INFO L272 TraceCheckUtils]: 30: Hoare triple {85156#(<= 3 ~counter~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {85079#true} is VALID [2022-04-27 13:10:15,175 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {85079#true} {85156#(<= 3 ~counter~0)} #98#return; {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:15,175 INFO L290 TraceCheckUtils]: 28: Hoare triple {85079#true} assume true; {85079#true} is VALID [2022-04-27 13:10:15,175 INFO L290 TraceCheckUtils]: 27: Hoare triple {85079#true} assume !(0 == ~cond); {85079#true} is VALID [2022-04-27 13:10:15,175 INFO L290 TraceCheckUtils]: 26: Hoare triple {85079#true} ~cond := #in~cond; {85079#true} is VALID [2022-04-27 13:10:15,175 INFO L272 TraceCheckUtils]: 25: Hoare triple {85156#(<= 3 ~counter~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85079#true} is VALID [2022-04-27 13:10:15,176 INFO L290 TraceCheckUtils]: 24: Hoare triple {85156#(<= 3 ~counter~0)} assume !!(#t~post8 < 10);havoc #t~post8; {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:15,176 INFO L290 TraceCheckUtils]: 23: Hoare triple {85146#(<= 2 ~counter~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85156#(<= 3 ~counter~0)} is VALID [2022-04-27 13:10:15,176 INFO L290 TraceCheckUtils]: 22: Hoare triple {85146#(<= 2 ~counter~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {85146#(<= 2 ~counter~0)} is VALID [2022-04-27 13:10:15,176 INFO L290 TraceCheckUtils]: 21: Hoare triple {85146#(<= 2 ~counter~0)} assume !!(#t~post7 < 10);havoc #t~post7; {85146#(<= 2 ~counter~0)} is VALID [2022-04-27 13:10:15,177 INFO L290 TraceCheckUtils]: 20: Hoare triple {85136#(<= 1 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85146#(<= 2 ~counter~0)} is VALID [2022-04-27 13:10:15,177 INFO L290 TraceCheckUtils]: 19: Hoare triple {85136#(<= 1 ~counter~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85136#(<= 1 ~counter~0)} is VALID [2022-04-27 13:10:15,177 INFO L290 TraceCheckUtils]: 18: Hoare triple {85136#(<= 1 ~counter~0)} assume !!(#t~post6 < 10);havoc #t~post6; {85136#(<= 1 ~counter~0)} is VALID [2022-04-27 13:10:15,178 INFO L290 TraceCheckUtils]: 17: Hoare triple {85087#(<= 0 ~counter~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85136#(<= 1 ~counter~0)} is VALID [2022-04-27 13:10:15,178 INFO L290 TraceCheckUtils]: 16: Hoare triple {85087#(<= 0 ~counter~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:15,178 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {85079#true} {85087#(<= 0 ~counter~0)} #96#return; {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:15,178 INFO L290 TraceCheckUtils]: 14: Hoare triple {85079#true} assume true; {85079#true} is VALID [2022-04-27 13:10:15,178 INFO L290 TraceCheckUtils]: 13: Hoare triple {85079#true} assume !(0 == ~cond); {85079#true} is VALID [2022-04-27 13:10:15,178 INFO L290 TraceCheckUtils]: 12: Hoare triple {85079#true} ~cond := #in~cond; {85079#true} is VALID [2022-04-27 13:10:15,179 INFO L272 TraceCheckUtils]: 11: Hoare triple {85087#(<= 0 ~counter~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {85079#true} is VALID [2022-04-27 13:10:15,179 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {85079#true} {85087#(<= 0 ~counter~0)} #94#return; {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:15,179 INFO L290 TraceCheckUtils]: 9: Hoare triple {85079#true} assume true; {85079#true} is VALID [2022-04-27 13:10:15,179 INFO L290 TraceCheckUtils]: 8: Hoare triple {85079#true} assume !(0 == ~cond); {85079#true} is VALID [2022-04-27 13:10:15,179 INFO L290 TraceCheckUtils]: 7: Hoare triple {85079#true} ~cond := #in~cond; {85079#true} is VALID [2022-04-27 13:10:15,179 INFO L272 TraceCheckUtils]: 6: Hoare triple {85087#(<= 0 ~counter~0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {85079#true} is VALID [2022-04-27 13:10:15,179 INFO L290 TraceCheckUtils]: 5: Hoare triple {85087#(<= 0 ~counter~0)} 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; {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:15,179 INFO L272 TraceCheckUtils]: 4: Hoare triple {85087#(<= 0 ~counter~0)} call #t~ret9 := main(); {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:15,180 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {85087#(<= 0 ~counter~0)} {85079#true} #108#return; {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:15,180 INFO L290 TraceCheckUtils]: 2: Hoare triple {85087#(<= 0 ~counter~0)} assume true; {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:15,180 INFO L290 TraceCheckUtils]: 1: Hoare triple {85079#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);~counter~0 := 0; {85087#(<= 0 ~counter~0)} is VALID [2022-04-27 13:10:15,180 INFO L272 TraceCheckUtils]: 0: Hoare triple {85079#true} call ULTIMATE.init(); {85079#true} is VALID [2022-04-27 13:10:15,180 INFO L134 CoverageAnalysis]: Checked inductivity of 186 backedges. 68 proven. 2 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-27 13:10:15,180 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:10:15,181 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [708859714] [2022-04-27 13:10:15,181 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:10:15,181 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [134695985] [2022-04-27 13:10:15,181 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [134695985] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:10:15,181 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:10:15,181 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 14 [2022-04-27 13:10:15,181 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1209601338] [2022-04-27 13:10:15,181 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:10:15,181 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 14 states have internal predecessors, (58), 5 states have call successors, (23), 5 states have call predecessors, (23), 4 states have return successors, (21), 3 states have call predecessors, (21), 4 states have call successors, (21) Word has length 97 [2022-04-27 13:10:15,191 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:10:15,191 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 14 states have internal predecessors, (58), 5 states have call successors, (23), 5 states have call predecessors, (23), 4 states have return successors, (21), 3 states have call predecessors, (21), 4 states have call successors, (21) [2022-04-27 13:10:15,244 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:10:15,244 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-27 13:10:15,244 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:10:15,245 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-27 13:10:15,245 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=80, Invalid=102, Unknown=0, NotChecked=0, Total=182 [2022-04-27 13:10:15,245 INFO L87 Difference]: Start difference. First operand 1613 states and 2184 transitions. Second operand has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 14 states have internal predecessors, (58), 5 states have call successors, (23), 5 states have call predecessors, (23), 4 states have return successors, (21), 3 states have call predecessors, (21), 4 states have call successors, (21) [2022-04-27 13:10:17,434 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:10:17,434 INFO L93 Difference]: Finished difference Result 2108 states and 2873 transitions. [2022-04-27 13:10:17,434 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-27 13:10:17,435 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 14 states have internal predecessors, (58), 5 states have call successors, (23), 5 states have call predecessors, (23), 4 states have return successors, (21), 3 states have call predecessors, (21), 4 states have call successors, (21) Word has length 97 [2022-04-27 13:10:17,435 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:10:17,435 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 14 states have internal predecessors, (58), 5 states have call successors, (23), 5 states have call predecessors, (23), 4 states have return successors, (21), 3 states have call predecessors, (21), 4 states have call successors, (21) [2022-04-27 13:10:17,436 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 256 transitions. [2022-04-27 13:10:17,437 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 14 states have internal predecessors, (58), 5 states have call successors, (23), 5 states have call predecessors, (23), 4 states have return successors, (21), 3 states have call predecessors, (21), 4 states have call successors, (21) [2022-04-27 13:10:17,438 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 256 transitions. [2022-04-27 13:10:17,438 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 256 transitions. [2022-04-27 13:10:17,592 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 256 edges. 256 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:10:17,652 INFO L225 Difference]: With dead ends: 2108 [2022-04-27 13:10:17,652 INFO L226 Difference]: Without dead ends: 1237 [2022-04-27 13:10:17,654 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 194 GetRequests, 180 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 20 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=94, Invalid=116, Unknown=0, NotChecked=0, Total=210 [2022-04-27 13:10:17,654 INFO L413 NwaCegarLoop]: 156 mSDtfsCounter, 197 mSDsluCounter, 320 mSDsCounter, 0 mSdLazyCounter, 195 mSolverCounterSat, 97 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 197 SdHoareTripleChecker+Valid, 476 SdHoareTripleChecker+Invalid, 292 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 97 IncrementalHoareTripleChecker+Valid, 195 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 13:10:17,654 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [197 Valid, 476 Invalid, 292 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [97 Valid, 195 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 13:10:17,655 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1237 states. [2022-04-27 13:10:19,123 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1237 to 935. [2022-04-27 13:10:19,123 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:10:19,124 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1237 states. Second operand has 935 states, 667 states have (on average 1.1229385307346327) internal successors, (749), 675 states have internal predecessors, (749), 171 states have call successors, (171), 98 states have call predecessors, (171), 96 states have return successors, (168), 161 states have call predecessors, (168), 168 states have call successors, (168) [2022-04-27 13:10:19,124 INFO L74 IsIncluded]: Start isIncluded. First operand 1237 states. Second operand has 935 states, 667 states have (on average 1.1229385307346327) internal successors, (749), 675 states have internal predecessors, (749), 171 states have call successors, (171), 98 states have call predecessors, (171), 96 states have return successors, (168), 161 states have call predecessors, (168), 168 states have call successors, (168) [2022-04-27 13:10:19,125 INFO L87 Difference]: Start difference. First operand 1237 states. Second operand has 935 states, 667 states have (on average 1.1229385307346327) internal successors, (749), 675 states have internal predecessors, (749), 171 states have call successors, (171), 98 states have call predecessors, (171), 96 states have return successors, (168), 161 states have call predecessors, (168), 168 states have call successors, (168) [2022-04-27 13:10:19,163 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:10:19,163 INFO L93 Difference]: Finished difference Result 1237 states and 1493 transitions. [2022-04-27 13:10:19,163 INFO L276 IsEmpty]: Start isEmpty. Operand 1237 states and 1493 transitions. [2022-04-27 13:10:19,166 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:10:19,166 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:10:19,167 INFO L74 IsIncluded]: Start isIncluded. First operand has 935 states, 667 states have (on average 1.1229385307346327) internal successors, (749), 675 states have internal predecessors, (749), 171 states have call successors, (171), 98 states have call predecessors, (171), 96 states have return successors, (168), 161 states have call predecessors, (168), 168 states have call successors, (168) Second operand 1237 states. [2022-04-27 13:10:19,167 INFO L87 Difference]: Start difference. First operand has 935 states, 667 states have (on average 1.1229385307346327) internal successors, (749), 675 states have internal predecessors, (749), 171 states have call successors, (171), 98 states have call predecessors, (171), 96 states have return successors, (168), 161 states have call predecessors, (168), 168 states have call successors, (168) Second operand 1237 states. [2022-04-27 13:10:19,220 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:10:19,220 INFO L93 Difference]: Finished difference Result 1237 states and 1493 transitions. [2022-04-27 13:10:19,220 INFO L276 IsEmpty]: Start isEmpty. Operand 1237 states and 1493 transitions. [2022-04-27 13:10:19,221 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:10:19,221 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:10:19,221 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:10:19,222 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:10:19,222 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 935 states, 667 states have (on average 1.1229385307346327) internal successors, (749), 675 states have internal predecessors, (749), 171 states have call successors, (171), 98 states have call predecessors, (171), 96 states have return successors, (168), 161 states have call predecessors, (168), 168 states have call successors, (168) [2022-04-27 13:10:19,260 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 935 states to 935 states and 1088 transitions. [2022-04-27 13:10:19,260 INFO L78 Accepts]: Start accepts. Automaton has 935 states and 1088 transitions. Word has length 97 [2022-04-27 13:10:19,260 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:10:19,260 INFO L495 AbstractCegarLoop]: Abstraction has 935 states and 1088 transitions. [2022-04-27 13:10:19,260 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 14 states have internal predecessors, (58), 5 states have call successors, (23), 5 states have call predecessors, (23), 4 states have return successors, (21), 3 states have call predecessors, (21), 4 states have call successors, (21) [2022-04-27 13:10:19,261 INFO L276 IsEmpty]: Start isEmpty. Operand 935 states and 1088 transitions. [2022-04-27 13:10:19,262 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 99 [2022-04-27 13:10:19,262 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:10:19,262 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 5, 5, 4, 3, 3, 3, 3, 2, 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] [2022-04-27 13:10:19,278 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Forceful destruction successful, exit code 0 [2022-04-27 13:10:19,478 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable23,24 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:10:19,478 INFO L420 AbstractCegarLoop]: === Iteration 25 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:10:19,479 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:10:19,479 INFO L85 PathProgramCache]: Analyzing trace with hash 1787026468, now seen corresponding path program 2 times [2022-04-27 13:10:19,479 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:10:19,479 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1180195301] [2022-04-27 13:10:19,479 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:10:19,479 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:10:19,520 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:10:19,520 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [784548139] [2022-04-27 13:10:19,520 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 13:10:19,520 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:10:19,520 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:10:19,521 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:10:19,522 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Waiting until timeout for monitored process [2022-04-27 13:10:19,587 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 13:10:19,587 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-04-27 13:10:19,587 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-04-27 13:10:19,612 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-27 13:10:19,646 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-04-27 13:10:19,647 INFO L271 BasicCegarLoop]: Counterexample is feasible [2022-04-27 13:10:19,647 INFO L805 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-27 13:10:19,677 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Forceful destruction successful, exit code 0 [2022-04-27 13:10:19,878 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 25 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable24 [2022-04-27 13:10:19,881 INFO L356 BasicCegarLoop]: Path program histogram: [3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:10:19,883 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-27 13:10:19,939 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: ULTIMATE.initENTRY has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: assume_abort_if_notENTRY has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: __VERIFIER_assertENTRY has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: L8 has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: L8 has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: L24 has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: L24 has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: L11 has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: L11 has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: L8-2 has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: L24-1 has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: L24-1 has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: L11-2 has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 13:10:19,940 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: L25 has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: L34-3 has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: L34-3 has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: L49-1 has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: L49-1 has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: L51 has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: L51 has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: L52 has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: L52 has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: L73 has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: L34-4 has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: L34-4 has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: L48-4 has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: L48-3 has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: L48-3 has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: L35 has no Hoare annotation [2022-04-27 13:10:19,941 WARN L170 areAnnotationChecker]: L35 has no Hoare annotation [2022-04-27 13:10:19,942 WARN L170 areAnnotationChecker]: L41-3 has no Hoare annotation [2022-04-27 13:10:19,942 WARN L170 areAnnotationChecker]: L41-3 has no Hoare annotation [2022-04-27 13:10:19,942 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-04-27 13:10:19,942 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-04-27 13:10:19,942 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-27 13:10:19,942 WARN L170 areAnnotationChecker]: L41-4 has no Hoare annotation [2022-04-27 13:10:19,942 WARN L170 areAnnotationChecker]: L41-1 has no Hoare annotation [2022-04-27 13:10:19,942 WARN L170 areAnnotationChecker]: L41-1 has no Hoare annotation [2022-04-27 13:10:19,942 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2022-04-27 13:10:19,942 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2022-04-27 13:10:19,942 WARN L170 areAnnotationChecker]: L42 has no Hoare annotation [2022-04-27 13:10:19,942 WARN L170 areAnnotationChecker]: L42 has no Hoare annotation [2022-04-27 13:10:19,942 INFO L163 areAnnotationChecker]: CFG has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-27 13:10:19,942 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 01:10:19 BoogieIcfgContainer [2022-04-27 13:10:19,942 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-27 13:10:19,945 INFO L158 Benchmark]: Toolchain (without parser) took 448688.16ms. Allocated memory was 182.5MB in the beginning and 290.5MB in the end (delta: 108.0MB). Free memory was 129.2MB in the beginning and 111.4MB in the end (delta: 17.8MB). Peak memory consumption was 126.5MB. Max. memory is 8.0GB. [2022-04-27 13:10:19,945 INFO L158 Benchmark]: CDTParser took 0.24ms. Allocated memory is still 182.5MB. Free memory is still 145.1MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-27 13:10:19,945 INFO L158 Benchmark]: CACSL2BoogieTranslator took 213.74ms. Allocated memory is still 182.5MB. Free memory was 128.8MB in the beginning and 154.6MB in the end (delta: -25.8MB). Peak memory consumption was 6.9MB. Max. memory is 8.0GB. [2022-04-27 13:10:19,945 INFO L158 Benchmark]: Boogie Preprocessor took 36.38ms. Allocated memory is still 182.5MB. Free memory was 154.5MB in the beginning and 153.0MB in the end (delta: 1.5MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-27 13:10:19,945 INFO L158 Benchmark]: RCFGBuilder took 376.54ms. Allocated memory is still 182.5MB. Free memory was 153.0MB in the beginning and 139.8MB in the end (delta: 13.1MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-27 13:10:19,947 INFO L158 Benchmark]: TraceAbstraction took 448047.73ms. Allocated memory was 182.5MB in the beginning and 290.5MB in the end (delta: 108.0MB). Free memory was 138.8MB in the beginning and 111.4MB in the end (delta: 27.5MB). Peak memory consumption was 137.0MB. Max. memory is 8.0GB. [2022-04-27 13:10:19,947 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.24ms. Allocated memory is still 182.5MB. Free memory is still 145.1MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 213.74ms. Allocated memory is still 182.5MB. Free memory was 128.8MB in the beginning and 154.6MB in the end (delta: -25.8MB). Peak memory consumption was 6.9MB. Max. memory is 8.0GB. * Boogie Preprocessor took 36.38ms. Allocated memory is still 182.5MB. Free memory was 154.5MB in the beginning and 153.0MB in the end (delta: 1.5MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 376.54ms. Allocated memory is still 182.5MB. Free memory was 153.0MB in the beginning and 139.8MB in the end (delta: 13.1MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * TraceAbstraction took 448047.73ms. Allocated memory was 182.5MB in the beginning and 290.5MB in the end (delta: 108.0MB). Free memory was 138.8MB in the beginning and 111.4MB in the end (delta: 27.5MB). Peak memory consumption was 137.0MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - CounterExampleResult [Line: 13]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L18] int counter = 0; VAL [\old(counter)=13, counter=0] [L20] int x, y; [L21] long long a, b, p, q, r, s; [L22] x = __VERIFIER_nondet_int() [L23] y = __VERIFIER_nondet_int() [L24] CALL assume_abort_if_not(x >= 1) VAL [\old(cond)=1, \old(counter)=0, counter=0] [L8] COND FALSE !(!cond) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=0] [L24] RET assume_abort_if_not(x >= 1) VAL [\old(counter)=0, counter=0, x=3, y=5] [L25] CALL assume_abort_if_not(y >= 1) VAL [\old(cond)=1, \old(counter)=0, counter=0] [L8] COND FALSE !(!cond) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=0] [L25] RET assume_abort_if_not(y >= 1) VAL [\old(counter)=0, counter=0, x=3, y=5] [L27] a = x [L28] b = y [L29] p = 1 [L30] q = 0 [L31] r = 0 [L32] s = 1 VAL [\old(counter)=0, a=3, b=5, counter=0, p=1, q=0, r=0, s=1, x=3, y=5] [L34] EXPR counter++ VAL [\old(counter)=0, a=3, b=5, counter=1, counter++=0, p=1, q=0, r=0, s=1, x=3, y=5] [L34] COND TRUE counter++<10 [L35] COND FALSE !(!(b != 0)) [L37] long long c, k; [L38] c = a [L39] k = 0 VAL [\old(counter)=0, a=3, b=5, c=3, counter=1, k=0, p=1, q=0, r=0, s=1, x=3, y=5] [L41] EXPR counter++ VAL [\old(counter)=0, a=3, b=5, c=3, counter=2, counter++=1, k=0, p=1, q=0, r=0, s=1, x=3, y=5] [L41] COND TRUE counter++<10 [L42] COND TRUE !(c >= b) VAL [\old(counter)=0, a=3, b=5, c=3, counter=2, k=0, p=1, q=0, r=0, s=1, x=3, y=5] [L63] a = b [L64] b = c [L65] long long temp; [L66] temp = p [L67] p = q [L68] q = temp - q * k [L69] temp = r [L70] r = s [L71] s = temp - s * k VAL [\old(counter)=0, a=5, b=3, c=3, counter=2, k=0, p=0, q=1, r=1, s=0, temp=0, x=3, y=5] [L34] EXPR counter++ VAL [\old(counter)=0, a=5, b=3, c=3, counter=3, counter++=2, k=0, p=0, q=1, r=1, s=0, temp=0, x=3, y=5] [L34] COND TRUE counter++<10 [L35] COND FALSE !(!(b != 0)) [L37] long long c, k; [L38] c = a [L39] k = 0 VAL [\old(counter)=0, a=5, b=3, c=5, counter=3, k=0, p=0, q=1, r=1, s=0, temp=0, x=3, y=5] [L41] EXPR counter++ VAL [\old(counter)=0, a=5, b=3, c=5, counter=4, counter++=3, k=0, p=0, q=1, r=1, s=0, temp=0, x=3, y=5] [L41] COND TRUE counter++<10 [L42] COND FALSE !(!(c >= b)) [L44] long long d, v; [L45] d = 1 [L46] v = b VAL [\old(counter)=0, a=5, b=3, c=5, counter=4, d=1, k=0, p=0, q=1, r=1, s=0, temp=0, v=3, x=3, y=5] [L48] EXPR counter++ VAL [\old(counter)=0, a=5, b=3, c=5, counter=5, counter++=4, d=1, k=0, p=0, q=1, r=1, s=0, temp=0, v=3, x=3, y=5] [L48] COND TRUE counter++<10 [L49] CALL __VERIFIER_assert(a == y * r + x * p) VAL [\old(cond)=1, \old(counter)=0, counter=5] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=5] [L49] RET __VERIFIER_assert(a == y * r + x * p) VAL [\old(counter)=0, a=5, b=3, c=5, counter=5, d=1, k=0, p=0, q=1, r=1, s=0, temp=0, v=3, x=3, y=5] [L50] CALL __VERIFIER_assert(b == x * q + y * s) VAL [\old(cond)=1, \old(counter)=0, counter=5] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=5] [L50] RET __VERIFIER_assert(b == x * q + y * s) VAL [\old(counter)=0, a=5, b=3, c=5, counter=5, d=1, k=0, p=0, q=1, r=1, s=0, temp=0, v=3, x=3, y=5] [L51] CALL __VERIFIER_assert(a == k * b + c) VAL [\old(cond)=1, \old(counter)=0, counter=5] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=5] [L51] RET __VERIFIER_assert(a == k * b + c) VAL [\old(counter)=0, a=5, b=3, c=5, counter=5, d=1, k=0, p=0, q=1, r=1, s=0, temp=0, v=3, x=3, y=5] [L52] CALL __VERIFIER_assert(v == b * d) VAL [\old(cond)=1, \old(counter)=0, counter=5] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=5] [L52] RET __VERIFIER_assert(v == b * d) VAL [\old(counter)=0, a=5, b=3, c=5, counter=5, d=1, k=0, p=0, q=1, r=1, s=0, temp=0, v=3, x=3, y=5] [L54] COND TRUE !(c >= 2 * v) VAL [\old(counter)=0, a=5, b=3, c=5, counter=5, d=1, k=0, p=0, q=1, r=1, s=0, temp=0, v=3, x=3, y=5] [L59] c = c - v [L60] k = k + d VAL [\old(counter)=0, a=5, b=3, c=2, counter=5, d=1, k=1, p=0, q=1, r=1, s=0, temp=0, v=3, x=3, y=5] [L41] EXPR counter++ VAL [\old(counter)=0, a=5, b=3, c=2, counter=6, counter++=5, d=1, k=1, p=0, q=1, r=1, s=0, temp=0, v=3, x=3, y=5] [L41] COND TRUE counter++<10 [L42] COND TRUE !(c >= b) VAL [\old(counter)=0, a=5, b=3, c=2, counter=6, d=1, k=1, p=0, q=1, r=1, s=0, temp=0, v=3, x=3, y=5] [L63] a = b [L64] b = c [L65] long long temp; [L66] temp = p [L67] p = q [L68] q = temp - q * k [L69] temp = r [L70] r = s [L71] s = temp - s * k VAL [\old(counter)=0, a=3, b=2, c=2, counter=6, d=1, k=1, p=1, q=-1, r=0, s=1, temp=1, v=3, x=3, y=5] [L34] EXPR counter++ VAL [\old(counter)=0, a=3, b=2, c=2, counter=7, counter++=6, d=1, k=1, p=1, q=-1, r=0, s=1, temp=1, v=3, x=3, y=5] [L34] COND TRUE counter++<10 [L35] COND FALSE !(!(b != 0)) [L37] long long c, k; [L38] c = a [L39] k = 0 VAL [\old(counter)=0, a=3, b=2, c=3, counter=7, d=1, k=0, p=1, q=-1, r=0, s=1, temp=1, v=3, x=3, y=5] [L41] EXPR counter++ VAL [\old(counter)=0, a=3, b=2, c=3, counter=8, counter++=7, d=1, k=0, p=1, q=-1, r=0, s=1, temp=1, v=3, x=3, y=5] [L41] COND TRUE counter++<10 [L42] COND FALSE !(!(c >= b)) [L44] long long d, v; [L45] d = 1 [L46] v = b VAL [\old(counter)=0, a=3, b=2, c=3, counter=8, d=1, k=0, p=1, q=-1, r=0, s=1, temp=1, v=2, x=3, y=5] [L48] EXPR counter++ VAL [\old(counter)=0, a=3, b=2, c=3, counter=9, counter++=8, d=1, k=0, p=1, q=-1, r=0, s=1, temp=1, v=2, x=3, y=5] [L48] COND TRUE counter++<10 [L49] CALL __VERIFIER_assert(a == y * r + x * p) VAL [\old(cond)=1, \old(counter)=0, counter=9] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=9] [L49] RET __VERIFIER_assert(a == y * r + x * p) VAL [\old(counter)=0, a=3, b=2, c=3, counter=9, d=1, k=0, p=1, q=-1, r=0, s=1, temp=1, v=2, x=3, y=5] [L50] CALL __VERIFIER_assert(b == x * q + y * s) VAL [\old(cond)=1, \old(counter)=0, counter=9] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=9] [L50] RET __VERIFIER_assert(b == x * q + y * s) VAL [\old(counter)=0, a=3, b=2, c=3, counter=9, d=1, k=0, p=1, q=-1, r=0, s=1, temp=1, v=2, x=3, y=5] [L51] CALL __VERIFIER_assert(a == k * b + c) VAL [\old(cond)=1, \old(counter)=0, counter=9] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=9] [L51] RET __VERIFIER_assert(a == k * b + c) VAL [\old(counter)=0, a=3, b=2, c=3, counter=9, d=1, k=0, p=1, q=-1, r=0, s=1, temp=1, v=2, x=3, y=5] [L52] CALL __VERIFIER_assert(v == b * d) VAL [\old(cond)=1, \old(counter)=0, counter=9] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=9] [L52] RET __VERIFIER_assert(v == b * d) VAL [\old(counter)=0, a=3, b=2, c=3, counter=9, d=1, k=0, p=1, q=-1, r=0, s=1, temp=1, v=2, x=3, y=5] [L54] COND TRUE !(c >= 2 * v) VAL [\old(counter)=0, a=3, b=2, c=3, counter=9, d=1, k=0, p=1, q=-1, r=0, s=1, temp=1, v=2, x=3, y=5] [L59] c = c - v [L60] k = k + d VAL [\old(counter)=0, a=3, b=2, c=1, counter=9, d=1, k=1, p=1, q=-1, r=0, s=1, temp=1, v=2, x=3, y=5] [L41] EXPR counter++ VAL [\old(counter)=0, a=3, b=2, c=1, counter=10, counter++=9, d=1, k=1, p=1, q=-1, r=0, s=1, temp=1, v=2, x=3, y=5] [L41] COND TRUE counter++<10 [L42] COND TRUE !(c >= b) VAL [\old(counter)=0, a=3, b=2, c=1, counter=10, d=1, k=1, p=1, q=-1, r=0, s=1, temp=1, v=2, x=3, y=5] [L63] a = b [L64] b = c [L65] long long temp; [L66] temp = p [L67] p = q [L68] q = temp - q * k [L69] temp = r [L70] r = s [L71] s = temp - s * k VAL [\old(counter)=0, a=2, b=1, c=1, counter=10, d=1, k=1, p=-1, q=2, r=1, s=-1, temp=0, v=2, x=3, y=5] [L34] EXPR counter++ VAL [\old(counter)=0, a=2, b=1, c=1, counter=11, counter++=10, d=1, k=1, p=-1, q=2, r=1, s=-1, temp=0, v=2, x=3, y=5] [L34] COND FALSE !(counter++<10) [L73] CALL __VERIFIER_assert(p*x - q*x + r*y - s*y == a) VAL [\old(cond)=0, \old(counter)=0, counter=11] [L11] COND TRUE !(cond) VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=11] [L13] reach_error() VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=11] - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 43 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 447.9s, OverallIterations: 25, TraceHistogramMax: 9, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 211.3s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 9 mSolverCounterUnknown, 2647 SdHoareTripleChecker+Valid, 53.6s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 2584 mSDsluCounter, 7315 SdHoareTripleChecker+Invalid, 53.5s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 5882 mSDsCounter, 1843 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 6805 IncrementalHoareTripleChecker+Invalid, 8657 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 1843 mSolverCounterUnsat, 1433 mSDtfsCounter, 6805 mSolverCounterSat, 0.1s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 2112 GetRequests, 1706 SyntacticMatches, 12 SemanticMatches, 394 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4773 ImplicationChecksByTransitivity, 60.2s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=1613occurred in iteration=23, InterpolantAutomatonStates: 354, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 23.9s AutomataMinimizationTime, 24 MinimizatonAttempts, 1348 StatesRemovedByMinimization, 21 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.2s SsaConstructionTime, 0.6s SatisfiabilityAnalysisTime, 203.2s InterpolantComputationTime, 1264 NumberOfCodeBlocks, 1239 NumberOfCodeBlocksAsserted, 31 NumberOfCheckSat, 1898 ConstructedInterpolants, 0 QuantifiedInterpolants, 10640 SizeOfPredicates, 119 NumberOfNonLiveVariables, 3998 ConjunctsInSsa, 488 ConjunctsInUnsatCore, 37 InterpolantComputations, 12 PerfectInterpolantSequences, 1581/1997 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2022-04-27 13:10:20,042 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...