/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_unwindbound50.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 13:06:28,287 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 13:06:28,288 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 13:06:28,313 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 13:06:28,313 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 13:06:28,314 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 13:06:28,315 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 13:06:28,320 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 13:06:28,323 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 13:06:28,328 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 13:06:28,328 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 13:06:28,329 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 13:06:28,330 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 13:06:28,331 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 13:06:28,332 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 13:06:28,334 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 13:06:28,334 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 13:06:28,335 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 13:06:28,338 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 13:06:28,339 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 13:06:28,339 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 13:06:28,341 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 13:06:28,342 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 13:06:28,343 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 13:06:28,344 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 13:06:28,348 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 13:06:28,348 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 13:06:28,349 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 13:06:28,349 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 13:06:28,349 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 13:06:28,350 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 13:06:28,350 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 13:06:28,350 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 13:06:28,351 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 13:06:28,351 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 13:06:28,351 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 13:06:28,352 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 13:06:28,352 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 13:06:28,352 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 13:06:28,352 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 13:06:28,353 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 13:06:28,361 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 13:06:28,361 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:06:28,383 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 13:06:28,383 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 13:06:28,384 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-27 13:06:28,384 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-27 13:06:28,384 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 13:06:28,384 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 13:06:28,385 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 13:06:28,385 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 13:06:28,385 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 13:06:28,385 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 13:06:28,386 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 13:06:28,386 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 13:06:28,386 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 13:06:28,386 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 13:06:28,386 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 13:06:28,386 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 13:06:28,386 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 13:06:28,386 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 13:06:28,386 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 13:06:28,386 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 13:06:28,386 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 13:06:28,386 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 13:06:28,387 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 13:06:28,387 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 13:06:28,387 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 13:06:28,387 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 13:06:28,387 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 13:06:28,387 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 13:06:28,387 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 13:06:28,387 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 13:06:28,387 INFO L138 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2022-04-27 13:06:28,387 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-27 13:06:28,388 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 13:06:28,388 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:06:28,558 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 13:06:28,573 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 13:06:28,574 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 13:06:28,575 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 13:06:28,577 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 13:06:28,579 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound50.c [2022-04-27 13:06:28,619 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/2d1e1a13c/07eac84b8dcc4858ae615d350fa0458f/FLAGf6de10c91 [2022-04-27 13:06:28,964 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 13:06:28,965 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound50.c [2022-04-27 13:06:28,969 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/2d1e1a13c/07eac84b8dcc4858ae615d350fa0458f/FLAGf6de10c91 [2022-04-27 13:06:28,979 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/2d1e1a13c/07eac84b8dcc4858ae615d350fa0458f [2022-04-27 13:06:28,981 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 13:06:28,982 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-27 13:06:28,985 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 13:06:28,985 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 13:06:28,987 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 13:06:28,987 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 01:06:28" (1/1) ... [2022-04-27 13:06:28,988 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@52304923 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:06:28, skipping insertion in model container [2022-04-27 13:06:28,988 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 01:06:28" (1/1) ... [2022-04-27 13:06:28,992 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 13:06:29,008 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 13:06:29,117 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_unwindbound50.c[490,503] [2022-04-27 13:06:29,147 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 13:06:29,153 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 13:06:29,160 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_unwindbound50.c[490,503] [2022-04-27 13:06:29,171 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 13:06:29,179 INFO L208 MainTranslator]: Completed translation [2022-04-27 13:06:29,180 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:06:29 WrapperNode [2022-04-27 13:06:29,180 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 13:06:29,180 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 13:06:29,180 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 13:06:29,180 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 13:06:29,188 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:06:29" (1/1) ... [2022-04-27 13:06:29,188 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:06:29" (1/1) ... [2022-04-27 13:06:29,194 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:06:29" (1/1) ... [2022-04-27 13:06:29,194 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:06:29" (1/1) ... [2022-04-27 13:06:29,204 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:06:29" (1/1) ... [2022-04-27 13:06:29,207 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:06:29" (1/1) ... [2022-04-27 13:06:29,208 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:06:29" (1/1) ... [2022-04-27 13:06:29,209 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 13:06:29,210 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 13:06:29,210 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 13:06:29,210 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 13:06:29,211 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:06:29" (1/1) ... [2022-04-27 13:06:29,216 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 13:06:29,222 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:06:29,230 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:06:29,234 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:06:29,253 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 13:06:29,253 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 13:06:29,253 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 13:06:29,253 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 13:06:29,253 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 13:06:29,253 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 13:06:29,253 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 13:06:29,254 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 13:06:29,254 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 13:06:29,254 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 13:06:29,254 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 13:06:29,254 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 13:06:29,254 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 13:06:29,254 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 13:06:29,254 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 13:06:29,254 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 13:06:29,254 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 13:06:29,254 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 13:06:29,254 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 13:06:29,254 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 13:06:29,304 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 13:06:29,305 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 13:06:29,425 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 13:06:29,429 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 13:06:29,429 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-27 13:06:29,431 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 01:06:29 BoogieIcfgContainer [2022-04-27 13:06:29,431 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 13:06:29,432 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 13:06:29,432 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 13:06:29,434 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 13:06:29,434 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 01:06:28" (1/3) ... [2022-04-27 13:06:29,435 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@44290811 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 01:06:29, skipping insertion in model container [2022-04-27 13:06:29,435 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:06:29" (2/3) ... [2022-04-27 13:06:29,435 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@44290811 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 01:06:29, skipping insertion in model container [2022-04-27 13:06:29,435 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 01:06:29" (3/3) ... [2022-04-27 13:06:29,436 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd3-ll_unwindbound50.c [2022-04-27 13:06:29,445 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 13:06:29,446 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 13:06:29,474 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 13:06:29,479 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@ddc951c, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@1027b13e [2022-04-27 13:06:29,479 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 13:06:29,484 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:06:29,488 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-27 13:06:29,489 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:06:29,489 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:06:29,489 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:06:29,492 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:06:29,493 INFO L85 PathProgramCache]: Analyzing trace with hash 1766263304, now seen corresponding path program 1 times [2022-04-27 13:06:29,498 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:06:29,499 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [242930727] [2022-04-27 13:06:29,499 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:29,499 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:06:29,590 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:29,629 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 13:06:29,633 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:29,650 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:06:29,650 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-27 13:06:29,651 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {43#true} {43#true} #108#return; {43#true} is VALID [2022-04-27 13:06:29,651 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 13:06:29,653 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:29,657 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:06:29,658 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:06:29,658 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:06:29,658 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-27 13:06:29,658 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-27 13:06:29,660 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:29,664 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:06:29,665 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:06:29,665 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:06:29,665 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-27 13:06:29,666 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:06:29,666 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:06:29,666 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-27 13:06:29,666 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#true} {43#true} #108#return; {43#true} is VALID [2022-04-27 13:06:29,667 INFO L272 TraceCheckUtils]: 4: Hoare triple {43#true} call #t~ret9 := main(); {43#true} is VALID [2022-04-27 13:06:29,667 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:06:29,667 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:06:29,667 INFO L290 TraceCheckUtils]: 7: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:06:29,667 INFO L290 TraceCheckUtils]: 8: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:06:29,668 INFO L290 TraceCheckUtils]: 9: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:06:29,668 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-27 13:06:29,668 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:06:29,668 INFO L290 TraceCheckUtils]: 12: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:06:29,668 INFO L290 TraceCheckUtils]: 13: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:06:29,669 INFO L290 TraceCheckUtils]: 14: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:06:29,669 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-27 13:06:29,669 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:06:29,669 INFO L290 TraceCheckUtils]: 17: Hoare triple {44#false} assume !true; {44#false} is VALID [2022-04-27 13:06:29,669 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:06:29,669 INFO L290 TraceCheckUtils]: 19: Hoare triple {44#false} ~cond := #in~cond; {44#false} is VALID [2022-04-27 13:06:29,669 INFO L290 TraceCheckUtils]: 20: Hoare triple {44#false} assume 0 == ~cond; {44#false} is VALID [2022-04-27 13:06:29,670 INFO L290 TraceCheckUtils]: 21: Hoare triple {44#false} assume !false; {44#false} is VALID [2022-04-27 13:06:29,670 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:06:29,671 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:06:29,671 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [242930727] [2022-04-27 13:06:29,674 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [242930727] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:06:29,674 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:06:29,674 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 13:06:29,675 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [459326998] [2022-04-27 13:06:29,675 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:06:29,679 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:06:29,680 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:06:29,683 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:06:29,701 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:06:29,702 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 13:06:29,702 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:06:29,724 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 13:06:29,724 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 13:06:29,726 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:06:29,915 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:29,915 INFO L93 Difference]: Finished difference Result 74 states and 111 transitions. [2022-04-27 13:06:29,915 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 13:06:29,916 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:06:29,916 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:06:29,917 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:06:29,930 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 111 transitions. [2022-04-27 13:06:29,930 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:06:29,940 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 111 transitions. [2022-04-27 13:06:29,940 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 111 transitions. [2022-04-27 13:06:30,035 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:06:30,045 INFO L225 Difference]: With dead ends: 74 [2022-04-27 13:06:30,046 INFO L226 Difference]: Without dead ends: 36 [2022-04-27 13:06:30,049 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:06:30,054 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:06:30,055 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:06:30,067 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-27 13:06:30,081 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 35. [2022-04-27 13:06:30,082 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:06:30,083 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:06:30,084 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:06:30,087 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:06:30,094 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:30,097 INFO L93 Difference]: Finished difference Result 36 states and 46 transitions. [2022-04-27 13:06:30,097 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 46 transitions. [2022-04-27 13:06:30,098 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:30,098 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:30,098 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:06:30,099 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:06:30,101 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:30,101 INFO L93 Difference]: Finished difference Result 36 states and 46 transitions. [2022-04-27 13:06:30,101 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 46 transitions. [2022-04-27 13:06:30,101 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:30,102 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:30,102 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:06:30,102 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:06:30,102 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:06:30,104 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 45 transitions. [2022-04-27 13:06:30,104 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 45 transitions. Word has length 22 [2022-04-27 13:06:30,105 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:06:30,105 INFO L495 AbstractCegarLoop]: Abstraction has 35 states and 45 transitions. [2022-04-27 13:06:30,105 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:06:30,105 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 45 transitions. [2022-04-27 13:06:30,105 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-27 13:06:30,105 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:06:30,106 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:06:30,106 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 13:06:30,106 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:06:30,106 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:06:30,106 INFO L85 PathProgramCache]: Analyzing trace with hash -81203399, now seen corresponding path program 1 times [2022-04-27 13:06:30,107 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:06:30,107 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1634269110] [2022-04-27 13:06:30,107 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:30,107 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:06:30,127 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:06:30,127 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [159136462] [2022-04-27 13:06:30,127 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:30,128 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:06:30,128 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:06:30,133 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:06:30,133 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:06:30,190 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:30,192 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-27 13:06:30,216 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:30,219 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:06:30,376 INFO L272 TraceCheckUtils]: 0: Hoare triple {284#true} call ULTIMATE.init(); {284#true} is VALID [2022-04-27 13:06:30,377 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:06:30,377 INFO L290 TraceCheckUtils]: 2: Hoare triple {292#(<= ~counter~0 0)} assume true; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:30,378 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {292#(<= ~counter~0 0)} {284#true} #108#return; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:30,378 INFO L272 TraceCheckUtils]: 4: Hoare triple {292#(<= ~counter~0 0)} call #t~ret9 := main(); {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:30,378 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:06:30,379 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:06:30,379 INFO L290 TraceCheckUtils]: 7: Hoare triple {292#(<= ~counter~0 0)} ~cond := #in~cond; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:30,379 INFO L290 TraceCheckUtils]: 8: Hoare triple {292#(<= ~counter~0 0)} assume !(0 == ~cond); {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:30,380 INFO L290 TraceCheckUtils]: 9: Hoare triple {292#(<= ~counter~0 0)} assume true; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:30,380 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:06:30,381 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:06:30,381 INFO L290 TraceCheckUtils]: 12: Hoare triple {292#(<= ~counter~0 0)} ~cond := #in~cond; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:30,381 INFO L290 TraceCheckUtils]: 13: Hoare triple {292#(<= ~counter~0 0)} assume !(0 == ~cond); {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:30,382 INFO L290 TraceCheckUtils]: 14: Hoare triple {292#(<= ~counter~0 0)} assume true; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:30,382 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:06:30,382 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:06:30,383 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:06:30,383 INFO L290 TraceCheckUtils]: 18: Hoare triple {341#(<= |main_#t~post6| 0)} assume !(#t~post6 < 50);havoc #t~post6; {285#false} is VALID [2022-04-27 13:06:30,383 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:06:30,384 INFO L290 TraceCheckUtils]: 20: Hoare triple {285#false} ~cond := #in~cond; {285#false} is VALID [2022-04-27 13:06:30,384 INFO L290 TraceCheckUtils]: 21: Hoare triple {285#false} assume 0 == ~cond; {285#false} is VALID [2022-04-27 13:06:30,384 INFO L290 TraceCheckUtils]: 22: Hoare triple {285#false} assume !false; {285#false} is VALID [2022-04-27 13:06:30,384 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:06:30,384 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:06:30,384 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:06:30,384 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1634269110] [2022-04-27 13:06:30,384 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:06:30,385 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [159136462] [2022-04-27 13:06:30,385 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [159136462] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:06:30,385 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:06:30,385 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-27 13:06:30,385 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2089211323] [2022-04-27 13:06:30,385 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:06:30,386 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:06:30,386 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:06:30,386 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:06:30,404 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:06:30,404 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-27 13:06:30,404 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:06:30,404 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-27 13:06:30,405 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-27 13:06:30,405 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:06:30,483 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:30,483 INFO L93 Difference]: Finished difference Result 44 states and 54 transitions. [2022-04-27 13:06:30,483 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-27 13:06:30,483 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:06:30,484 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:06:30,484 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:06:30,487 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 54 transitions. [2022-04-27 13:06:30,487 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:06:30,490 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 54 transitions. [2022-04-27 13:06:30,490 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 54 transitions. [2022-04-27 13:06:30,527 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:06:30,530 INFO L225 Difference]: With dead ends: 44 [2022-04-27 13:06:30,530 INFO L226 Difference]: Without dead ends: 37 [2022-04-27 13:06:30,530 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:06:30,532 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:06:30,533 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:06:30,535 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-27 13:06:30,544 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 37. [2022-04-27 13:06:30,544 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:06:30,544 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:06:30,546 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:06:30,546 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:06:30,551 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:30,551 INFO L93 Difference]: Finished difference Result 37 states and 47 transitions. [2022-04-27 13:06:30,551 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-27 13:06:30,552 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:30,552 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:30,553 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:06:30,553 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:06:30,559 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:30,559 INFO L93 Difference]: Finished difference Result 37 states and 47 transitions. [2022-04-27 13:06:30,559 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-27 13:06:30,563 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:30,563 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:30,563 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:06:30,563 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:06:30,563 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:06:30,568 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 47 transitions. [2022-04-27 13:06:30,568 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 47 transitions. Word has length 23 [2022-04-27 13:06:30,568 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:06:30,568 INFO L495 AbstractCegarLoop]: Abstraction has 37 states and 47 transitions. [2022-04-27 13:06:30,568 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:06:30,568 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-27 13:06:30,569 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-27 13:06:30,569 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:06:30,569 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:06:30,587 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-27 13:06:30,769 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:06:30,770 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:06:30,770 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:06:30,770 INFO L85 PathProgramCache]: Analyzing trace with hash 1762644405, now seen corresponding path program 1 times [2022-04-27 13:06:30,770 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:06:30,770 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [920058886] [2022-04-27 13:06:30,771 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:30,771 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:06:30,786 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:06:30,786 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [556086675] [2022-04-27 13:06:30,786 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:30,786 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:06:30,786 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:06:30,788 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:06:30,789 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:06:30,821 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:30,822 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 13:06:30,833 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:30,834 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:06:30,921 INFO L272 TraceCheckUtils]: 0: Hoare triple {547#true} call ULTIMATE.init(); {547#true} is VALID [2022-04-27 13:06:30,921 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:06:30,921 INFO L290 TraceCheckUtils]: 2: Hoare triple {547#true} assume true; {547#true} is VALID [2022-04-27 13:06:30,921 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {547#true} {547#true} #108#return; {547#true} is VALID [2022-04-27 13:06:30,922 INFO L272 TraceCheckUtils]: 4: Hoare triple {547#true} call #t~ret9 := main(); {547#true} is VALID [2022-04-27 13:06:30,922 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:06:30,922 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:06:30,922 INFO L290 TraceCheckUtils]: 7: Hoare triple {547#true} ~cond := #in~cond; {547#true} is VALID [2022-04-27 13:06:30,922 INFO L290 TraceCheckUtils]: 8: Hoare triple {547#true} assume !(0 == ~cond); {547#true} is VALID [2022-04-27 13:06:30,922 INFO L290 TraceCheckUtils]: 9: Hoare triple {547#true} assume true; {547#true} is VALID [2022-04-27 13:06:30,922 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {547#true} {547#true} #94#return; {547#true} is VALID [2022-04-27 13:06:30,922 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:06:30,923 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:06:30,923 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:06:30,923 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:06:30,924 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:06:30,924 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:06:30,925 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:06:30,925 INFO L290 TraceCheckUtils]: 18: Hoare triple {603#(<= 1 main_~b~0)} assume !!(#t~post6 < 50);havoc #t~post6; {603#(<= 1 main_~b~0)} is VALID [2022-04-27 13:06:30,925 INFO L290 TraceCheckUtils]: 19: Hoare triple {603#(<= 1 main_~b~0)} assume !(0 != ~b~0); {548#false} is VALID [2022-04-27 13:06:30,926 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:06:30,926 INFO L290 TraceCheckUtils]: 21: Hoare triple {548#false} ~cond := #in~cond; {548#false} is VALID [2022-04-27 13:06:30,926 INFO L290 TraceCheckUtils]: 22: Hoare triple {548#false} assume 0 == ~cond; {548#false} is VALID [2022-04-27 13:06:30,926 INFO L290 TraceCheckUtils]: 23: Hoare triple {548#false} assume !false; {548#false} is VALID [2022-04-27 13:06:30,926 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:06:30,926 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:06:30,926 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:06:30,927 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [920058886] [2022-04-27 13:06:30,927 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:06:30,927 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [556086675] [2022-04-27 13:06:30,927 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [556086675] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:06:30,927 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:06:30,927 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 13:06:30,927 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [846261264] [2022-04-27 13:06:30,927 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:06:30,928 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:06:30,928 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:06:30,928 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:06:30,943 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:06:30,943 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 13:06:30,943 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:06:30,944 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 13:06:30,944 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-27 13:06:30,944 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:06:31,155 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:31,156 INFO L93 Difference]: Finished difference Result 57 states and 75 transitions. [2022-04-27 13:06:31,156 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 13:06:31,156 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:06:31,156 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:06:31,156 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:06:31,157 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 75 transitions. [2022-04-27 13:06:31,158 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:06:31,159 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 75 transitions. [2022-04-27 13:06:31,159 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 75 transitions. [2022-04-27 13:06:31,211 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:06:31,213 INFO L225 Difference]: With dead ends: 57 [2022-04-27 13:06:31,213 INFO L226 Difference]: Without dead ends: 50 [2022-04-27 13:06:31,213 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:06:31,214 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:06:31,214 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:06:31,214 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-04-27 13:06:31,227 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 38. [2022-04-27 13:06:31,227 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:06:31,228 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:06:31,228 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:06:31,228 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:06:31,230 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:31,230 INFO L93 Difference]: Finished difference Result 50 states and 68 transitions. [2022-04-27 13:06:31,230 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 68 transitions. [2022-04-27 13:06:31,230 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:31,230 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:31,230 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:06:31,230 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:06:31,232 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:31,232 INFO L93 Difference]: Finished difference Result 50 states and 68 transitions. [2022-04-27 13:06:31,232 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 68 transitions. [2022-04-27 13:06:31,232 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:31,232 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:31,233 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:06:31,233 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:06:31,233 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:06:31,234 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 48 transitions. [2022-04-27 13:06:31,234 INFO L78 Accepts]: Start accepts. Automaton has 38 states and 48 transitions. Word has length 24 [2022-04-27 13:06:31,234 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:06:31,234 INFO L495 AbstractCegarLoop]: Abstraction has 38 states and 48 transitions. [2022-04-27 13:06:31,234 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:06:31,234 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 48 transitions. [2022-04-27 13:06:31,235 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-27 13:06:31,235 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:06:31,235 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:06:31,252 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:06:31,439 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:06:31,439 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:06:31,440 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:06:31,440 INFO L85 PathProgramCache]: Analyzing trace with hash -1090347867, now seen corresponding path program 1 times [2022-04-27 13:06:31,440 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:06:31,440 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [911068673] [2022-04-27 13:06:31,440 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:31,440 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:06:31,459 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:06:31,459 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [118516863] [2022-04-27 13:06:31,459 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:31,459 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:06:31,460 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:06:31,460 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:06:31,461 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:06:31,504 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:31,505 INFO L263 TraceCheckSpWp]: Trace formula consists of 128 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 13:06:31,516 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:31,516 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:06:31,627 INFO L272 TraceCheckUtils]: 0: Hoare triple {865#true} call ULTIMATE.init(); {865#true} is VALID [2022-04-27 13:06:31,627 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:06:31,628 INFO L290 TraceCheckUtils]: 2: Hoare triple {873#(<= ~counter~0 0)} assume true; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:31,628 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {873#(<= ~counter~0 0)} {865#true} #108#return; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:31,628 INFO L272 TraceCheckUtils]: 4: Hoare triple {873#(<= ~counter~0 0)} call #t~ret9 := main(); {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:31,629 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:06:31,629 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:06:31,629 INFO L290 TraceCheckUtils]: 7: Hoare triple {873#(<= ~counter~0 0)} ~cond := #in~cond; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:31,631 INFO L290 TraceCheckUtils]: 8: Hoare triple {873#(<= ~counter~0 0)} assume !(0 == ~cond); {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:31,631 INFO L290 TraceCheckUtils]: 9: Hoare triple {873#(<= ~counter~0 0)} assume true; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:31,632 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:06:31,632 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:06:31,632 INFO L290 TraceCheckUtils]: 12: Hoare triple {873#(<= ~counter~0 0)} ~cond := #in~cond; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:31,633 INFO L290 TraceCheckUtils]: 13: Hoare triple {873#(<= ~counter~0 0)} assume !(0 == ~cond); {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:31,633 INFO L290 TraceCheckUtils]: 14: Hoare triple {873#(<= ~counter~0 0)} assume true; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:31,633 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:06:31,634 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:06:31,634 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:06:31,634 INFO L290 TraceCheckUtils]: 18: Hoare triple {922#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {922#(<= ~counter~0 1)} is VALID [2022-04-27 13:06:31,635 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:06:31,636 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:06:31,636 INFO L290 TraceCheckUtils]: 21: Hoare triple {932#(<= |main_#t~post7| 1)} assume !(#t~post7 < 50);havoc #t~post7; {866#false} is VALID [2022-04-27 13:06:31,636 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:06:31,636 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:06:31,636 INFO L290 TraceCheckUtils]: 24: Hoare triple {866#false} assume !(#t~post6 < 50);havoc #t~post6; {866#false} is VALID [2022-04-27 13:06:31,637 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:06:31,637 INFO L290 TraceCheckUtils]: 26: Hoare triple {866#false} ~cond := #in~cond; {866#false} is VALID [2022-04-27 13:06:31,637 INFO L290 TraceCheckUtils]: 27: Hoare triple {866#false} assume 0 == ~cond; {866#false} is VALID [2022-04-27 13:06:31,637 INFO L290 TraceCheckUtils]: 28: Hoare triple {866#false} assume !false; {866#false} is VALID [2022-04-27 13:06:31,637 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:06:31,637 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:06:31,637 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:06:31,637 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [911068673] [2022-04-27 13:06:31,637 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:06:31,637 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [118516863] [2022-04-27 13:06:31,637 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [118516863] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:06:31,638 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:06:31,638 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 13:06:31,638 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1950274114] [2022-04-27 13:06:31,638 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:06:31,638 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:06:31,638 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:06:31,638 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:06:31,655 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:06:31,656 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:06:31,656 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:06:31,656 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:06:31,656 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-27 13:06:31,656 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:06:31,760 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:31,760 INFO L93 Difference]: Finished difference Result 62 states and 82 transitions. [2022-04-27 13:06:31,760 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:06:31,760 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:06:31,761 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:06:31,761 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:06:31,762 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 82 transitions. [2022-04-27 13:06:31,762 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:06:31,764 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 82 transitions. [2022-04-27 13:06:31,764 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 82 transitions. [2022-04-27 13:06:31,816 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:06:31,817 INFO L225 Difference]: With dead ends: 62 [2022-04-27 13:06:31,817 INFO L226 Difference]: Without dead ends: 40 [2022-04-27 13:06:31,817 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:06:31,818 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:06:31,818 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:06:31,819 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-04-27 13:06:31,845 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 40. [2022-04-27 13:06:31,845 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:06:31,845 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:06:31,845 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:06:31,845 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:06:31,847 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:31,847 INFO L93 Difference]: Finished difference Result 40 states and 50 transitions. [2022-04-27 13:06:31,847 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 50 transitions. [2022-04-27 13:06:31,847 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:31,847 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:31,847 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:06:31,848 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:06:31,859 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:31,859 INFO L93 Difference]: Finished difference Result 40 states and 50 transitions. [2022-04-27 13:06:31,859 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 50 transitions. [2022-04-27 13:06:31,860 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:31,860 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:31,860 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:06:31,860 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:06:31,861 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:06:31,862 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 50 transitions. [2022-04-27 13:06:31,862 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 50 transitions. Word has length 29 [2022-04-27 13:06:31,863 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:06:31,863 INFO L495 AbstractCegarLoop]: Abstraction has 40 states and 50 transitions. [2022-04-27 13:06:31,863 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:06:31,863 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 50 transitions. [2022-04-27 13:06:31,864 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-27 13:06:31,864 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:06:31,864 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:06:31,883 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:06:32,079 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:06:32,080 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:06:32,080 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:06:32,080 INFO L85 PathProgramCache]: Analyzing trace with hash 795698770, now seen corresponding path program 1 times [2022-04-27 13:06:32,080 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:06:32,080 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [331878142] [2022-04-27 13:06:32,080 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:32,080 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:06:32,105 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:06:32,105 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1220605431] [2022-04-27 13:06:32,105 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:32,105 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:06:32,105 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:06:32,108 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:06:32,109 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:06:32,143 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:32,144 INFO L263 TraceCheckSpWp]: Trace formula consists of 119 conjuncts, 18 conjunts are in the unsatisfiable core [2022-04-27 13:06:32,152 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:32,153 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:06:32,447 INFO L272 TraceCheckUtils]: 0: Hoare triple {1183#true} call ULTIMATE.init(); {1183#true} is VALID [2022-04-27 13:06:32,447 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:06:32,447 INFO L290 TraceCheckUtils]: 2: Hoare triple {1183#true} assume true; {1183#true} is VALID [2022-04-27 13:06:32,447 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1183#true} {1183#true} #108#return; {1183#true} is VALID [2022-04-27 13:06:32,447 INFO L272 TraceCheckUtils]: 4: Hoare triple {1183#true} call #t~ret9 := main(); {1183#true} is VALID [2022-04-27 13:06:32,448 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:06:32,448 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:06:32,448 INFO L290 TraceCheckUtils]: 7: Hoare triple {1183#true} ~cond := #in~cond; {1183#true} is VALID [2022-04-27 13:06:32,448 INFO L290 TraceCheckUtils]: 8: Hoare triple {1183#true} assume !(0 == ~cond); {1183#true} is VALID [2022-04-27 13:06:32,448 INFO L290 TraceCheckUtils]: 9: Hoare triple {1183#true} assume true; {1183#true} is VALID [2022-04-27 13:06:32,448 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1183#true} {1183#true} #94#return; {1183#true} is VALID [2022-04-27 13:06:32,448 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:06:32,452 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:06:32,452 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:06:32,453 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:06:32,453 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:06:32,454 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:06:32,454 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:06:32,455 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 < 50);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:06:32,455 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:06:32,456 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:06:32,456 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 < 50);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:06:32,457 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:06:32,457 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:06:32,457 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 < 50);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:06:32,458 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:06:32,459 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:06:32,459 INFO L290 TraceCheckUtils]: 27: Hoare triple {1273#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1184#false} is VALID [2022-04-27 13:06:32,459 INFO L290 TraceCheckUtils]: 28: Hoare triple {1184#false} assume !false; {1184#false} is VALID [2022-04-27 13:06:32,459 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:06:32,459 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:06:32,459 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:06:32,459 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [331878142] [2022-04-27 13:06:32,459 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:06:32,460 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1220605431] [2022-04-27 13:06:32,460 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1220605431] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:06:32,460 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:06:32,460 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-27 13:06:32,460 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1445057358] [2022-04-27 13:06:32,460 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:06:32,460 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:06:32,460 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:06:32,461 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:06:32,478 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:06:32,479 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 13:06:32,479 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:06:32,479 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 13:06:32,479 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-27 13:06:32,479 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:06:33,033 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:33,034 INFO L93 Difference]: Finished difference Result 68 states and 92 transitions. [2022-04-27 13:06:33,034 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 13:06:33,034 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:06:33,034 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:06:33,034 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:06:33,036 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 92 transitions. [2022-04-27 13:06:33,036 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:06:33,037 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 92 transitions. [2022-04-27 13:06:33,037 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 92 transitions. [2022-04-27 13:06:33,105 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:06:33,106 INFO L225 Difference]: With dead ends: 68 [2022-04-27 13:06:33,106 INFO L226 Difference]: Without dead ends: 66 [2022-04-27 13:06:33,106 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:06:33,107 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:06:33,107 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:06:33,107 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2022-04-27 13:06:33,136 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 55. [2022-04-27 13:06:33,137 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:06:33,137 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:06:33,137 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:06:33,137 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:06:33,139 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:33,139 INFO L93 Difference]: Finished difference Result 66 states and 90 transitions. [2022-04-27 13:06:33,139 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 90 transitions. [2022-04-27 13:06:33,140 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:33,140 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:33,140 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:06:33,140 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:06:33,142 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:33,142 INFO L93 Difference]: Finished difference Result 66 states and 90 transitions. [2022-04-27 13:06:33,142 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 90 transitions. [2022-04-27 13:06:33,142 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:33,142 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:33,143 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:06:33,143 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:06:33,143 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:06:33,144 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 72 transitions. [2022-04-27 13:06:33,144 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 72 transitions. Word has length 29 [2022-04-27 13:06:33,144 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:06:33,144 INFO L495 AbstractCegarLoop]: Abstraction has 55 states and 72 transitions. [2022-04-27 13:06:33,145 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:06:33,145 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 72 transitions. [2022-04-27 13:06:33,145 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-04-27 13:06:33,145 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:06:33,145 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:06:33,162 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:06:33,359 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:06:33,359 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:06:33,359 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:06:33,359 INFO L85 PathProgramCache]: Analyzing trace with hash 979890972, now seen corresponding path program 1 times [2022-04-27 13:06:33,359 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:06:33,359 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1817433829] [2022-04-27 13:06:33,359 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:33,360 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:06:33,375 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:06:33,376 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [720005921] [2022-04-27 13:06:33,376 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:33,376 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:06:33,376 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:06:33,377 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:06:33,378 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:06:33,411 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:33,412 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 13:06:33,423 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:33,424 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:06:33,543 INFO L272 TraceCheckUtils]: 0: Hoare triple {1597#true} call ULTIMATE.init(); {1597#true} is VALID [2022-04-27 13:06:33,544 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:06:33,544 INFO L290 TraceCheckUtils]: 2: Hoare triple {1605#(<= ~counter~0 0)} assume true; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:33,544 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1605#(<= ~counter~0 0)} {1597#true} #108#return; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:33,545 INFO L272 TraceCheckUtils]: 4: Hoare triple {1605#(<= ~counter~0 0)} call #t~ret9 := main(); {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:33,545 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:06:33,545 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:06:33,545 INFO L290 TraceCheckUtils]: 7: Hoare triple {1605#(<= ~counter~0 0)} ~cond := #in~cond; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:33,546 INFO L290 TraceCheckUtils]: 8: Hoare triple {1605#(<= ~counter~0 0)} assume !(0 == ~cond); {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:33,546 INFO L290 TraceCheckUtils]: 9: Hoare triple {1605#(<= ~counter~0 0)} assume true; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:33,546 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:06:33,547 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:06:33,547 INFO L290 TraceCheckUtils]: 12: Hoare triple {1605#(<= ~counter~0 0)} ~cond := #in~cond; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:33,547 INFO L290 TraceCheckUtils]: 13: Hoare triple {1605#(<= ~counter~0 0)} assume !(0 == ~cond); {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:33,547 INFO L290 TraceCheckUtils]: 14: Hoare triple {1605#(<= ~counter~0 0)} assume true; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:33,548 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:06:33,548 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:06:33,548 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:06:33,549 INFO L290 TraceCheckUtils]: 18: Hoare triple {1654#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {1654#(<= ~counter~0 1)} is VALID [2022-04-27 13:06:33,549 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:06:33,549 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:06:33,550 INFO L290 TraceCheckUtils]: 21: Hoare triple {1664#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {1664#(<= ~counter~0 2)} is VALID [2022-04-27 13:06:33,551 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:06:33,551 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:06:33,551 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:06:33,552 INFO L290 TraceCheckUtils]: 25: Hoare triple {1677#(<= |main_#t~post6| 2)} assume !(#t~post6 < 50);havoc #t~post6; {1598#false} is VALID [2022-04-27 13:06:33,552 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:06:33,552 INFO L290 TraceCheckUtils]: 27: Hoare triple {1598#false} ~cond := #in~cond; {1598#false} is VALID [2022-04-27 13:06:33,552 INFO L290 TraceCheckUtils]: 28: Hoare triple {1598#false} assume 0 == ~cond; {1598#false} is VALID [2022-04-27 13:06:33,552 INFO L290 TraceCheckUtils]: 29: Hoare triple {1598#false} assume !false; {1598#false} is VALID [2022-04-27 13:06:33,552 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:06:33,552 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:06:33,710 INFO L290 TraceCheckUtils]: 29: Hoare triple {1598#false} assume !false; {1598#false} is VALID [2022-04-27 13:06:33,710 INFO L290 TraceCheckUtils]: 28: Hoare triple {1598#false} assume 0 == ~cond; {1598#false} is VALID [2022-04-27 13:06:33,710 INFO L290 TraceCheckUtils]: 27: Hoare triple {1598#false} ~cond := #in~cond; {1598#false} is VALID [2022-04-27 13:06:33,710 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:06:33,711 INFO L290 TraceCheckUtils]: 25: Hoare triple {1705#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {1598#false} is VALID [2022-04-27 13:06:33,711 INFO L290 TraceCheckUtils]: 24: Hoare triple {1709#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1705#(< |main_#t~post6| 50)} is VALID [2022-04-27 13:06:33,712 INFO L290 TraceCheckUtils]: 23: Hoare triple {1709#(< ~counter~0 50)} ~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 50)} is VALID [2022-04-27 13:06:33,712 INFO L290 TraceCheckUtils]: 22: Hoare triple {1709#(< ~counter~0 50)} assume !(~c~0 >= ~b~0); {1709#(< ~counter~0 50)} is VALID [2022-04-27 13:06:33,712 INFO L290 TraceCheckUtils]: 21: Hoare triple {1709#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {1709#(< ~counter~0 50)} is VALID [2022-04-27 13:06:33,713 INFO L290 TraceCheckUtils]: 20: Hoare triple {1722#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1709#(< ~counter~0 50)} is VALID [2022-04-27 13:06:33,713 INFO L290 TraceCheckUtils]: 19: Hoare triple {1722#(< ~counter~0 49)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1722#(< ~counter~0 49)} is VALID [2022-04-27 13:06:33,714 INFO L290 TraceCheckUtils]: 18: Hoare triple {1722#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {1722#(< ~counter~0 49)} is VALID [2022-04-27 13:06:33,715 INFO L290 TraceCheckUtils]: 17: Hoare triple {1732#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1722#(< ~counter~0 49)} is VALID [2022-04-27 13:06:33,715 INFO L290 TraceCheckUtils]: 16: Hoare triple {1732#(< ~counter~0 48)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1732#(< ~counter~0 48)} is VALID [2022-04-27 13:06:33,717 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1597#true} {1732#(< ~counter~0 48)} #96#return; {1732#(< ~counter~0 48)} is VALID [2022-04-27 13:06:33,718 INFO L290 TraceCheckUtils]: 14: Hoare triple {1597#true} assume true; {1597#true} is VALID [2022-04-27 13:06:33,718 INFO L290 TraceCheckUtils]: 13: Hoare triple {1597#true} assume !(0 == ~cond); {1597#true} is VALID [2022-04-27 13:06:33,718 INFO L290 TraceCheckUtils]: 12: Hoare triple {1597#true} ~cond := #in~cond; {1597#true} is VALID [2022-04-27 13:06:33,718 INFO L272 TraceCheckUtils]: 11: Hoare triple {1732#(< ~counter~0 48)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1597#true} is VALID [2022-04-27 13:06:33,719 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1597#true} {1732#(< ~counter~0 48)} #94#return; {1732#(< ~counter~0 48)} is VALID [2022-04-27 13:06:33,719 INFO L290 TraceCheckUtils]: 9: Hoare triple {1597#true} assume true; {1597#true} is VALID [2022-04-27 13:06:33,719 INFO L290 TraceCheckUtils]: 8: Hoare triple {1597#true} assume !(0 == ~cond); {1597#true} is VALID [2022-04-27 13:06:33,719 INFO L290 TraceCheckUtils]: 7: Hoare triple {1597#true} ~cond := #in~cond; {1597#true} is VALID [2022-04-27 13:06:33,719 INFO L272 TraceCheckUtils]: 6: Hoare triple {1732#(< ~counter~0 48)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1597#true} is VALID [2022-04-27 13:06:33,719 INFO L290 TraceCheckUtils]: 5: Hoare triple {1732#(< ~counter~0 48)} 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 48)} is VALID [2022-04-27 13:06:33,720 INFO L272 TraceCheckUtils]: 4: Hoare triple {1732#(< ~counter~0 48)} call #t~ret9 := main(); {1732#(< ~counter~0 48)} is VALID [2022-04-27 13:06:33,720 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1732#(< ~counter~0 48)} {1597#true} #108#return; {1732#(< ~counter~0 48)} is VALID [2022-04-27 13:06:33,720 INFO L290 TraceCheckUtils]: 2: Hoare triple {1732#(< ~counter~0 48)} assume true; {1732#(< ~counter~0 48)} is VALID [2022-04-27 13:06:33,721 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 48)} is VALID [2022-04-27 13:06:33,721 INFO L272 TraceCheckUtils]: 0: Hoare triple {1597#true} call ULTIMATE.init(); {1597#true} is VALID [2022-04-27 13:06:33,721 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:06:33,721 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:06:33,721 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1817433829] [2022-04-27 13:06:33,721 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:06:33,721 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [720005921] [2022-04-27 13:06:33,721 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [720005921] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:06:33,722 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:06:33,722 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-27 13:06:33,722 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [713058793] [2022-04-27 13:06:33,722 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:06:33,722 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:06:33,722 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:06:33,722 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:06:33,755 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:06:33,755 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 13:06:33,755 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:06:33,755 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 13:06:33,755 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-27 13:06:33,755 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:06:34,254 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:34,255 INFO L93 Difference]: Finished difference Result 151 states and 197 transitions. [2022-04-27 13:06:34,255 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-27 13:06:34,255 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:06:34,255 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:06:34,255 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:06:34,257 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 145 transitions. [2022-04-27 13:06:34,257 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:06:34,259 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 145 transitions. [2022-04-27 13:06:34,259 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 145 transitions. [2022-04-27 13:06:34,364 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:06:34,367 INFO L225 Difference]: With dead ends: 151 [2022-04-27 13:06:34,367 INFO L226 Difference]: Without dead ends: 144 [2022-04-27 13:06:34,367 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:06:34,368 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:06:34,368 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:06:34,368 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 144 states. [2022-04-27 13:06:34,435 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 144 to 101. [2022-04-27 13:06:34,435 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:06:34,436 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:06:34,436 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:06:34,436 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:06:34,440 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:34,440 INFO L93 Difference]: Finished difference Result 144 states and 188 transitions. [2022-04-27 13:06:34,440 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 188 transitions. [2022-04-27 13:06:34,440 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:34,440 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:34,441 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:06:34,441 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:06:34,445 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:34,445 INFO L93 Difference]: Finished difference Result 144 states and 188 transitions. [2022-04-27 13:06:34,445 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 188 transitions. [2022-04-27 13:06:34,445 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:34,445 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:34,445 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:06:34,445 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:06:34,446 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:06:34,448 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 134 transitions. [2022-04-27 13:06:34,448 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 134 transitions. Word has length 30 [2022-04-27 13:06:34,448 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:06:34,448 INFO L495 AbstractCegarLoop]: Abstraction has 101 states and 134 transitions. [2022-04-27 13:06:34,448 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:06:34,448 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 134 transitions. [2022-04-27 13:06:34,449 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-27 13:06:34,449 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:06:34,449 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:06:34,467 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:06:34,663 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:06:34,663 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:06:34,664 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:06:34,664 INFO L85 PathProgramCache]: Analyzing trace with hash 296831538, now seen corresponding path program 1 times [2022-04-27 13:06:34,664 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:06:34,664 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1181053577] [2022-04-27 13:06:34,664 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:34,664 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:06:34,676 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:06:34,676 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [925064133] [2022-04-27 13:06:34,676 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:34,676 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:06:34,676 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:06:34,677 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:06:34,678 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:06:34,711 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:34,712 INFO L263 TraceCheckSpWp]: Trace formula consists of 131 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 13:06:34,719 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:34,720 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:06:34,844 INFO L272 TraceCheckUtils]: 0: Hoare triple {2441#true} call ULTIMATE.init(); {2441#true} is VALID [2022-04-27 13:06:34,844 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:06:34,844 INFO L290 TraceCheckUtils]: 2: Hoare triple {2441#true} assume true; {2441#true} is VALID [2022-04-27 13:06:34,844 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2441#true} {2441#true} #108#return; {2441#true} is VALID [2022-04-27 13:06:34,844 INFO L272 TraceCheckUtils]: 4: Hoare triple {2441#true} call #t~ret9 := main(); {2441#true} is VALID [2022-04-27 13:06:34,844 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:06:34,844 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:06:34,851 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:06:34,851 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:06:34,851 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:06:34,852 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:06:34,852 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:06:34,852 INFO L290 TraceCheckUtils]: 12: Hoare triple {2441#true} ~cond := #in~cond; {2441#true} is VALID [2022-04-27 13:06:34,852 INFO L290 TraceCheckUtils]: 13: Hoare triple {2441#true} assume !(0 == ~cond); {2441#true} is VALID [2022-04-27 13:06:34,852 INFO L290 TraceCheckUtils]: 14: Hoare triple {2441#true} assume true; {2441#true} is VALID [2022-04-27 13:06:34,853 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:06:34,853 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:06:34,853 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:06:34,853 INFO L290 TraceCheckUtils]: 18: Hoare triple {2497#(<= 1 main_~a~0)} assume !!(#t~post6 < 50);havoc #t~post6; {2497#(<= 1 main_~a~0)} is VALID [2022-04-27 13:06:34,854 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:06:34,854 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:06:34,854 INFO L290 TraceCheckUtils]: 21: Hoare triple {2507#(<= 1 main_~c~0)} assume !!(#t~post7 < 50);havoc #t~post7; {2507#(<= 1 main_~c~0)} is VALID [2022-04-27 13:06:34,855 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:06:34,855 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:06:34,855 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:06:34,855 INFO L290 TraceCheckUtils]: 25: Hoare triple {2520#(<= 1 main_~b~0)} assume !!(#t~post6 < 50);havoc #t~post6; {2520#(<= 1 main_~b~0)} is VALID [2022-04-27 13:06:34,856 INFO L290 TraceCheckUtils]: 26: Hoare triple {2520#(<= 1 main_~b~0)} assume !(0 != ~b~0); {2442#false} is VALID [2022-04-27 13:06:34,856 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:06:34,856 INFO L290 TraceCheckUtils]: 28: Hoare triple {2442#false} ~cond := #in~cond; {2442#false} is VALID [2022-04-27 13:06:34,856 INFO L290 TraceCheckUtils]: 29: Hoare triple {2442#false} assume 0 == ~cond; {2442#false} is VALID [2022-04-27 13:06:34,856 INFO L290 TraceCheckUtils]: 30: Hoare triple {2442#false} assume !false; {2442#false} is VALID [2022-04-27 13:06:34,856 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:06:34,856 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:06:35,042 INFO L290 TraceCheckUtils]: 30: Hoare triple {2442#false} assume !false; {2442#false} is VALID [2022-04-27 13:06:35,042 INFO L290 TraceCheckUtils]: 29: Hoare triple {2442#false} assume 0 == ~cond; {2442#false} is VALID [2022-04-27 13:06:35,042 INFO L290 TraceCheckUtils]: 28: Hoare triple {2442#false} ~cond := #in~cond; {2442#false} is VALID [2022-04-27 13:06:35,042 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:06:35,043 INFO L290 TraceCheckUtils]: 26: Hoare triple {2520#(<= 1 main_~b~0)} assume !(0 != ~b~0); {2442#false} is VALID [2022-04-27 13:06:35,043 INFO L290 TraceCheckUtils]: 25: Hoare triple {2520#(<= 1 main_~b~0)} assume !!(#t~post6 < 50);havoc #t~post6; {2520#(<= 1 main_~b~0)} is VALID [2022-04-27 13:06:35,043 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:06:35,043 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:06:35,044 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:06:35,044 INFO L290 TraceCheckUtils]: 21: Hoare triple {2507#(<= 1 main_~c~0)} assume !!(#t~post7 < 50);havoc #t~post7; {2507#(<= 1 main_~c~0)} is VALID [2022-04-27 13:06:35,044 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:06:35,044 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:06:35,045 INFO L290 TraceCheckUtils]: 18: Hoare triple {2497#(<= 1 main_~a~0)} assume !!(#t~post6 < 50);havoc #t~post6; {2497#(<= 1 main_~a~0)} is VALID [2022-04-27 13:06:35,045 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:06:35,045 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:06:35,050 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:06:35,050 INFO L290 TraceCheckUtils]: 14: Hoare triple {2441#true} assume true; {2441#true} is VALID [2022-04-27 13:06:35,050 INFO L290 TraceCheckUtils]: 13: Hoare triple {2441#true} assume !(0 == ~cond); {2441#true} is VALID [2022-04-27 13:06:35,050 INFO L290 TraceCheckUtils]: 12: Hoare triple {2441#true} ~cond := #in~cond; {2441#true} is VALID [2022-04-27 13:06:35,050 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:06:35,055 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:06:35,055 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:06:35,055 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:06:35,056 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:06:35,056 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:06:35,056 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:06:35,056 INFO L272 TraceCheckUtils]: 4: Hoare triple {2441#true} call #t~ret9 := main(); {2441#true} is VALID [2022-04-27 13:06:35,056 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2441#true} {2441#true} #108#return; {2441#true} is VALID [2022-04-27 13:06:35,056 INFO L290 TraceCheckUtils]: 2: Hoare triple {2441#true} assume true; {2441#true} is VALID [2022-04-27 13:06:35,056 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:06:35,056 INFO L272 TraceCheckUtils]: 0: Hoare triple {2441#true} call ULTIMATE.init(); {2441#true} is VALID [2022-04-27 13:06:35,056 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:06:35,056 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:06:35,057 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1181053577] [2022-04-27 13:06:35,057 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:06:35,057 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [925064133] [2022-04-27 13:06:35,057 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [925064133] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:06:35,057 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:06:35,057 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-27 13:06:35,057 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [322725761] [2022-04-27 13:06:35,057 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:06:35,057 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:06:35,058 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:06:35,058 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:06:35,077 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:06:35,077 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 13:06:35,077 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:06:35,077 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 13:06:35,077 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-27 13:06:35,077 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:06:35,922 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:35,922 INFO L93 Difference]: Finished difference Result 187 states and 265 transitions. [2022-04-27 13:06:35,922 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 13:06:35,922 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:06:35,922 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:06:35,922 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:06:35,924 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 155 transitions. [2022-04-27 13:06:35,925 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:06:35,927 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 155 transitions. [2022-04-27 13:06:35,927 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 155 transitions. [2022-04-27 13:06:36,043 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:06:36,048 INFO L225 Difference]: With dead ends: 187 [2022-04-27 13:06:36,048 INFO L226 Difference]: Without dead ends: 175 [2022-04-27 13:06:36,048 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:06:36,050 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:06:36,050 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:06:36,052 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 175 states. [2022-04-27 13:06:36,209 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 175 to 132. [2022-04-27 13:06:36,209 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:06:36,209 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:06:36,210 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:06:36,210 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:06:36,215 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:36,216 INFO L93 Difference]: Finished difference Result 175 states and 251 transitions. [2022-04-27 13:06:36,216 INFO L276 IsEmpty]: Start isEmpty. Operand 175 states and 251 transitions. [2022-04-27 13:06:36,216 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:36,216 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:36,217 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:06:36,217 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:06:36,222 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:36,222 INFO L93 Difference]: Finished difference Result 175 states and 251 transitions. [2022-04-27 13:06:36,223 INFO L276 IsEmpty]: Start isEmpty. Operand 175 states and 251 transitions. [2022-04-27 13:06:36,223 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:36,223 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:36,223 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:06:36,223 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:06:36,224 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:06:36,227 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 132 states to 132 states and 180 transitions. [2022-04-27 13:06:36,227 INFO L78 Accepts]: Start accepts. Automaton has 132 states and 180 transitions. Word has length 31 [2022-04-27 13:06:36,227 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:06:36,227 INFO L495 AbstractCegarLoop]: Abstraction has 132 states and 180 transitions. [2022-04-27 13:06:36,227 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:06:36,228 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 180 transitions. [2022-04-27 13:06:36,228 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-27 13:06:36,228 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:06:36,228 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:06:36,246 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-27 13:06:36,443 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:06:36,444 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:06:36,444 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:06:36,444 INFO L85 PathProgramCache]: Analyzing trace with hash 495607521, now seen corresponding path program 1 times [2022-04-27 13:06:36,444 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:06:36,444 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [304456467] [2022-04-27 13:06:36,444 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:36,444 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:06:36,458 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:06:36,458 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2027385232] [2022-04-27 13:06:36,458 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:36,458 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:06:36,459 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:06:36,459 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:06:36,460 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:06:36,492 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:36,493 INFO L263 TraceCheckSpWp]: Trace formula consists of 128 conjuncts, 18 conjunts are in the unsatisfiable core [2022-04-27 13:06:36,508 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:36,508 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:06:36,829 INFO L272 TraceCheckUtils]: 0: Hoare triple {3457#true} call ULTIMATE.init(); {3457#true} is VALID [2022-04-27 13:06:36,829 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:06:36,829 INFO L290 TraceCheckUtils]: 2: Hoare triple {3457#true} assume true; {3457#true} is VALID [2022-04-27 13:06:36,829 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3457#true} {3457#true} #108#return; {3457#true} is VALID [2022-04-27 13:06:36,829 INFO L272 TraceCheckUtils]: 4: Hoare triple {3457#true} call #t~ret9 := main(); {3457#true} is VALID [2022-04-27 13:06:36,829 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:06:36,829 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:06:36,829 INFO L290 TraceCheckUtils]: 7: Hoare triple {3457#true} ~cond := #in~cond; {3457#true} is VALID [2022-04-27 13:06:36,829 INFO L290 TraceCheckUtils]: 8: Hoare triple {3457#true} assume !(0 == ~cond); {3457#true} is VALID [2022-04-27 13:06:36,829 INFO L290 TraceCheckUtils]: 9: Hoare triple {3457#true} assume true; {3457#true} is VALID [2022-04-27 13:06:36,830 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3457#true} {3457#true} #94#return; {3457#true} is VALID [2022-04-27 13:06:36,830 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:06:36,837 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:06:36,837 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:06:36,838 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:06:36,838 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:06:36,838 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:06:36,839 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:06:36,839 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 < 50);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:06:36,840 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:06:36,840 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:06:36,840 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 < 50);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:06:36,841 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:06:36,841 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:06:36,842 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 < 50);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:06:36,842 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:06:36,842 INFO L290 TraceCheckUtils]: 26: Hoare triple {3457#true} ~cond := #in~cond; {3457#true} is VALID [2022-04-27 13:06:36,842 INFO L290 TraceCheckUtils]: 27: Hoare triple {3457#true} assume !(0 == ~cond); {3457#true} is VALID [2022-04-27 13:06:36,842 INFO L290 TraceCheckUtils]: 28: Hoare triple {3457#true} assume true; {3457#true} is VALID [2022-04-27 13:06:36,843 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:06:36,844 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:06:36,844 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:06:36,844 INFO L290 TraceCheckUtils]: 32: Hoare triple {3562#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3458#false} is VALID [2022-04-27 13:06:36,844 INFO L290 TraceCheckUtils]: 33: Hoare triple {3458#false} assume !false; {3458#false} is VALID [2022-04-27 13:06:36,845 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:06:36,845 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:06:36,845 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:06:36,845 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [304456467] [2022-04-27 13:06:36,845 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:06:36,845 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2027385232] [2022-04-27 13:06:36,845 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2027385232] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:06:36,845 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:06:36,845 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-27 13:06:36,845 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1491157885] [2022-04-27 13:06:36,845 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:06:36,845 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:06:36,846 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:06:36,846 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:06:36,869 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:06:36,869 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 13:06:36,869 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:06:36,869 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 13:06:36,869 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=70, Unknown=0, NotChecked=0, Total=90 [2022-04-27 13:06:36,870 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:06:37,610 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:37,610 INFO L93 Difference]: Finished difference Result 157 states and 210 transitions. [2022-04-27 13:06:37,610 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 13:06:37,610 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:06:37,610 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:06:37,610 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:06:37,612 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 93 transitions. [2022-04-27 13:06:37,613 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:06:37,614 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 93 transitions. [2022-04-27 13:06:37,614 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 93 transitions. [2022-04-27 13:06:37,690 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:06:37,692 INFO L225 Difference]: With dead ends: 157 [2022-04-27 13:06:37,692 INFO L226 Difference]: Without dead ends: 155 [2022-04-27 13:06:37,693 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:06:37,693 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:06:37,693 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:06:37,693 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 155 states. [2022-04-27 13:06:37,873 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 155 to 144. [2022-04-27 13:06:37,873 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:06:37,874 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:06:37,874 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:06:37,874 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:06:37,877 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:37,878 INFO L93 Difference]: Finished difference Result 155 states and 206 transitions. [2022-04-27 13:06:37,878 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 206 transitions. [2022-04-27 13:06:37,878 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:37,878 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:37,878 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:06:37,879 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:06:37,882 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:37,882 INFO L93 Difference]: Finished difference Result 155 states and 206 transitions. [2022-04-27 13:06:37,882 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 206 transitions. [2022-04-27 13:06:37,882 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:37,882 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:37,882 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:06:37,882 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:06:37,883 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:06:37,886 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 144 states to 144 states and 189 transitions. [2022-04-27 13:06:37,886 INFO L78 Accepts]: Start accepts. Automaton has 144 states and 189 transitions. Word has length 34 [2022-04-27 13:06:37,886 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:06:37,886 INFO L495 AbstractCegarLoop]: Abstraction has 144 states and 189 transitions. [2022-04-27 13:06:37,886 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:06:37,886 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 189 transitions. [2022-04-27 13:06:37,887 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-27 13:06:37,887 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:06:37,887 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:06:37,903 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:06:38,102 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:06:38,103 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:06:38,103 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:06:38,103 INFO L85 PathProgramCache]: Analyzing trace with hash 1581560821, now seen corresponding path program 1 times [2022-04-27 13:06:38,103 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:06:38,103 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2007812294] [2022-04-27 13:06:38,103 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:38,103 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:06:38,117 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:06:38,117 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2036862389] [2022-04-27 13:06:38,117 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:38,118 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:06:38,118 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:06:38,119 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:06:38,120 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:06:38,168 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:38,169 INFO L263 TraceCheckSpWp]: Trace formula consists of 149 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-27 13:06:38,175 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:38,176 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:06:38,412 INFO L272 TraceCheckUtils]: 0: Hoare triple {4310#true} call ULTIMATE.init(); {4310#true} is VALID [2022-04-27 13:06:38,412 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:06:38,412 INFO L290 TraceCheckUtils]: 2: Hoare triple {4310#true} assume true; {4310#true} is VALID [2022-04-27 13:06:38,412 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4310#true} {4310#true} #108#return; {4310#true} is VALID [2022-04-27 13:06:38,412 INFO L272 TraceCheckUtils]: 4: Hoare triple {4310#true} call #t~ret9 := main(); {4310#true} is VALID [2022-04-27 13:06:38,412 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:06:38,412 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:06:38,413 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:06:38,413 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:06:38,413 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:06:38,414 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:06:38,414 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:06:38,414 INFO L290 TraceCheckUtils]: 12: Hoare triple {4310#true} ~cond := #in~cond; {4310#true} is VALID [2022-04-27 13:06:38,414 INFO L290 TraceCheckUtils]: 13: Hoare triple {4310#true} assume !(0 == ~cond); {4310#true} is VALID [2022-04-27 13:06:38,414 INFO L290 TraceCheckUtils]: 14: Hoare triple {4310#true} assume true; {4310#true} is VALID [2022-04-27 13:06:38,414 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:06:38,415 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:06:38,415 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:06:38,416 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 < 50);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:06:38,416 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:06:38,417 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:06:38,417 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 < 50);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:06:38,417 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:06:38,418 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:06:38,418 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:06:38,419 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 < 50);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:06:38,419 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:06:38,419 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:06:38,419 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 < 50);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:06:38,420 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:06:38,420 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:06:38,420 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 < 50);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:06:38,421 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:06:38,421 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:06:38,422 INFO L290 TraceCheckUtils]: 34: Hoare triple {4420#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4311#false} is VALID [2022-04-27 13:06:38,422 INFO L290 TraceCheckUtils]: 35: Hoare triple {4311#false} assume !false; {4311#false} is VALID [2022-04-27 13:06:38,422 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:06:38,422 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:06:38,602 INFO L290 TraceCheckUtils]: 35: Hoare triple {4311#false} assume !false; {4311#false} is VALID [2022-04-27 13:06:38,602 INFO L290 TraceCheckUtils]: 34: Hoare triple {4420#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4311#false} is VALID [2022-04-27 13:06:38,603 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:06:38,603 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:06:38,604 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 < 50);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:06:38,604 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:06:38,604 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:06:38,604 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 < 50);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:06:38,605 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:06:38,605 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:06:38,605 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 < 50);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:06:38,606 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:06:38,606 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:06:38,606 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:06:38,607 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 < 50);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:06:38,607 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:06:38,607 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:06:38,608 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 < 50);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:06:38,608 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:06:38,609 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:06:38,609 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4310#true} {4310#true} #96#return; {4310#true} is VALID [2022-04-27 13:06:38,609 INFO L290 TraceCheckUtils]: 14: Hoare triple {4310#true} assume true; {4310#true} is VALID [2022-04-27 13:06:38,609 INFO L290 TraceCheckUtils]: 13: Hoare triple {4310#true} assume !(0 == ~cond); {4310#true} is VALID [2022-04-27 13:06:38,609 INFO L290 TraceCheckUtils]: 12: Hoare triple {4310#true} ~cond := #in~cond; {4310#true} is VALID [2022-04-27 13:06:38,609 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:06:38,609 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4310#true} {4310#true} #94#return; {4310#true} is VALID [2022-04-27 13:06:38,609 INFO L290 TraceCheckUtils]: 9: Hoare triple {4310#true} assume true; {4310#true} is VALID [2022-04-27 13:06:38,609 INFO L290 TraceCheckUtils]: 8: Hoare triple {4310#true} assume !(0 == ~cond); {4310#true} is VALID [2022-04-27 13:06:38,609 INFO L290 TraceCheckUtils]: 7: Hoare triple {4310#true} ~cond := #in~cond; {4310#true} is VALID [2022-04-27 13:06:38,609 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:06:38,609 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:06:38,610 INFO L272 TraceCheckUtils]: 4: Hoare triple {4310#true} call #t~ret9 := main(); {4310#true} is VALID [2022-04-27 13:06:38,610 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4310#true} {4310#true} #108#return; {4310#true} is VALID [2022-04-27 13:06:38,610 INFO L290 TraceCheckUtils]: 2: Hoare triple {4310#true} assume true; {4310#true} is VALID [2022-04-27 13:06:38,610 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:06:38,610 INFO L272 TraceCheckUtils]: 0: Hoare triple {4310#true} call ULTIMATE.init(); {4310#true} is VALID [2022-04-27 13:06:38,610 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:06:38,610 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:06:38,610 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2007812294] [2022-04-27 13:06:38,610 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:06:38,610 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2036862389] [2022-04-27 13:06:38,610 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2036862389] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:06:38,610 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:06:38,610 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 6] total 11 [2022-04-27 13:06:38,610 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [995950927] [2022-04-27 13:06:38,611 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:06:38,611 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:06:38,611 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:06:38,611 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:06:38,647 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:06:38,647 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-27 13:06:38,647 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:06:38,647 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-27 13:06:38,647 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-27 13:06:38,648 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:06:39,380 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:39,381 INFO L93 Difference]: Finished difference Result 179 states and 241 transitions. [2022-04-27 13:06:39,381 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 13:06:39,381 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:06:39,381 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:06:39,381 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:06:39,382 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 99 transitions. [2022-04-27 13:06:39,382 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:06:39,383 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 99 transitions. [2022-04-27 13:06:39,383 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 99 transitions. [2022-04-27 13:06:39,450 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:06:39,452 INFO L225 Difference]: With dead ends: 179 [2022-04-27 13:06:39,452 INFO L226 Difference]: Without dead ends: 177 [2022-04-27 13:06:39,453 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:06:39,453 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:06:39,453 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:06:39,454 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 177 states. [2022-04-27 13:06:39,636 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 177 to 174. [2022-04-27 13:06:39,636 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:06:39,636 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:06:39,636 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:06:39,637 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:06:39,640 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:39,640 INFO L93 Difference]: Finished difference Result 177 states and 239 transitions. [2022-04-27 13:06:39,640 INFO L276 IsEmpty]: Start isEmpty. Operand 177 states and 239 transitions. [2022-04-27 13:06:39,641 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:39,641 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:39,641 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:06:39,641 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:06:39,647 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:39,647 INFO L93 Difference]: Finished difference Result 177 states and 239 transitions. [2022-04-27 13:06:39,647 INFO L276 IsEmpty]: Start isEmpty. Operand 177 states and 239 transitions. [2022-04-27 13:06:39,647 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:39,647 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:39,647 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:06:39,647 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:06:39,648 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:06:39,651 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 174 states to 174 states and 236 transitions. [2022-04-27 13:06:39,652 INFO L78 Accepts]: Start accepts. Automaton has 174 states and 236 transitions. Word has length 36 [2022-04-27 13:06:39,652 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:06:39,652 INFO L495 AbstractCegarLoop]: Abstraction has 174 states and 236 transitions. [2022-04-27 13:06:39,652 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:06:39,652 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 236 transitions. [2022-04-27 13:06:39,652 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-27 13:06:39,652 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:06:39,652 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:06:39,670 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Ended with exit code 0 [2022-04-27 13:06:39,869 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:06:39,869 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:06:39,870 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:06:39,870 INFO L85 PathProgramCache]: Analyzing trace with hash -892181054, now seen corresponding path program 1 times [2022-04-27 13:06:39,870 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:06:39,870 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1724135897] [2022-04-27 13:06:39,870 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:39,870 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:06:39,881 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:06:39,881 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1350722589] [2022-04-27 13:06:39,881 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:39,881 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:06:39,881 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:06:39,883 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:06:39,884 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:06:39,917 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:39,918 INFO L263 TraceCheckSpWp]: Trace formula consists of 149 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 13:06:39,925 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:39,926 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:06:40,069 INFO L272 TraceCheckUtils]: 0: Hoare triple {5394#true} call ULTIMATE.init(); {5394#true} is VALID [2022-04-27 13:06:40,069 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:06:40,069 INFO L290 TraceCheckUtils]: 2: Hoare triple {5402#(<= ~counter~0 0)} assume true; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:40,070 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5402#(<= ~counter~0 0)} {5394#true} #108#return; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:40,070 INFO L272 TraceCheckUtils]: 4: Hoare triple {5402#(<= ~counter~0 0)} call #t~ret9 := main(); {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:40,070 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:06:40,071 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:06:40,072 INFO L290 TraceCheckUtils]: 7: Hoare triple {5402#(<= ~counter~0 0)} ~cond := #in~cond; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:40,072 INFO L290 TraceCheckUtils]: 8: Hoare triple {5402#(<= ~counter~0 0)} assume !(0 == ~cond); {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:40,076 INFO L290 TraceCheckUtils]: 9: Hoare triple {5402#(<= ~counter~0 0)} assume true; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:40,077 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:06:40,078 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:06:40,079 INFO L290 TraceCheckUtils]: 12: Hoare triple {5402#(<= ~counter~0 0)} ~cond := #in~cond; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:40,083 INFO L290 TraceCheckUtils]: 13: Hoare triple {5402#(<= ~counter~0 0)} assume !(0 == ~cond); {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:40,084 INFO L290 TraceCheckUtils]: 14: Hoare triple {5402#(<= ~counter~0 0)} assume true; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:40,084 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:06:40,084 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:06:40,087 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:06:40,087 INFO L290 TraceCheckUtils]: 18: Hoare triple {5451#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {5451#(<= ~counter~0 1)} is VALID [2022-04-27 13:06:40,087 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:06:40,088 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:06:40,089 INFO L290 TraceCheckUtils]: 21: Hoare triple {5461#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {5461#(<= ~counter~0 2)} is VALID [2022-04-27 13:06:40,090 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:06:40,090 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:06:40,090 INFO L290 TraceCheckUtils]: 24: Hoare triple {5471#(<= |main_#t~post8| 2)} assume !(#t~post8 < 50);havoc #t~post8; {5395#false} is VALID [2022-04-27 13:06:40,091 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:06:40,091 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:06:40,091 INFO L290 TraceCheckUtils]: 27: Hoare triple {5395#false} assume !(#t~post7 < 50);havoc #t~post7; {5395#false} is VALID [2022-04-27 13:06:40,091 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:06:40,091 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:06:40,091 INFO L290 TraceCheckUtils]: 30: Hoare triple {5395#false} assume !!(#t~post6 < 50);havoc #t~post6; {5395#false} is VALID [2022-04-27 13:06:40,091 INFO L290 TraceCheckUtils]: 31: Hoare triple {5395#false} assume !(0 != ~b~0); {5395#false} is VALID [2022-04-27 13:06:40,091 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:06:40,091 INFO L290 TraceCheckUtils]: 33: Hoare triple {5395#false} ~cond := #in~cond; {5395#false} is VALID [2022-04-27 13:06:40,091 INFO L290 TraceCheckUtils]: 34: Hoare triple {5395#false} assume 0 == ~cond; {5395#false} is VALID [2022-04-27 13:06:40,091 INFO L290 TraceCheckUtils]: 35: Hoare triple {5395#false} assume !false; {5395#false} is VALID [2022-04-27 13:06:40,091 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:06:40,091 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:06:40,091 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:06:40,091 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1724135897] [2022-04-27 13:06:40,091 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:06:40,091 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1350722589] [2022-04-27 13:06:40,092 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1350722589] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:06:40,092 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:06:40,092 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 13:06:40,092 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [614512272] [2022-04-27 13:06:40,092 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:06:40,092 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:06:40,092 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:06:40,092 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:06:40,114 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:06:40,114 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 13:06:40,114 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:06:40,114 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 13:06:40,114 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-27 13:06:40,114 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:06:40,391 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:40,391 INFO L93 Difference]: Finished difference Result 241 states and 329 transitions. [2022-04-27 13:06:40,392 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 13:06:40,392 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:06:40,392 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:06:40,392 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:06:40,393 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 88 transitions. [2022-04-27 13:06:40,393 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:06:40,394 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 88 transitions. [2022-04-27 13:06:40,394 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 88 transitions. [2022-04-27 13:06:40,453 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:06:40,456 INFO L225 Difference]: With dead ends: 241 [2022-04-27 13:06:40,456 INFO L226 Difference]: Without dead ends: 174 [2022-04-27 13:06:40,458 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:06:40,459 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:06:40,460 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:06:40,460 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 174 states. [2022-04-27 13:06:40,660 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 174 to 174. [2022-04-27 13:06:40,660 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:06:40,660 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:06:40,660 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:06:40,661 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:06:40,664 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:40,664 INFO L93 Difference]: Finished difference Result 174 states and 235 transitions. [2022-04-27 13:06:40,664 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 235 transitions. [2022-04-27 13:06:40,664 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:40,664 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:40,664 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:06:40,665 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:06:40,667 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:40,667 INFO L93 Difference]: Finished difference Result 174 states and 235 transitions. [2022-04-27 13:06:40,667 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 235 transitions. [2022-04-27 13:06:40,668 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:40,668 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:40,668 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:06:40,668 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:06:40,668 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:06:40,671 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 174 states to 174 states and 235 transitions. [2022-04-27 13:06:40,671 INFO L78 Accepts]: Start accepts. Automaton has 174 states and 235 transitions. Word has length 36 [2022-04-27 13:06:40,671 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:06:40,671 INFO L495 AbstractCegarLoop]: Abstraction has 174 states and 235 transitions. [2022-04-27 13:06:40,671 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:06:40,671 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 235 transitions. [2022-04-27 13:06:40,671 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-27 13:06:40,671 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:06:40,672 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:06:40,690 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:06:40,885 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:06:40,885 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:06:40,886 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:06:40,886 INFO L85 PathProgramCache]: Analyzing trace with hash -957710478, now seen corresponding path program 1 times [2022-04-27 13:06:40,886 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:06:40,886 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1388329020] [2022-04-27 13:06:40,886 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:40,886 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:06:40,896 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:06:40,896 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [485816473] [2022-04-27 13:06:40,896 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:40,896 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:06:40,896 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:06:40,897 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:06:40,900 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:06:40,934 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:40,935 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 13:06:40,941 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:40,941 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:06:43,059 INFO L272 TraceCheckUtils]: 0: Hoare triple {6441#true} call ULTIMATE.init(); {6441#true} is VALID [2022-04-27 13:06:43,059 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:06:43,059 INFO L290 TraceCheckUtils]: 2: Hoare triple {6441#true} assume true; {6441#true} is VALID [2022-04-27 13:06:43,059 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6441#true} {6441#true} #108#return; {6441#true} is VALID [2022-04-27 13:06:43,059 INFO L272 TraceCheckUtils]: 4: Hoare triple {6441#true} call #t~ret9 := main(); {6441#true} is VALID [2022-04-27 13:06:43,059 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:06:43,059 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:06:43,059 INFO L290 TraceCheckUtils]: 7: Hoare triple {6441#true} ~cond := #in~cond; {6441#true} is VALID [2022-04-27 13:06:43,059 INFO L290 TraceCheckUtils]: 8: Hoare triple {6441#true} assume !(0 == ~cond); {6441#true} is VALID [2022-04-27 13:06:43,059 INFO L290 TraceCheckUtils]: 9: Hoare triple {6441#true} assume true; {6441#true} is VALID [2022-04-27 13:06:43,059 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6441#true} {6441#true} #94#return; {6441#true} is VALID [2022-04-27 13:06:43,059 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:06:43,059 INFO L290 TraceCheckUtils]: 12: Hoare triple {6441#true} ~cond := #in~cond; {6441#true} is VALID [2022-04-27 13:06:43,059 INFO L290 TraceCheckUtils]: 13: Hoare triple {6441#true} assume !(0 == ~cond); {6441#true} is VALID [2022-04-27 13:06:43,059 INFO L290 TraceCheckUtils]: 14: Hoare triple {6441#true} assume true; {6441#true} is VALID [2022-04-27 13:06:43,060 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {6441#true} {6441#true} #96#return; {6441#true} is VALID [2022-04-27 13:06:43,060 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:06:43,060 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:06:43,060 INFO L290 TraceCheckUtils]: 18: Hoare triple {6441#true} assume !!(#t~post6 < 50);havoc #t~post6; {6441#true} is VALID [2022-04-27 13:06:43,060 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:06:43,060 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:06:43,060 INFO L290 TraceCheckUtils]: 21: Hoare triple {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-27 13:06:43,061 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:06:43,061 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:06:43,061 INFO L290 TraceCheckUtils]: 24: Hoare triple {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(#t~post8 < 50);havoc #t~post8; {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-27 13:06:43,061 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:06:43,061 INFO L290 TraceCheckUtils]: 26: Hoare triple {6441#true} ~cond := #in~cond; {6441#true} is VALID [2022-04-27 13:06:43,061 INFO L290 TraceCheckUtils]: 27: Hoare triple {6441#true} assume !(0 == ~cond); {6441#true} is VALID [2022-04-27 13:06:43,062 INFO L290 TraceCheckUtils]: 28: Hoare triple {6441#true} assume true; {6441#true} is VALID [2022-04-27 13:06:43,062 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:06:43,062 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:06:43,062 INFO L290 TraceCheckUtils]: 31: Hoare triple {6441#true} ~cond := #in~cond; {6441#true} is VALID [2022-04-27 13:06:43,062 INFO L290 TraceCheckUtils]: 32: Hoare triple {6441#true} assume !(0 == ~cond); {6441#true} is VALID [2022-04-27 13:06:43,062 INFO L290 TraceCheckUtils]: 33: Hoare triple {6441#true} assume true; {6441#true} is VALID [2022-04-27 13:06:43,063 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:06:43,063 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:06:43,063 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:06:43,064 INFO L290 TraceCheckUtils]: 37: Hoare triple {6556#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6442#false} is VALID [2022-04-27 13:06:43,064 INFO L290 TraceCheckUtils]: 38: Hoare triple {6442#false} assume !false; {6442#false} is VALID [2022-04-27 13:06:43,064 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:06:43,064 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:06:43,064 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:06:43,064 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1388329020] [2022-04-27 13:06:43,064 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:06:43,064 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [485816473] [2022-04-27 13:06:43,064 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [485816473] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:06:43,064 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:06:43,064 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 13:06:43,064 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1951332334] [2022-04-27 13:06:43,064 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:06:43,065 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:06:43,065 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:06:43,065 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:06:43,109 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:06:43,109 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:06:43,109 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:06:43,110 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:06:43,110 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 13:06:43,110 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:06:43,528 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:43,528 INFO L93 Difference]: Finished difference Result 239 states and 335 transitions. [2022-04-27 13:06:43,528 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:06:43,528 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:06:43,528 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:06:43,528 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:06:43,529 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-27 13:06:43,529 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:06:43,530 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-27 13:06:43,530 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 70 transitions. [2022-04-27 13:06:43,580 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:06:43,586 INFO L225 Difference]: With dead ends: 239 [2022-04-27 13:06:43,586 INFO L226 Difference]: Without dead ends: 237 [2022-04-27 13:06:43,586 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:06:43,587 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:06:43,587 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:06:43,587 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 237 states. [2022-04-27 13:06:43,858 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 237 to 230. [2022-04-27 13:06:43,858 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:06:43,858 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:06:43,858 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:06:43,859 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:06:43,863 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:43,863 INFO L93 Difference]: Finished difference Result 237 states and 331 transitions. [2022-04-27 13:06:43,863 INFO L276 IsEmpty]: Start isEmpty. Operand 237 states and 331 transitions. [2022-04-27 13:06:43,864 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:43,864 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:43,864 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:06:43,864 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:06:43,870 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:43,870 INFO L93 Difference]: Finished difference Result 237 states and 331 transitions. [2022-04-27 13:06:43,871 INFO L276 IsEmpty]: Start isEmpty. Operand 237 states and 331 transitions. [2022-04-27 13:06:43,871 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:43,871 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:43,871 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:06:43,871 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:06:43,871 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:06:43,876 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 230 states to 230 states and 324 transitions. [2022-04-27 13:06:43,876 INFO L78 Accepts]: Start accepts. Automaton has 230 states and 324 transitions. Word has length 39 [2022-04-27 13:06:43,876 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:06:43,876 INFO L495 AbstractCegarLoop]: Abstraction has 230 states and 324 transitions. [2022-04-27 13:06:43,876 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:06:43,876 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 324 transitions. [2022-04-27 13:06:43,876 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-27 13:06:43,876 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:06:43,877 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:06:43,892 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:06:44,092 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:06:44,092 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:06:44,093 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:06:44,093 INFO L85 PathProgramCache]: Analyzing trace with hash 409018142, now seen corresponding path program 1 times [2022-04-27 13:06:44,093 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:06:44,093 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [911556966] [2022-04-27 13:06:44,093 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:44,093 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:06:44,104 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:06:44,104 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1735380183] [2022-04-27 13:06:44,104 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:44,104 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:06:44,104 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:06:44,105 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:06:44,106 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:06:44,140 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:44,145 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 31 conjunts are in the unsatisfiable core [2022-04-27 13:06:44,153 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:44,153 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:06:48,425 INFO L272 TraceCheckUtils]: 0: Hoare triple {7713#true} call ULTIMATE.init(); {7713#true} is VALID [2022-04-27 13:06:48,425 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:06:48,425 INFO L290 TraceCheckUtils]: 2: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:06:48,425 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7713#true} {7713#true} #108#return; {7713#true} is VALID [2022-04-27 13:06:48,425 INFO L272 TraceCheckUtils]: 4: Hoare triple {7713#true} call #t~ret9 := main(); {7713#true} is VALID [2022-04-27 13:06:48,425 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:06:48,425 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:06:48,425 INFO L290 TraceCheckUtils]: 7: Hoare triple {7713#true} ~cond := #in~cond; {7713#true} is VALID [2022-04-27 13:06:48,425 INFO L290 TraceCheckUtils]: 8: Hoare triple {7713#true} assume !(0 == ~cond); {7713#true} is VALID [2022-04-27 13:06:48,425 INFO L290 TraceCheckUtils]: 9: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:06:48,425 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7713#true} {7713#true} #94#return; {7713#true} is VALID [2022-04-27 13:06:48,425 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:06:48,425 INFO L290 TraceCheckUtils]: 12: Hoare triple {7713#true} ~cond := #in~cond; {7713#true} is VALID [2022-04-27 13:06:48,425 INFO L290 TraceCheckUtils]: 13: Hoare triple {7713#true} assume !(0 == ~cond); {7713#true} is VALID [2022-04-27 13:06:48,426 INFO L290 TraceCheckUtils]: 14: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:06:48,426 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7713#true} {7713#true} #96#return; {7713#true} is VALID [2022-04-27 13:06:48,426 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:06:48,426 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:06:48,427 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 < 50);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:06:48,427 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:06:48,427 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:06:48,428 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 < 50);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:06:48,428 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:06:48,428 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:06:48,429 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:06:48,429 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 < 50);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:06:48,429 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:06:48,430 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:06:48,430 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 < 50);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:06:48,430 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:06:48,431 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:06:48,431 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 < 50);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:06:48,431 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:06:48,431 INFO L290 TraceCheckUtils]: 33: Hoare triple {7713#true} ~cond := #in~cond; {7713#true} is VALID [2022-04-27 13:06:48,431 INFO L290 TraceCheckUtils]: 34: Hoare triple {7713#true} assume !(0 == ~cond); {7713#true} is VALID [2022-04-27 13:06:48,431 INFO L290 TraceCheckUtils]: 35: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:06:48,432 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:06:48,432 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:06:48,432 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:06:48,433 INFO L290 TraceCheckUtils]: 39: Hoare triple {7836#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7714#false} is VALID [2022-04-27 13:06:48,433 INFO L290 TraceCheckUtils]: 40: Hoare triple {7714#false} assume !false; {7714#false} is VALID [2022-04-27 13:06:48,433 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:06:48,433 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:06:48,595 INFO L290 TraceCheckUtils]: 40: Hoare triple {7714#false} assume !false; {7714#false} is VALID [2022-04-27 13:06:48,595 INFO L290 TraceCheckUtils]: 39: Hoare triple {7836#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7714#false} is VALID [2022-04-27 13:06:48,596 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:06:48,596 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:06:48,597 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:06:48,597 INFO L290 TraceCheckUtils]: 35: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:06:48,597 INFO L290 TraceCheckUtils]: 34: Hoare triple {7713#true} assume !(0 == ~cond); {7713#true} is VALID [2022-04-27 13:06:48,597 INFO L290 TraceCheckUtils]: 33: Hoare triple {7713#true} ~cond := #in~cond; {7713#true} is VALID [2022-04-27 13:06:48,597 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:06:48,598 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 < 50);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:06:48,598 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:06:48,598 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:06:48,599 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 < 50);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:06:48,599 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:06:48,599 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:06:48,599 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 < 50);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:06:48,600 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:06:50,601 WARN 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 UNKNOWN [2022-04-27 13:06:50,602 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:06:50,602 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 < 50);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:06:50,602 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:06:50,603 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:06:50,603 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 < 50);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:06:50,604 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:06:50,604 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:06:50,604 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7713#true} {7713#true} #96#return; {7713#true} is VALID [2022-04-27 13:06:50,604 INFO L290 TraceCheckUtils]: 14: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:06:50,604 INFO L290 TraceCheckUtils]: 13: Hoare triple {7713#true} assume !(0 == ~cond); {7713#true} is VALID [2022-04-27 13:06:50,604 INFO L290 TraceCheckUtils]: 12: Hoare triple {7713#true} ~cond := #in~cond; {7713#true} is VALID [2022-04-27 13:06:50,604 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:06:50,604 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7713#true} {7713#true} #94#return; {7713#true} is VALID [2022-04-27 13:06:50,604 INFO L290 TraceCheckUtils]: 9: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:06:50,604 INFO L290 TraceCheckUtils]: 8: Hoare triple {7713#true} assume !(0 == ~cond); {7713#true} is VALID [2022-04-27 13:06:50,604 INFO L290 TraceCheckUtils]: 7: Hoare triple {7713#true} ~cond := #in~cond; {7713#true} is VALID [2022-04-27 13:06:50,604 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:06:50,604 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:06:50,604 INFO L272 TraceCheckUtils]: 4: Hoare triple {7713#true} call #t~ret9 := main(); {7713#true} is VALID [2022-04-27 13:06:50,605 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7713#true} {7713#true} #108#return; {7713#true} is VALID [2022-04-27 13:06:50,605 INFO L290 TraceCheckUtils]: 2: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:06:50,605 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:06:50,605 INFO L272 TraceCheckUtils]: 0: Hoare triple {7713#true} call ULTIMATE.init(); {7713#true} is VALID [2022-04-27 13:06:50,605 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:06:50,605 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:06:50,605 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [911556966] [2022-04-27 13:06:50,605 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:06:50,605 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1735380183] [2022-04-27 13:06:50,605 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1735380183] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:06:50,605 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:06:50,605 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 10 [2022-04-27 13:06:50,605 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [227991884] [2022-04-27 13:06:50,605 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:06:50,606 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:06:50,606 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:06:50,606 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:06:50,688 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:06:50,688 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 13:06:50,688 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:06:50,688 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 13:06:50,688 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=70, Unknown=0, NotChecked=0, Total=90 [2022-04-27 13:06:50,688 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:06:52,691 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:52,691 INFO L93 Difference]: Finished difference Result 392 states and 578 transitions. [2022-04-27 13:06:52,691 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-27 13:06:52,692 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:06:52,692 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:06:52,692 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:06:52,694 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 252 transitions. [2022-04-27 13:06:52,694 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:06:52,696 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 252 transitions. [2022-04-27 13:06:52,696 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 252 transitions. [2022-04-27 13:06:53,334 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:06:53,342 INFO L225 Difference]: With dead ends: 392 [2022-04-27 13:06:53,343 INFO L226 Difference]: Without dead ends: 390 [2022-04-27 13:06:53,343 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:06:53,343 INFO L413 NwaCegarLoop]: 66 mSDtfsCounter, 157 mSDsluCounter, 268 mSDsCounter, 0 mSdLazyCounter, 346 mSolverCounterSat, 89 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s 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:06:53,343 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:06:53,344 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 390 states. [2022-04-27 13:06:53,767 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 390 to 377. [2022-04-27 13:06:53,768 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:06:53,768 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:06:53,769 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:06:53,769 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:06:53,778 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:53,778 INFO L93 Difference]: Finished difference Result 390 states and 576 transitions. [2022-04-27 13:06:53,778 INFO L276 IsEmpty]: Start isEmpty. Operand 390 states and 576 transitions. [2022-04-27 13:06:53,779 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:53,779 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:53,779 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:06:53,780 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:06:53,789 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:53,789 INFO L93 Difference]: Finished difference Result 390 states and 576 transitions. [2022-04-27 13:06:53,789 INFO L276 IsEmpty]: Start isEmpty. Operand 390 states and 576 transitions. [2022-04-27 13:06:53,790 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:53,790 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:53,790 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:06:53,790 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:06:53,791 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:06:53,801 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 377 states to 377 states and 563 transitions. [2022-04-27 13:06:53,801 INFO L78 Accepts]: Start accepts. Automaton has 377 states and 563 transitions. Word has length 41 [2022-04-27 13:06:53,801 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:06:53,801 INFO L495 AbstractCegarLoop]: Abstraction has 377 states and 563 transitions. [2022-04-27 13:06:53,801 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:06:53,801 INFO L276 IsEmpty]: Start isEmpty. Operand 377 states and 563 transitions. [2022-04-27 13:06:53,801 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-27 13:06:53,801 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:06:53,802 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:06:53,818 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:06:54,007 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:06:54,007 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:06:54,008 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:06:54,008 INFO L85 PathProgramCache]: Analyzing trace with hash -1943393983, now seen corresponding path program 1 times [2022-04-27 13:06:54,008 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:06:54,008 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [870540124] [2022-04-27 13:06:54,008 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:54,008 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:06:54,020 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:06:54,020 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [884916805] [2022-04-27 13:06:54,020 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:54,021 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:06:54,021 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:06:54,021 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:06:54,022 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:06:54,055 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:54,055 INFO L263 TraceCheckSpWp]: Trace formula consists of 146 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 13:06:54,062 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:54,063 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:06:54,173 INFO L272 TraceCheckUtils]: 0: Hoare triple {9884#true} call ULTIMATE.init(); {9884#true} is VALID [2022-04-27 13:06:54,173 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:06:54,173 INFO L290 TraceCheckUtils]: 2: Hoare triple {9884#true} assume true; {9884#true} is VALID [2022-04-27 13:06:54,173 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9884#true} {9884#true} #108#return; {9884#true} is VALID [2022-04-27 13:06:54,173 INFO L272 TraceCheckUtils]: 4: Hoare triple {9884#true} call #t~ret9 := main(); {9884#true} is VALID [2022-04-27 13:06:54,173 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:06:54,173 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:06:54,173 INFO L290 TraceCheckUtils]: 7: Hoare triple {9884#true} ~cond := #in~cond; {9884#true} is VALID [2022-04-27 13:06:54,173 INFO L290 TraceCheckUtils]: 8: Hoare triple {9884#true} assume !(0 == ~cond); {9884#true} is VALID [2022-04-27 13:06:54,173 INFO L290 TraceCheckUtils]: 9: Hoare triple {9884#true} assume true; {9884#true} is VALID [2022-04-27 13:06:54,173 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9884#true} {9884#true} #94#return; {9884#true} is VALID [2022-04-27 13:06:54,174 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:06:54,174 INFO L290 TraceCheckUtils]: 12: Hoare triple {9884#true} ~cond := #in~cond; {9884#true} is VALID [2022-04-27 13:06:54,174 INFO L290 TraceCheckUtils]: 13: Hoare triple {9884#true} assume !(0 == ~cond); {9884#true} is VALID [2022-04-27 13:06:54,174 INFO L290 TraceCheckUtils]: 14: Hoare triple {9884#true} assume true; {9884#true} is VALID [2022-04-27 13:06:54,174 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {9884#true} {9884#true} #96#return; {9884#true} is VALID [2022-04-27 13:06:54,174 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:06:54,174 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:06:54,174 INFO L290 TraceCheckUtils]: 18: Hoare triple {9884#true} assume !!(#t~post6 < 50);havoc #t~post6; {9884#true} is VALID [2022-04-27 13:06:54,174 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:06:54,174 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:06:54,174 INFO L290 TraceCheckUtils]: 21: Hoare triple {9884#true} assume !!(#t~post7 < 50);havoc #t~post7; {9884#true} is VALID [2022-04-27 13:06:54,182 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:06:54,183 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:06:54,183 INFO L290 TraceCheckUtils]: 24: Hoare triple {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-27 13:06:54,183 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:06:54,183 INFO L290 TraceCheckUtils]: 26: Hoare triple {9884#true} ~cond := #in~cond; {9884#true} is VALID [2022-04-27 13:06:54,183 INFO L290 TraceCheckUtils]: 27: Hoare triple {9884#true} assume !(0 == ~cond); {9884#true} is VALID [2022-04-27 13:06:54,183 INFO L290 TraceCheckUtils]: 28: Hoare triple {9884#true} assume true; {9884#true} is VALID [2022-04-27 13:06:54,184 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:06:54,184 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:06:54,184 INFO L290 TraceCheckUtils]: 31: Hoare triple {9884#true} ~cond := #in~cond; {9884#true} is VALID [2022-04-27 13:06:54,184 INFO L290 TraceCheckUtils]: 32: Hoare triple {9884#true} assume !(0 == ~cond); {9884#true} is VALID [2022-04-27 13:06:54,184 INFO L290 TraceCheckUtils]: 33: Hoare triple {9884#true} assume true; {9884#true} is VALID [2022-04-27 13:06:54,184 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:06:54,184 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:06:54,184 INFO L290 TraceCheckUtils]: 36: Hoare triple {9884#true} ~cond := #in~cond; {9884#true} is VALID [2022-04-27 13:06:54,184 INFO L290 TraceCheckUtils]: 37: Hoare triple {9884#true} assume !(0 == ~cond); {9884#true} is VALID [2022-04-27 13:06:54,185 INFO L290 TraceCheckUtils]: 38: Hoare triple {9884#true} assume true; {9884#true} is VALID [2022-04-27 13:06:54,185 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:06:54,185 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:06:54,186 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:06:54,186 INFO L290 TraceCheckUtils]: 42: Hoare triple {10014#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {9885#false} is VALID [2022-04-27 13:06:54,186 INFO L290 TraceCheckUtils]: 43: Hoare triple {9885#false} assume !false; {9885#false} is VALID [2022-04-27 13:06:54,186 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:06:54,186 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:06:54,186 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:06:54,186 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [870540124] [2022-04-27 13:06:54,186 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:06:54,186 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [884916805] [2022-04-27 13:06:54,187 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [884916805] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:06:54,187 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:06:54,187 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 13:06:54,187 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1874264347] [2022-04-27 13:06:54,187 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:06:54,187 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:06:54,187 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:06:54,187 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:06:54,213 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:06:54,213 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:06:54,213 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:06:54,214 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:06:54,214 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 13:06:54,214 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:06:55,131 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:55,131 INFO L93 Difference]: Finished difference Result 566 states and 887 transitions. [2022-04-27 13:06:55,131 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:06:55,131 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:06:55,131 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:06:55,131 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:06:55,132 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-27 13:06:55,132 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:06:55,133 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-27 13:06:55,133 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 70 transitions. [2022-04-27 13:06:55,187 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:06:55,203 INFO L225 Difference]: With dead ends: 566 [2022-04-27 13:06:55,203 INFO L226 Difference]: Without dead ends: 564 [2022-04-27 13:06:55,203 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:06:55,203 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:06:55,204 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:06:55,204 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 564 states. [2022-04-27 13:06:55,857 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 564 to 495. [2022-04-27 13:06:55,857 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:06:55,858 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:06:55,858 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:06:55,859 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:06:55,875 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:55,875 INFO L93 Difference]: Finished difference Result 564 states and 884 transitions. [2022-04-27 13:06:55,876 INFO L276 IsEmpty]: Start isEmpty. Operand 564 states and 884 transitions. [2022-04-27 13:06:55,877 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:55,877 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:55,878 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:06:55,879 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:06:55,896 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:55,896 INFO L93 Difference]: Finished difference Result 564 states and 884 transitions. [2022-04-27 13:06:55,897 INFO L276 IsEmpty]: Start isEmpty. Operand 564 states and 884 transitions. [2022-04-27 13:06:55,898 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:55,898 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:55,898 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:06:55,898 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:06:55,899 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:06:55,917 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 495 states to 495 states and 774 transitions. [2022-04-27 13:06:55,917 INFO L78 Accepts]: Start accepts. Automaton has 495 states and 774 transitions. Word has length 44 [2022-04-27 13:06:55,917 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:06:55,917 INFO L495 AbstractCegarLoop]: Abstraction has 495 states and 774 transitions. [2022-04-27 13:06:55,917 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:06:55,917 INFO L276 IsEmpty]: Start isEmpty. Operand 495 states and 774 transitions. [2022-04-27 13:06:55,918 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-27 13:06:55,918 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:06:55,918 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:06:55,935 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-04-27 13:06:56,133 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:06:56,134 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:06:56,134 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:06:56,134 INFO L85 PathProgramCache]: Analyzing trace with hash -1018638220, now seen corresponding path program 1 times [2022-04-27 13:06:56,134 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:06:56,134 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1455328897] [2022-04-27 13:06:56,134 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:56,134 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:06:56,153 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:06:56,154 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [966157613] [2022-04-27 13:06:56,154 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:56,154 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:06:56,154 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:06:56,158 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:06:56,159 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:06:56,197 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:56,198 INFO L263 TraceCheckSpWp]: Trace formula consists of 187 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-27 13:06:56,206 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:56,207 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:06:56,377 INFO L272 TraceCheckUtils]: 0: Hoare triple {12762#true} call ULTIMATE.init(); {12762#true} is VALID [2022-04-27 13:06:56,378 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:06:56,378 INFO L290 TraceCheckUtils]: 2: Hoare triple {12770#(<= ~counter~0 0)} assume true; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:56,378 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12770#(<= ~counter~0 0)} {12762#true} #108#return; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:56,378 INFO L272 TraceCheckUtils]: 4: Hoare triple {12770#(<= ~counter~0 0)} call #t~ret9 := main(); {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:56,379 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:06:56,379 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:06:56,379 INFO L290 TraceCheckUtils]: 7: Hoare triple {12770#(<= ~counter~0 0)} ~cond := #in~cond; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:56,379 INFO L290 TraceCheckUtils]: 8: Hoare triple {12770#(<= ~counter~0 0)} assume !(0 == ~cond); {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:56,380 INFO L290 TraceCheckUtils]: 9: Hoare triple {12770#(<= ~counter~0 0)} assume true; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:56,380 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:06:56,381 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:06:56,381 INFO L290 TraceCheckUtils]: 12: Hoare triple {12770#(<= ~counter~0 0)} ~cond := #in~cond; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:56,381 INFO L290 TraceCheckUtils]: 13: Hoare triple {12770#(<= ~counter~0 0)} assume !(0 == ~cond); {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:56,382 INFO L290 TraceCheckUtils]: 14: Hoare triple {12770#(<= ~counter~0 0)} assume true; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:06:56,382 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:06:56,382 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:06:56,386 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:06:56,386 INFO L290 TraceCheckUtils]: 18: Hoare triple {12819#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {12819#(<= ~counter~0 1)} is VALID [2022-04-27 13:06:56,386 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:06:56,387 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:06:56,387 INFO L290 TraceCheckUtils]: 21: Hoare triple {12829#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {12829#(<= ~counter~0 2)} is VALID [2022-04-27 13:06:56,387 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:06:56,392 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:06:56,393 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:06:56,393 INFO L290 TraceCheckUtils]: 25: Hoare triple {12842#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {12842#(<= ~counter~0 3)} is VALID [2022-04-27 13:06:56,393 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:06:56,393 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:06:56,394 INFO L290 TraceCheckUtils]: 28: Hoare triple {12852#(<= |main_#t~post7| 3)} assume !(#t~post7 < 50);havoc #t~post7; {12763#false} is VALID [2022-04-27 13:06:56,394 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:06:56,394 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:06:56,394 INFO L290 TraceCheckUtils]: 31: Hoare triple {12763#false} assume !!(#t~post6 < 50);havoc #t~post6; {12763#false} is VALID [2022-04-27 13:06:56,394 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:06:56,394 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:06:56,394 INFO L290 TraceCheckUtils]: 34: Hoare triple {12763#false} assume !(#t~post7 < 50);havoc #t~post7; {12763#false} is VALID [2022-04-27 13:06:56,394 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:06:56,394 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:06:56,394 INFO L290 TraceCheckUtils]: 37: Hoare triple {12763#false} assume !(#t~post6 < 50);havoc #t~post6; {12763#false} is VALID [2022-04-27 13:06:56,394 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:06:56,394 INFO L290 TraceCheckUtils]: 39: Hoare triple {12763#false} ~cond := #in~cond; {12763#false} is VALID [2022-04-27 13:06:56,394 INFO L290 TraceCheckUtils]: 40: Hoare triple {12763#false} assume 0 == ~cond; {12763#false} is VALID [2022-04-27 13:06:56,394 INFO L290 TraceCheckUtils]: 41: Hoare triple {12763#false} assume !false; {12763#false} is VALID [2022-04-27 13:06:56,395 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:06:56,395 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:06:56,591 INFO L290 TraceCheckUtils]: 41: Hoare triple {12763#false} assume !false; {12763#false} is VALID [2022-04-27 13:06:56,591 INFO L290 TraceCheckUtils]: 40: Hoare triple {12763#false} assume 0 == ~cond; {12763#false} is VALID [2022-04-27 13:06:56,591 INFO L290 TraceCheckUtils]: 39: Hoare triple {12763#false} ~cond := #in~cond; {12763#false} is VALID [2022-04-27 13:06:56,591 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:06:56,591 INFO L290 TraceCheckUtils]: 37: Hoare triple {12763#false} assume !(#t~post6 < 50);havoc #t~post6; {12763#false} is VALID [2022-04-27 13:06:56,591 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:06:56,592 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:06:56,592 INFO L290 TraceCheckUtils]: 34: Hoare triple {12763#false} assume !(#t~post7 < 50);havoc #t~post7; {12763#false} is VALID [2022-04-27 13:06:56,592 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:06:56,592 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:06:56,592 INFO L290 TraceCheckUtils]: 31: Hoare triple {12763#false} assume !!(#t~post6 < 50);havoc #t~post6; {12763#false} is VALID [2022-04-27 13:06:56,592 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:06:56,592 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:06:56,592 INFO L290 TraceCheckUtils]: 28: Hoare triple {12934#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {12763#false} is VALID [2022-04-27 13:06:56,592 INFO L290 TraceCheckUtils]: 27: Hoare triple {12938#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12934#(< |main_#t~post7| 50)} is VALID [2022-04-27 13:06:56,593 INFO L290 TraceCheckUtils]: 26: Hoare triple {12938#(< ~counter~0 50)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12938#(< ~counter~0 50)} is VALID [2022-04-27 13:06:56,593 INFO L290 TraceCheckUtils]: 25: Hoare triple {12938#(< ~counter~0 50)} assume !!(#t~post6 < 50);havoc #t~post6; {12938#(< ~counter~0 50)} is VALID [2022-04-27 13:06:56,593 INFO L290 TraceCheckUtils]: 24: Hoare triple {12948#(< ~counter~0 49)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12938#(< ~counter~0 50)} is VALID [2022-04-27 13:06:56,594 INFO L290 TraceCheckUtils]: 23: Hoare triple {12948#(< ~counter~0 49)} ~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 49)} is VALID [2022-04-27 13:06:56,594 INFO L290 TraceCheckUtils]: 22: Hoare triple {12948#(< ~counter~0 49)} assume !(~c~0 >= ~b~0); {12948#(< ~counter~0 49)} is VALID [2022-04-27 13:06:56,594 INFO L290 TraceCheckUtils]: 21: Hoare triple {12948#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {12948#(< ~counter~0 49)} is VALID [2022-04-27 13:06:56,594 INFO L290 TraceCheckUtils]: 20: Hoare triple {12961#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12948#(< ~counter~0 49)} is VALID [2022-04-27 13:06:56,595 INFO L290 TraceCheckUtils]: 19: Hoare triple {12961#(< ~counter~0 48)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12961#(< ~counter~0 48)} is VALID [2022-04-27 13:06:56,595 INFO L290 TraceCheckUtils]: 18: Hoare triple {12961#(< ~counter~0 48)} assume !!(#t~post6 < 50);havoc #t~post6; {12961#(< ~counter~0 48)} is VALID [2022-04-27 13:06:56,595 INFO L290 TraceCheckUtils]: 17: Hoare triple {12971#(< ~counter~0 47)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12961#(< ~counter~0 48)} is VALID [2022-04-27 13:06:56,596 INFO L290 TraceCheckUtils]: 16: Hoare triple {12971#(< ~counter~0 47)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {12971#(< ~counter~0 47)} is VALID [2022-04-27 13:06:56,596 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {12762#true} {12971#(< ~counter~0 47)} #96#return; {12971#(< ~counter~0 47)} is VALID [2022-04-27 13:06:56,596 INFO L290 TraceCheckUtils]: 14: Hoare triple {12762#true} assume true; {12762#true} is VALID [2022-04-27 13:06:56,596 INFO L290 TraceCheckUtils]: 13: Hoare triple {12762#true} assume !(0 == ~cond); {12762#true} is VALID [2022-04-27 13:06:56,596 INFO L290 TraceCheckUtils]: 12: Hoare triple {12762#true} ~cond := #in~cond; {12762#true} is VALID [2022-04-27 13:06:56,596 INFO L272 TraceCheckUtils]: 11: Hoare triple {12971#(< ~counter~0 47)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12762#true} is VALID [2022-04-27 13:06:56,596 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12762#true} {12971#(< ~counter~0 47)} #94#return; {12971#(< ~counter~0 47)} is VALID [2022-04-27 13:06:56,597 INFO L290 TraceCheckUtils]: 9: Hoare triple {12762#true} assume true; {12762#true} is VALID [2022-04-27 13:06:56,597 INFO L290 TraceCheckUtils]: 8: Hoare triple {12762#true} assume !(0 == ~cond); {12762#true} is VALID [2022-04-27 13:06:56,597 INFO L290 TraceCheckUtils]: 7: Hoare triple {12762#true} ~cond := #in~cond; {12762#true} is VALID [2022-04-27 13:06:56,597 INFO L272 TraceCheckUtils]: 6: Hoare triple {12971#(< ~counter~0 47)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {12762#true} is VALID [2022-04-27 13:06:56,597 INFO L290 TraceCheckUtils]: 5: Hoare triple {12971#(< ~counter~0 47)} 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 47)} is VALID [2022-04-27 13:06:56,597 INFO L272 TraceCheckUtils]: 4: Hoare triple {12971#(< ~counter~0 47)} call #t~ret9 := main(); {12971#(< ~counter~0 47)} is VALID [2022-04-27 13:06:56,597 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12971#(< ~counter~0 47)} {12762#true} #108#return; {12971#(< ~counter~0 47)} is VALID [2022-04-27 13:06:56,598 INFO L290 TraceCheckUtils]: 2: Hoare triple {12971#(< ~counter~0 47)} assume true; {12971#(< ~counter~0 47)} is VALID [2022-04-27 13:06:56,598 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 47)} is VALID [2022-04-27 13:06:56,598 INFO L272 TraceCheckUtils]: 0: Hoare triple {12762#true} call ULTIMATE.init(); {12762#true} is VALID [2022-04-27 13:06:56,598 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:06:56,598 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:06:56,598 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1455328897] [2022-04-27 13:06:56,599 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:06:56,599 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [966157613] [2022-04-27 13:06:56,599 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [966157613] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:06:56,599 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:06:56,599 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-27 13:06:56,599 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1680846428] [2022-04-27 13:06:56,599 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:06:56,599 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:06:56,599 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:06:56,600 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:06:56,635 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:06:56,635 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-27 13:06:56,635 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:06:56,635 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-27 13:06:56,635 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-27 13:06:56,635 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:06:58,412 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:58,413 INFO L93 Difference]: Finished difference Result 1127 states and 1721 transitions. [2022-04-27 13:06:58,413 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-27 13:06:58,413 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:06:58,413 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:06:58,413 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:06:58,415 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 224 transitions. [2022-04-27 13:06:58,415 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:06:58,417 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 224 transitions. [2022-04-27 13:06:58,417 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 224 transitions. [2022-04-27 13:06:58,663 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:06:58,692 INFO L225 Difference]: With dead ends: 1127 [2022-04-27 13:06:58,692 INFO L226 Difference]: Without dead ends: 770 [2022-04-27 13:06:58,693 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 88 GetRequests, 73 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 23 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=93, Invalid=179, Unknown=0, NotChecked=0, Total=272 [2022-04-27 13:06:58,694 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:06:58,694 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:06:58,695 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 770 states. [2022-04-27 13:06:59,717 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 770 to 736. [2022-04-27 13:06:59,717 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:06:59,718 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:06:59,719 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:06:59,719 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:06:59,745 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:59,745 INFO L93 Difference]: Finished difference Result 770 states and 1118 transitions. [2022-04-27 13:06:59,745 INFO L276 IsEmpty]: Start isEmpty. Operand 770 states and 1118 transitions. [2022-04-27 13:06:59,747 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:59,747 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:59,748 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:06:59,749 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:06:59,774 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:59,774 INFO L93 Difference]: Finished difference Result 770 states and 1118 transitions. [2022-04-27 13:06:59,774 INFO L276 IsEmpty]: Start isEmpty. Operand 770 states and 1118 transitions. [2022-04-27 13:06:59,776 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:59,776 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:59,776 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:06:59,776 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:06:59,777 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:06:59,806 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 736 states to 736 states and 1085 transitions. [2022-04-27 13:06:59,806 INFO L78 Accepts]: Start accepts. Automaton has 736 states and 1085 transitions. Word has length 42 [2022-04-27 13:06:59,807 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:06:59,807 INFO L495 AbstractCegarLoop]: Abstraction has 736 states and 1085 transitions. [2022-04-27 13:06:59,807 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:06:59,807 INFO L276 IsEmpty]: Start isEmpty. Operand 736 states and 1085 transitions. [2022-04-27 13:06:59,807 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-27 13:06:59,807 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:06:59,807 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:06:59,825 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Ended with exit code 0 [2022-04-27 13:07:00,023 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:07:00,024 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:07:00,024 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:07:00,024 INFO L85 PathProgramCache]: Analyzing trace with hash -2064241646, now seen corresponding path program 1 times [2022-04-27 13:07:00,024 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:07:00,024 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [395008228] [2022-04-27 13:07:00,024 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:07:00,024 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:07:00,040 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:07:00,042 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1519736778] [2022-04-27 13:07:00,042 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:07:00,042 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:07:00,042 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:07:00,043 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:07:00,044 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:07:00,077 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:07:00,078 INFO L263 TraceCheckSpWp]: Trace formula consists of 178 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-27 13:07:00,089 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:07:00,090 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:07:00,284 INFO L272 TraceCheckUtils]: 0: Hoare triple {17410#true} call ULTIMATE.init(); {17410#true} is VALID [2022-04-27 13:07:00,285 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:07:00,285 INFO L290 TraceCheckUtils]: 2: Hoare triple {17418#(<= ~counter~0 0)} assume true; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:07:00,285 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17418#(<= ~counter~0 0)} {17410#true} #108#return; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:07:00,285 INFO L272 TraceCheckUtils]: 4: Hoare triple {17418#(<= ~counter~0 0)} call #t~ret9 := main(); {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:07:00,286 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:07:00,286 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:07:00,286 INFO L290 TraceCheckUtils]: 7: Hoare triple {17418#(<= ~counter~0 0)} ~cond := #in~cond; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:07:00,286 INFO L290 TraceCheckUtils]: 8: Hoare triple {17418#(<= ~counter~0 0)} assume !(0 == ~cond); {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:07:00,287 INFO L290 TraceCheckUtils]: 9: Hoare triple {17418#(<= ~counter~0 0)} assume true; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:07:00,287 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:07:00,287 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:07:00,288 INFO L290 TraceCheckUtils]: 12: Hoare triple {17418#(<= ~counter~0 0)} ~cond := #in~cond; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:07:00,288 INFO L290 TraceCheckUtils]: 13: Hoare triple {17418#(<= ~counter~0 0)} assume !(0 == ~cond); {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:07:00,288 INFO L290 TraceCheckUtils]: 14: Hoare triple {17418#(<= ~counter~0 0)} assume true; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:07:00,288 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:07:00,288 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:07:00,289 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:07:00,289 INFO L290 TraceCheckUtils]: 18: Hoare triple {17467#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {17467#(<= ~counter~0 1)} is VALID [2022-04-27 13:07:00,290 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:07:00,290 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:07:00,290 INFO L290 TraceCheckUtils]: 21: Hoare triple {17477#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {17477#(<= ~counter~0 2)} is VALID [2022-04-27 13:07:00,290 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:07:00,291 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:07:00,291 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:07:00,291 INFO L290 TraceCheckUtils]: 25: Hoare triple {17490#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {17490#(<= ~counter~0 3)} is VALID [2022-04-27 13:07:00,291 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:07:00,292 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:07:00,292 INFO L290 TraceCheckUtils]: 28: Hoare triple {17500#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {17500#(<= ~counter~0 4)} is VALID [2022-04-27 13:07:00,292 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:07:00,293 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:07:00,293 INFO L290 TraceCheckUtils]: 31: Hoare triple {17510#(<= |main_#t~post8| 4)} assume !(#t~post8 < 50);havoc #t~post8; {17411#false} is VALID [2022-04-27 13:07:00,293 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:07:00,293 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:07:00,293 INFO L290 TraceCheckUtils]: 34: Hoare triple {17411#false} assume !!(#t~post7 < 50);havoc #t~post7; {17411#false} is VALID [2022-04-27 13:07:00,293 INFO L290 TraceCheckUtils]: 35: Hoare triple {17411#false} assume !(~c~0 >= ~b~0); {17411#false} is VALID [2022-04-27 13:07:00,293 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:07:00,293 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:07:00,293 INFO L290 TraceCheckUtils]: 38: Hoare triple {17411#false} assume !(#t~post6 < 50);havoc #t~post6; {17411#false} is VALID [2022-04-27 13:07:00,293 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:07:00,293 INFO L290 TraceCheckUtils]: 40: Hoare triple {17411#false} ~cond := #in~cond; {17411#false} is VALID [2022-04-27 13:07:00,293 INFO L290 TraceCheckUtils]: 41: Hoare triple {17411#false} assume 0 == ~cond; {17411#false} is VALID [2022-04-27 13:07:00,293 INFO L290 TraceCheckUtils]: 42: Hoare triple {17411#false} assume !false; {17411#false} is VALID [2022-04-27 13:07:00,294 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:07:00,294 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:07:00,522 INFO L290 TraceCheckUtils]: 42: Hoare triple {17411#false} assume !false; {17411#false} is VALID [2022-04-27 13:07:00,523 INFO L290 TraceCheckUtils]: 41: Hoare triple {17411#false} assume 0 == ~cond; {17411#false} is VALID [2022-04-27 13:07:00,523 INFO L290 TraceCheckUtils]: 40: Hoare triple {17411#false} ~cond := #in~cond; {17411#false} is VALID [2022-04-27 13:07:00,523 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:07:00,523 INFO L290 TraceCheckUtils]: 38: Hoare triple {17411#false} assume !(#t~post6 < 50);havoc #t~post6; {17411#false} is VALID [2022-04-27 13:07:00,523 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:07:00,523 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:07:00,523 INFO L290 TraceCheckUtils]: 35: Hoare triple {17411#false} assume !(~c~0 >= ~b~0); {17411#false} is VALID [2022-04-27 13:07:00,523 INFO L290 TraceCheckUtils]: 34: Hoare triple {17411#false} assume !!(#t~post7 < 50);havoc #t~post7; {17411#false} is VALID [2022-04-27 13:07:00,523 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:07:00,523 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:07:00,523 INFO L290 TraceCheckUtils]: 31: Hoare triple {17580#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {17411#false} is VALID [2022-04-27 13:07:00,524 INFO L290 TraceCheckUtils]: 30: Hoare triple {17584#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {17580#(< |main_#t~post8| 50)} is VALID [2022-04-27 13:07:00,524 INFO L290 TraceCheckUtils]: 29: Hoare triple {17584#(< ~counter~0 50)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {17584#(< ~counter~0 50)} is VALID [2022-04-27 13:07:00,524 INFO L290 TraceCheckUtils]: 28: Hoare triple {17584#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {17584#(< ~counter~0 50)} is VALID [2022-04-27 13:07:00,525 INFO L290 TraceCheckUtils]: 27: Hoare triple {17594#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {17584#(< ~counter~0 50)} is VALID [2022-04-27 13:07:00,525 INFO L290 TraceCheckUtils]: 26: Hoare triple {17594#(< ~counter~0 49)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17594#(< ~counter~0 49)} is VALID [2022-04-27 13:07:00,525 INFO L290 TraceCheckUtils]: 25: Hoare triple {17594#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {17594#(< ~counter~0 49)} is VALID [2022-04-27 13:07:00,525 INFO L290 TraceCheckUtils]: 24: Hoare triple {17604#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17594#(< ~counter~0 49)} is VALID [2022-04-27 13:07:00,526 INFO L290 TraceCheckUtils]: 23: Hoare triple {17604#(< ~counter~0 48)} ~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 48)} is VALID [2022-04-27 13:07:00,526 INFO L290 TraceCheckUtils]: 22: Hoare triple {17604#(< ~counter~0 48)} assume !(~c~0 >= ~b~0); {17604#(< ~counter~0 48)} is VALID [2022-04-27 13:07:00,526 INFO L290 TraceCheckUtils]: 21: Hoare triple {17604#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {17604#(< ~counter~0 48)} is VALID [2022-04-27 13:07:00,527 INFO L290 TraceCheckUtils]: 20: Hoare triple {17617#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {17604#(< ~counter~0 48)} is VALID [2022-04-27 13:07:00,527 INFO L290 TraceCheckUtils]: 19: Hoare triple {17617#(< ~counter~0 47)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17617#(< ~counter~0 47)} is VALID [2022-04-27 13:07:00,527 INFO L290 TraceCheckUtils]: 18: Hoare triple {17617#(< ~counter~0 47)} assume !!(#t~post6 < 50);havoc #t~post6; {17617#(< ~counter~0 47)} is VALID [2022-04-27 13:07:00,527 INFO L290 TraceCheckUtils]: 17: Hoare triple {17627#(< ~counter~0 46)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17617#(< ~counter~0 47)} is VALID [2022-04-27 13:07:00,528 INFO L290 TraceCheckUtils]: 16: Hoare triple {17627#(< ~counter~0 46)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {17627#(< ~counter~0 46)} is VALID [2022-04-27 13:07:00,528 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {17410#true} {17627#(< ~counter~0 46)} #96#return; {17627#(< ~counter~0 46)} is VALID [2022-04-27 13:07:00,528 INFO L290 TraceCheckUtils]: 14: Hoare triple {17410#true} assume true; {17410#true} is VALID [2022-04-27 13:07:00,528 INFO L290 TraceCheckUtils]: 13: Hoare triple {17410#true} assume !(0 == ~cond); {17410#true} is VALID [2022-04-27 13:07:00,528 INFO L290 TraceCheckUtils]: 12: Hoare triple {17410#true} ~cond := #in~cond; {17410#true} is VALID [2022-04-27 13:07:00,528 INFO L272 TraceCheckUtils]: 11: Hoare triple {17627#(< ~counter~0 46)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17410#true} is VALID [2022-04-27 13:07:00,528 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17410#true} {17627#(< ~counter~0 46)} #94#return; {17627#(< ~counter~0 46)} is VALID [2022-04-27 13:07:00,529 INFO L290 TraceCheckUtils]: 9: Hoare triple {17410#true} assume true; {17410#true} is VALID [2022-04-27 13:07:00,529 INFO L290 TraceCheckUtils]: 8: Hoare triple {17410#true} assume !(0 == ~cond); {17410#true} is VALID [2022-04-27 13:07:00,529 INFO L290 TraceCheckUtils]: 7: Hoare triple {17410#true} ~cond := #in~cond; {17410#true} is VALID [2022-04-27 13:07:00,529 INFO L272 TraceCheckUtils]: 6: Hoare triple {17627#(< ~counter~0 46)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17410#true} is VALID [2022-04-27 13:07:00,529 INFO L290 TraceCheckUtils]: 5: Hoare triple {17627#(< ~counter~0 46)} 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 46)} is VALID [2022-04-27 13:07:00,529 INFO L272 TraceCheckUtils]: 4: Hoare triple {17627#(< ~counter~0 46)} call #t~ret9 := main(); {17627#(< ~counter~0 46)} is VALID [2022-04-27 13:07:00,529 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17627#(< ~counter~0 46)} {17410#true} #108#return; {17627#(< ~counter~0 46)} is VALID [2022-04-27 13:07:00,530 INFO L290 TraceCheckUtils]: 2: Hoare triple {17627#(< ~counter~0 46)} assume true; {17627#(< ~counter~0 46)} is VALID [2022-04-27 13:07:00,530 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 46)} is VALID [2022-04-27 13:07:00,530 INFO L272 TraceCheckUtils]: 0: Hoare triple {17410#true} call ULTIMATE.init(); {17410#true} is VALID [2022-04-27 13:07:00,530 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:07:00,530 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:07:00,530 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [395008228] [2022-04-27 13:07:00,531 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:07:00,531 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1519736778] [2022-04-27 13:07:00,531 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1519736778] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:07:00,531 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:07:00,531 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-27 13:07:00,531 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [248761353] [2022-04-27 13:07:00,531 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:07:00,531 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:07:00,531 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:07:00,531 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:07:00,572 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:07:00,572 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-27 13:07:00,572 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:07:00,572 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-27 13:07:00,572 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-27 13:07:00,572 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:07:03,036 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:07:03,037 INFO L93 Difference]: Finished difference Result 1597 states and 2379 transitions. [2022-04-27 13:07:03,037 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-27 13:07:03,037 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:07:03,037 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:07:03,037 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:07:03,039 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 281 transitions. [2022-04-27 13:07:03,039 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:07:03,041 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 281 transitions. [2022-04-27 13:07:03,041 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 281 transitions. [2022-04-27 13:07:03,261 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:07:03,316 INFO L225 Difference]: With dead ends: 1597 [2022-04-27 13:07:03,316 INFO L226 Difference]: Without dead ends: 1119 [2022-04-27 13:07:03,317 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:07:03,317 INFO L413 NwaCegarLoop]: 75 mSDtfsCounter, 237 mSDsluCounter, 330 mSDsCounter, 0 mSdLazyCounter, 171 mSolverCounterSat, 108 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s 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.2s IncrementalHoareTripleChecker+Time [2022-04-27 13:07:03,317 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.2s Time] [2022-04-27 13:07:03,318 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1119 states. [2022-04-27 13:07:04,853 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1119 to 1072. [2022-04-27 13:07:04,853 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:07:04,855 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:07:04,856 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:07:04,856 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:07:04,899 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:07:04,899 INFO L93 Difference]: Finished difference Result 1119 states and 1584 transitions. [2022-04-27 13:07:04,899 INFO L276 IsEmpty]: Start isEmpty. Operand 1119 states and 1584 transitions. [2022-04-27 13:07:04,902 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:07:04,902 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:07:04,903 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:07:04,904 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:07:04,947 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:07:04,947 INFO L93 Difference]: Finished difference Result 1119 states and 1584 transitions. [2022-04-27 13:07:04,947 INFO L276 IsEmpty]: Start isEmpty. Operand 1119 states and 1584 transitions. [2022-04-27 13:07:04,950 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:07:04,950 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:07:04,950 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:07:04,950 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:07:04,952 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:07:05,003 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1072 states to 1072 states and 1543 transitions. [2022-04-27 13:07:05,004 INFO L78 Accepts]: Start accepts. Automaton has 1072 states and 1543 transitions. Word has length 43 [2022-04-27 13:07:05,004 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:07:05,004 INFO L495 AbstractCegarLoop]: Abstraction has 1072 states and 1543 transitions. [2022-04-27 13:07:05,005 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:07:05,005 INFO L276 IsEmpty]: Start isEmpty. Operand 1072 states and 1543 transitions. [2022-04-27 13:07:05,005 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-27 13:07:05,005 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:07:05,005 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:07:05,023 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:07:05,211 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:07:05,211 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:07:05,212 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:07:05,212 INFO L85 PathProgramCache]: Analyzing trace with hash 1262965884, now seen corresponding path program 2 times [2022-04-27 13:07:05,212 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:07:05,212 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1494660182] [2022-04-27 13:07:05,212 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:07:05,212 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:07:05,221 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:07:05,222 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1449190922] [2022-04-27 13:07:05,222 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 13:07:05,222 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:07:05,222 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:07:05,227 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:07:05,228 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:07:05,267 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 13:07:05,267 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:07:05,268 INFO L263 TraceCheckSpWp]: Trace formula consists of 189 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-27 13:07:05,275 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:07:05,276 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:07:05,397 INFO L272 TraceCheckUtils]: 0: Hoare triple {23972#true} call ULTIMATE.init(); {23972#true} is VALID [2022-04-27 13:07:05,398 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:07:05,398 INFO L290 TraceCheckUtils]: 2: Hoare triple {23972#true} assume true; {23972#true} is VALID [2022-04-27 13:07:05,398 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23972#true} {23972#true} #108#return; {23972#true} is VALID [2022-04-27 13:07:05,398 INFO L272 TraceCheckUtils]: 4: Hoare triple {23972#true} call #t~ret9 := main(); {23972#true} is VALID [2022-04-27 13:07:05,398 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:07:05,398 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:07:05,398 INFO L290 TraceCheckUtils]: 7: Hoare triple {23972#true} ~cond := #in~cond; {23972#true} is VALID [2022-04-27 13:07:05,398 INFO L290 TraceCheckUtils]: 8: Hoare triple {23972#true} assume !(0 == ~cond); {23972#true} is VALID [2022-04-27 13:07:05,398 INFO L290 TraceCheckUtils]: 9: Hoare triple {23972#true} assume true; {23972#true} is VALID [2022-04-27 13:07:05,398 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23972#true} {23972#true} #94#return; {23972#true} is VALID [2022-04-27 13:07:05,399 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:07:05,399 INFO L290 TraceCheckUtils]: 12: Hoare triple {23972#true} ~cond := #in~cond; {23972#true} is VALID [2022-04-27 13:07:05,399 INFO L290 TraceCheckUtils]: 13: Hoare triple {23972#true} assume !(0 == ~cond); {23972#true} is VALID [2022-04-27 13:07:05,399 INFO L290 TraceCheckUtils]: 14: Hoare triple {23972#true} assume true; {23972#true} is VALID [2022-04-27 13:07:05,399 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {23972#true} {23972#true} #96#return; {23972#true} is VALID [2022-04-27 13:07:05,399 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:07:05,399 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:07:05,399 INFO L290 TraceCheckUtils]: 18: Hoare triple {23972#true} assume !!(#t~post6 < 50);havoc #t~post6; {23972#true} is VALID [2022-04-27 13:07:05,399 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:07:05,399 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:07:05,399 INFO L290 TraceCheckUtils]: 21: Hoare triple {23972#true} assume !!(#t~post7 < 50);havoc #t~post7; {23972#true} is VALID [2022-04-27 13:07:05,400 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:07:05,400 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:07:05,401 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:07:05,401 INFO L290 TraceCheckUtils]: 25: Hoare triple {24047#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 50);havoc #t~post6; {24047#(< main_~b~0 main_~a~0)} is VALID [2022-04-27 13:07:05,401 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:07:05,401 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:07:05,402 INFO L290 TraceCheckUtils]: 28: Hoare triple {24057#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 50);havoc #t~post7; {24057#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 13:07:05,402 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:07:05,402 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:07:05,403 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:07:05,403 INFO L290 TraceCheckUtils]: 32: Hoare triple {23973#false} assume !!(#t~post6 < 50);havoc #t~post6; {23973#false} is VALID [2022-04-27 13:07:05,403 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:07:05,403 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:07:05,403 INFO L290 TraceCheckUtils]: 35: Hoare triple {23973#false} assume !!(#t~post7 < 50);havoc #t~post7; {23973#false} is VALID [2022-04-27 13:07:05,403 INFO L290 TraceCheckUtils]: 36: Hoare triple {23973#false} assume !(~c~0 >= ~b~0); {23973#false} is VALID [2022-04-27 13:07:05,403 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:07:05,403 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:07:05,403 INFO L290 TraceCheckUtils]: 39: Hoare triple {23973#false} assume !(#t~post6 < 50);havoc #t~post6; {23973#false} is VALID [2022-04-27 13:07:05,403 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:07:05,403 INFO L290 TraceCheckUtils]: 41: Hoare triple {23973#false} ~cond := #in~cond; {23973#false} is VALID [2022-04-27 13:07:05,403 INFO L290 TraceCheckUtils]: 42: Hoare triple {23973#false} assume 0 == ~cond; {23973#false} is VALID [2022-04-27 13:07:05,403 INFO L290 TraceCheckUtils]: 43: Hoare triple {23973#false} assume !false; {23973#false} is VALID [2022-04-27 13:07:05,403 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:07:05,403 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:07:05,404 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:07:05,404 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1494660182] [2022-04-27 13:07:05,404 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:07:05,404 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1449190922] [2022-04-27 13:07:05,404 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1449190922] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:07:05,404 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:07:05,404 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 13:07:05,404 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [763952594] [2022-04-27 13:07:05,404 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:07:05,404 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:07:05,404 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:07:05,405 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:07:05,430 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:07:05,430 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:07:05,430 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:07:05,430 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:07:05,430 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 13:07:05,430 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:07:07,857 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:07:07,858 INFO L93 Difference]: Finished difference Result 1700 states and 2539 transitions. [2022-04-27 13:07:07,858 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 13:07:07,858 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:07:07,858 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:07:07,858 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:07:07,859 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 124 transitions. [2022-04-27 13:07:07,859 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:07:07,860 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 124 transitions. [2022-04-27 13:07:07,860 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 124 transitions. [2022-04-27 13:07:07,943 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:07:08,013 INFO L225 Difference]: With dead ends: 1700 [2022-04-27 13:07:08,014 INFO L226 Difference]: Without dead ends: 1234 [2022-04-27 13:07:08,015 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:07:08,015 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:07:08,015 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:07:08,016 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1234 states. [2022-04-27 13:07:09,621 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1234 to 995. [2022-04-27 13:07:09,621 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:07:09,622 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:07:09,623 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:07:09,624 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:07:09,677 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:07:09,677 INFO L93 Difference]: Finished difference Result 1234 states and 1815 transitions. [2022-04-27 13:07:09,677 INFO L276 IsEmpty]: Start isEmpty. Operand 1234 states and 1815 transitions. [2022-04-27 13:07:09,680 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:07:09,681 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:07:09,683 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:07:09,684 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:07:09,738 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:07:09,738 INFO L93 Difference]: Finished difference Result 1234 states and 1815 transitions. [2022-04-27 13:07:09,738 INFO L276 IsEmpty]: Start isEmpty. Operand 1234 states and 1815 transitions. [2022-04-27 13:07:09,742 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:07:09,742 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:07:09,742 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:07:09,742 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:07:09,743 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:07:09,788 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 995 states to 995 states and 1408 transitions. [2022-04-27 13:07:09,788 INFO L78 Accepts]: Start accepts. Automaton has 995 states and 1408 transitions. Word has length 44 [2022-04-27 13:07:09,788 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:07:09,788 INFO L495 AbstractCegarLoop]: Abstraction has 995 states and 1408 transitions. [2022-04-27 13:07:09,789 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:07:09,789 INFO L276 IsEmpty]: Start isEmpty. Operand 995 states and 1408 transitions. [2022-04-27 13:07:09,789 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-27 13:07:09,789 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:07:09,789 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:07:09,814 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Ended with exit code 0 [2022-04-27 13:07:10,003 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:07:10,004 INFO L420 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:07:10,004 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:07:10,004 INFO L85 PathProgramCache]: Analyzing trace with hash 958119025, now seen corresponding path program 1 times [2022-04-27 13:07:10,004 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:07:10,004 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [510848466] [2022-04-27 13:07:10,004 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:07:10,004 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:07:10,028 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:07:10,028 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [477205048] [2022-04-27 13:07:10,028 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:07:10,028 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:07:10,028 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:07:10,030 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:07:10,032 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:07:10,069 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:07:10,070 INFO L263 TraceCheckSpWp]: Trace formula consists of 187 conjuncts, 57 conjunts are in the unsatisfiable core [2022-04-27 13:07:10,081 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:07:10,082 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:07:10,828 INFO L272 TraceCheckUtils]: 0: Hoare triple {30652#true} call ULTIMATE.init(); {30652#true} is VALID [2022-04-27 13:07:10,829 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:07:10,829 INFO L290 TraceCheckUtils]: 2: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:07:10,829 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {30652#true} {30652#true} #108#return; {30652#true} is VALID [2022-04-27 13:07:10,829 INFO L272 TraceCheckUtils]: 4: Hoare triple {30652#true} call #t~ret9 := main(); {30652#true} is VALID [2022-04-27 13:07:10,829 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:07:10,829 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:07:10,829 INFO L290 TraceCheckUtils]: 7: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:07:10,829 INFO L290 TraceCheckUtils]: 8: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:07:10,829 INFO L290 TraceCheckUtils]: 9: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:07:10,829 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {30652#true} {30652#true} #94#return; {30652#true} is VALID [2022-04-27 13:07:10,829 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:07:10,829 INFO L290 TraceCheckUtils]: 12: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:07:10,829 INFO L290 TraceCheckUtils]: 13: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:07:10,829 INFO L290 TraceCheckUtils]: 14: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:07:10,829 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {30652#true} {30652#true} #96#return; {30652#true} is VALID [2022-04-27 13:07:10,830 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:07:10,830 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:07:10,830 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 < 50);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:07:10,831 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:07:10,831 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:07:10,831 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 < 50);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:07:10,832 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:07:10,833 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:07:10,833 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 < 50);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:07:10,833 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:07:10,834 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:07:10,834 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:07:10,835 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:07:10,836 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:07:10,836 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:07:10,836 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:07:10,836 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:07:10,836 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:07:10,837 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:07:10,837 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:07:10,837 INFO L290 TraceCheckUtils]: 36: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:07:10,837 INFO L290 TraceCheckUtils]: 37: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:07:10,837 INFO L290 TraceCheckUtils]: 38: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:07:10,838 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:07:10,838 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:07:10,838 INFO L290 TraceCheckUtils]: 41: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:07:10,838 INFO L290 TraceCheckUtils]: 42: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:07:10,838 INFO L290 TraceCheckUtils]: 43: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:07:10,839 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:07:10,839 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:07:10,840 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:07:10,840 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:07:10,840 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 < 50);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:07:10,841 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:07:10,841 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:07:10,842 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:07:10,842 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 < 50);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:07:10,843 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:07:10,844 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:07:10,844 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:07:10,844 INFO L290 TraceCheckUtils]: 56: Hoare triple {30832#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {30653#false} is VALID [2022-04-27 13:07:10,844 INFO L290 TraceCheckUtils]: 57: Hoare triple {30653#false} assume !false; {30653#false} is VALID [2022-04-27 13:07:10,845 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:07:10,845 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:07:38,639 WARN L855 $PredicateComparison]: unable to prove that (let ((.cse0 (+ (* c_main_~q~0 c_main_~x~0) (* c_main_~s~0 c_main_~y~0)))) (or (not (= (+ (* c_main_~p~0 c_main_~x~0) (* c_main_~r~0 c_main_~y~0)) c_main_~a~0)) (not (= c_main_~b~0 .cse0)) (not (= (+ c_main_~c~0 (* (- 1) c_main_~v~0)) 0)) (= (let ((.cse1 (+ c_main_~d~0 c_main_~k~0))) (+ c_main_~b~0 (* (+ (* (- 1) (* c_main_~s~0 .cse1)) c_main_~r~0) c_main_~y~0) (* (+ (* (- 1) c_main_~q~0 .cse1) c_main_~p~0) c_main_~x~0))) .cse0))) is different from true [2022-04-27 13:08:07,502 INFO L290 TraceCheckUtils]: 57: Hoare triple {30653#false} assume !false; {30653#false} is VALID [2022-04-27 13:08:07,502 INFO L290 TraceCheckUtils]: 56: Hoare triple {30832#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {30653#false} is VALID [2022-04-27 13:08:07,502 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:08:07,503 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:08:07,504 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:08:07,504 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 < 50);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:08:07,505 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:08:07,636 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:08:07,637 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:08:07,637 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 < 50);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:08:07,638 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:08:07,827 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:08:07,828 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:08:07,828 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:08:07,828 INFO L290 TraceCheckUtils]: 43: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:08:07,829 INFO L290 TraceCheckUtils]: 42: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:08:07,829 INFO L290 TraceCheckUtils]: 41: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:08:07,829 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:08:07,829 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:08:07,829 INFO L290 TraceCheckUtils]: 38: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:08:07,830 INFO L290 TraceCheckUtils]: 37: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:08:07,830 INFO L290 TraceCheckUtils]: 36: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:08:07,830 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:08:07,848 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:08:07,848 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:08:07,849 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:08:07,849 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:08:07,849 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:08:07,850 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:08:07,850 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:08:07,850 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:08:07,851 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:08:07,851 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:08:07,851 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 < 50);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:08:07,852 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:08:07,853 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:08:07,854 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 < 50);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:08:07,855 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:08:07,856 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:08:07,856 INFO L290 TraceCheckUtils]: 18: Hoare triple {30652#true} assume !!(#t~post6 < 50);havoc #t~post6; {30652#true} is VALID [2022-04-27 13:08:07,856 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:08:07,856 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:08:07,856 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {30652#true} {30652#true} #96#return; {30652#true} is VALID [2022-04-27 13:08:07,856 INFO L290 TraceCheckUtils]: 14: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:08:07,856 INFO L290 TraceCheckUtils]: 13: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:08:07,856 INFO L290 TraceCheckUtils]: 12: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:08:07,856 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:08:07,856 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {30652#true} {30652#true} #94#return; {30652#true} is VALID [2022-04-27 13:08:07,856 INFO L290 TraceCheckUtils]: 9: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:08:07,856 INFO L290 TraceCheckUtils]: 8: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:08:07,856 INFO L290 TraceCheckUtils]: 7: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:08:07,856 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:08:07,856 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:08:07,856 INFO L272 TraceCheckUtils]: 4: Hoare triple {30652#true} call #t~ret9 := main(); {30652#true} is VALID [2022-04-27 13:08:07,856 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {30652#true} {30652#true} #108#return; {30652#true} is VALID [2022-04-27 13:08:07,856 INFO L290 TraceCheckUtils]: 2: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:08:07,856 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:08:07,857 INFO L272 TraceCheckUtils]: 0: Hoare triple {30652#true} call ULTIMATE.init(); {30652#true} is VALID [2022-04-27 13:08:07,857 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:08:07,857 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:08:07,857 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [510848466] [2022-04-27 13:08:07,857 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:08:07,857 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [477205048] [2022-04-27 13:08:07,857 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [477205048] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:08:07,857 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:08:07,857 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 21 [2022-04-27 13:08:07,857 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [126914522] [2022-04-27 13:08:07,857 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:08:07,858 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:08:07,858 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:08:07,858 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:08:08,041 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:08:08,041 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-04-27 13:08:08,041 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:08:08,041 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-04-27 13:08:08,041 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=67, Invalid=316, Unknown=1, NotChecked=36, Total=420 [2022-04-27 13:08:08,042 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:08:23,135 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:08:23,135 INFO L93 Difference]: Finished difference Result 1405 states and 2007 transitions. [2022-04-27 13:08:23,135 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2022-04-27 13:08:23,136 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:08:23,136 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:08:23,136 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:08:23,139 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 307 transitions. [2022-04-27 13:08:23,139 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:08:23,142 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 307 transitions. [2022-04-27 13:08:23,142 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 29 states and 307 transitions. [2022-04-27 13:08:30,421 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 307 edges. 306 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-27 13:08:30,504 INFO L225 Difference]: With dead ends: 1405 [2022-04-27 13:08:30,504 INFO L226 Difference]: Without dead ends: 1397 [2022-04-27 13:08:30,505 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 137 GetRequests, 95 SyntacticMatches, 4 SemanticMatches, 38 ConstructedPredicates, 1 IntricatePredicates, 0 DeprecatedPredicates, 275 ImplicationChecksByTransitivity, 6.1s TimeCoverageRelationStatistics Valid=251, Invalid=1234, Unknown=1, NotChecked=74, Total=1560 [2022-04-27 13:08:30,505 INFO L413 NwaCegarLoop]: 60 mSDtfsCounter, 165 mSDsluCounter, 564 mSDsCounter, 0 mSdLazyCounter, 1260 mSolverCounterSat, 233 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 6.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 182 SdHoareTripleChecker+Valid, 624 SdHoareTripleChecker+Invalid, 1670 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 233 IncrementalHoareTripleChecker+Valid, 1260 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 177 IncrementalHoareTripleChecker+Unchecked, 6.1s IncrementalHoareTripleChecker+Time [2022-04-27 13:08:30,505 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [182 Valid, 624 Invalid, 1670 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [233 Valid, 1260 Invalid, 0 Unknown, 177 Unchecked, 6.1s Time] [2022-04-27 13:08:30,506 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1397 states. [2022-04-27 13:08:32,448 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1397 to 1226. [2022-04-27 13:08:32,449 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:08:32,450 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1397 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:08:32,451 INFO L74 IsIncluded]: Start isIncluded. First operand 1397 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:08:32,452 INFO L87 Difference]: Start difference. First operand 1397 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:08:32,512 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:08:32,512 INFO L93 Difference]: Finished difference Result 1397 states and 1977 transitions. [2022-04-27 13:08:32,513 INFO L276 IsEmpty]: Start isEmpty. Operand 1397 states and 1977 transitions. [2022-04-27 13:08:32,516 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:08:32,516 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:08:32,517 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 1397 states. [2022-04-27 13:08:32,518 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 1397 states. [2022-04-27 13:08:32,577 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:08:32,577 INFO L93 Difference]: Finished difference Result 1397 states and 1977 transitions. [2022-04-27 13:08:32,577 INFO L276 IsEmpty]: Start isEmpty. Operand 1397 states and 1977 transitions. [2022-04-27 13:08:32,581 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:08:32,581 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:08:32,581 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:08:32,581 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:08:32,582 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:08:32,653 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1226 states to 1226 states and 1707 transitions. [2022-04-27 13:08:32,653 INFO L78 Accepts]: Start accepts. Automaton has 1226 states and 1707 transitions. Word has length 58 [2022-04-27 13:08:32,654 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:08:32,654 INFO L495 AbstractCegarLoop]: Abstraction has 1226 states and 1707 transitions. [2022-04-27 13:08:32,655 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:08:32,655 INFO L276 IsEmpty]: Start isEmpty. Operand 1226 states and 1707 transitions. [2022-04-27 13:08:32,655 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2022-04-27 13:08:32,655 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:08:32,655 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:08:32,671 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:08:32,871 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:08:32,871 INFO L420 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:08:32,871 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:08:32,871 INFO L85 PathProgramCache]: Analyzing trace with hash 1288112160, now seen corresponding path program 1 times [2022-04-27 13:08:32,871 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:08:32,871 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [820123501] [2022-04-27 13:08:32,872 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:08:32,872 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:08:32,886 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:08:32,886 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1773577339] [2022-04-27 13:08:32,886 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:08:32,886 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:08:32,886 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:08:32,887 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:08:32,889 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:08:32,933 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:08:32,934 INFO L263 TraceCheckSpWp]: Trace formula consists of 215 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-27 13:08:32,947 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:08:32,948 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:08:33,239 INFO L272 TraceCheckUtils]: 0: Hoare triple {37741#true} call ULTIMATE.init(); {37741#true} is VALID [2022-04-27 13:08:33,239 INFO L290 TraceCheckUtils]: 1: Hoare triple {37741#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; {37749#(<= ~counter~0 0)} is VALID [2022-04-27 13:08:33,239 INFO L290 TraceCheckUtils]: 2: Hoare triple {37749#(<= ~counter~0 0)} assume true; {37749#(<= ~counter~0 0)} is VALID [2022-04-27 13:08:33,240 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37749#(<= ~counter~0 0)} {37741#true} #108#return; {37749#(<= ~counter~0 0)} is VALID [2022-04-27 13:08:33,240 INFO L272 TraceCheckUtils]: 4: Hoare triple {37749#(<= ~counter~0 0)} call #t~ret9 := main(); {37749#(<= ~counter~0 0)} is VALID [2022-04-27 13:08:33,240 INFO L290 TraceCheckUtils]: 5: Hoare triple {37749#(<= ~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; {37749#(<= ~counter~0 0)} is VALID [2022-04-27 13:08:33,241 INFO L272 TraceCheckUtils]: 6: Hoare triple {37749#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {37749#(<= ~counter~0 0)} is VALID [2022-04-27 13:08:33,241 INFO L290 TraceCheckUtils]: 7: Hoare triple {37749#(<= ~counter~0 0)} ~cond := #in~cond; {37749#(<= ~counter~0 0)} is VALID [2022-04-27 13:08:33,241 INFO L290 TraceCheckUtils]: 8: Hoare triple {37749#(<= ~counter~0 0)} assume !(0 == ~cond); {37749#(<= ~counter~0 0)} is VALID [2022-04-27 13:08:33,241 INFO L290 TraceCheckUtils]: 9: Hoare triple {37749#(<= ~counter~0 0)} assume true; {37749#(<= ~counter~0 0)} is VALID [2022-04-27 13:08:33,242 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {37749#(<= ~counter~0 0)} {37749#(<= ~counter~0 0)} #94#return; {37749#(<= ~counter~0 0)} is VALID [2022-04-27 13:08:33,242 INFO L272 TraceCheckUtils]: 11: Hoare triple {37749#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {37749#(<= ~counter~0 0)} is VALID [2022-04-27 13:08:33,242 INFO L290 TraceCheckUtils]: 12: Hoare triple {37749#(<= ~counter~0 0)} ~cond := #in~cond; {37749#(<= ~counter~0 0)} is VALID [2022-04-27 13:08:33,242 INFO L290 TraceCheckUtils]: 13: Hoare triple {37749#(<= ~counter~0 0)} assume !(0 == ~cond); {37749#(<= ~counter~0 0)} is VALID [2022-04-27 13:08:33,243 INFO L290 TraceCheckUtils]: 14: Hoare triple {37749#(<= ~counter~0 0)} assume true; {37749#(<= ~counter~0 0)} is VALID [2022-04-27 13:08:33,243 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {37749#(<= ~counter~0 0)} {37749#(<= ~counter~0 0)} #96#return; {37749#(<= ~counter~0 0)} is VALID [2022-04-27 13:08:33,243 INFO L290 TraceCheckUtils]: 16: Hoare triple {37749#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {37749#(<= ~counter~0 0)} is VALID [2022-04-27 13:08:33,244 INFO L290 TraceCheckUtils]: 17: Hoare triple {37749#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {37798#(<= ~counter~0 1)} is VALID [2022-04-27 13:08:33,244 INFO L290 TraceCheckUtils]: 18: Hoare triple {37798#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {37798#(<= ~counter~0 1)} is VALID [2022-04-27 13:08:33,244 INFO L290 TraceCheckUtils]: 19: Hoare triple {37798#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37798#(<= ~counter~0 1)} is VALID [2022-04-27 13:08:33,245 INFO L290 TraceCheckUtils]: 20: Hoare triple {37798#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {37808#(<= ~counter~0 2)} is VALID [2022-04-27 13:08:33,245 INFO L290 TraceCheckUtils]: 21: Hoare triple {37808#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {37808#(<= ~counter~0 2)} is VALID [2022-04-27 13:08:33,245 INFO L290 TraceCheckUtils]: 22: Hoare triple {37808#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {37808#(<= ~counter~0 2)} is VALID [2022-04-27 13:08:33,246 INFO L290 TraceCheckUtils]: 23: Hoare triple {37808#(<= ~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; {37808#(<= ~counter~0 2)} is VALID [2022-04-27 13:08:33,246 INFO L290 TraceCheckUtils]: 24: Hoare triple {37808#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {37821#(<= ~counter~0 3)} is VALID [2022-04-27 13:08:33,246 INFO L290 TraceCheckUtils]: 25: Hoare triple {37821#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {37821#(<= ~counter~0 3)} is VALID [2022-04-27 13:08:33,246 INFO L290 TraceCheckUtils]: 26: Hoare triple {37821#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37821#(<= ~counter~0 3)} is VALID [2022-04-27 13:08:33,247 INFO L290 TraceCheckUtils]: 27: Hoare triple {37821#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {37831#(<= ~counter~0 4)} is VALID [2022-04-27 13:08:33,247 INFO L290 TraceCheckUtils]: 28: Hoare triple {37831#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {37831#(<= ~counter~0 4)} is VALID [2022-04-27 13:08:33,247 INFO L290 TraceCheckUtils]: 29: Hoare triple {37831#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37831#(<= ~counter~0 4)} is VALID [2022-04-27 13:08:33,248 INFO L290 TraceCheckUtils]: 30: Hoare triple {37831#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,248 INFO L290 TraceCheckUtils]: 31: Hoare triple {37841#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,249 INFO L272 TraceCheckUtils]: 32: Hoare triple {37841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,249 INFO L290 TraceCheckUtils]: 33: Hoare triple {37841#(<= ~counter~0 5)} ~cond := #in~cond; {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,249 INFO L290 TraceCheckUtils]: 34: Hoare triple {37841#(<= ~counter~0 5)} assume !(0 == ~cond); {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,249 INFO L290 TraceCheckUtils]: 35: Hoare triple {37841#(<= ~counter~0 5)} assume true; {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,250 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {37841#(<= ~counter~0 5)} {37841#(<= ~counter~0 5)} #98#return; {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,263 INFO L272 TraceCheckUtils]: 37: Hoare triple {37841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,264 INFO L290 TraceCheckUtils]: 38: Hoare triple {37841#(<= ~counter~0 5)} ~cond := #in~cond; {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,264 INFO L290 TraceCheckUtils]: 39: Hoare triple {37841#(<= ~counter~0 5)} assume !(0 == ~cond); {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,264 INFO L290 TraceCheckUtils]: 40: Hoare triple {37841#(<= ~counter~0 5)} assume true; {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,265 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {37841#(<= ~counter~0 5)} {37841#(<= ~counter~0 5)} #100#return; {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,265 INFO L272 TraceCheckUtils]: 42: Hoare triple {37841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,265 INFO L290 TraceCheckUtils]: 43: Hoare triple {37841#(<= ~counter~0 5)} ~cond := #in~cond; {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,266 INFO L290 TraceCheckUtils]: 44: Hoare triple {37841#(<= ~counter~0 5)} assume !(0 == ~cond); {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,266 INFO L290 TraceCheckUtils]: 45: Hoare triple {37841#(<= ~counter~0 5)} assume true; {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,266 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {37841#(<= ~counter~0 5)} {37841#(<= ~counter~0 5)} #102#return; {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,267 INFO L272 TraceCheckUtils]: 47: Hoare triple {37841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,267 INFO L290 TraceCheckUtils]: 48: Hoare triple {37841#(<= ~counter~0 5)} ~cond := #in~cond; {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,267 INFO L290 TraceCheckUtils]: 49: Hoare triple {37841#(<= ~counter~0 5)} assume !(0 == ~cond); {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,267 INFO L290 TraceCheckUtils]: 50: Hoare triple {37841#(<= ~counter~0 5)} assume true; {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,268 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {37841#(<= ~counter~0 5)} {37841#(<= ~counter~0 5)} #104#return; {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,268 INFO L290 TraceCheckUtils]: 52: Hoare triple {37841#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,268 INFO L290 TraceCheckUtils]: 53: Hoare triple {37841#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {37841#(<= ~counter~0 5)} is VALID [2022-04-27 13:08:33,269 INFO L290 TraceCheckUtils]: 54: Hoare triple {37841#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {37914#(<= ~counter~0 6)} is VALID [2022-04-27 13:08:33,269 INFO L290 TraceCheckUtils]: 55: Hoare triple {37914#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {37914#(<= ~counter~0 6)} is VALID [2022-04-27 13:08:33,270 INFO L290 TraceCheckUtils]: 56: Hoare triple {37914#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {37914#(<= ~counter~0 6)} is VALID [2022-04-27 13:08:33,270 INFO L290 TraceCheckUtils]: 57: Hoare triple {37914#(<= ~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; {37914#(<= ~counter~0 6)} is VALID [2022-04-27 13:08:33,270 INFO L290 TraceCheckUtils]: 58: Hoare triple {37914#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {37927#(<= |main_#t~post6| 6)} is VALID [2022-04-27 13:08:33,271 INFO L290 TraceCheckUtils]: 59: Hoare triple {37927#(<= |main_#t~post6| 6)} assume !(#t~post6 < 50);havoc #t~post6; {37742#false} is VALID [2022-04-27 13:08:33,271 INFO L272 TraceCheckUtils]: 60: Hoare triple {37742#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)); {37742#false} is VALID [2022-04-27 13:08:33,271 INFO L290 TraceCheckUtils]: 61: Hoare triple {37742#false} ~cond := #in~cond; {37742#false} is VALID [2022-04-27 13:08:33,271 INFO L290 TraceCheckUtils]: 62: Hoare triple {37742#false} assume 0 == ~cond; {37742#false} is VALID [2022-04-27 13:08:33,271 INFO L290 TraceCheckUtils]: 63: Hoare triple {37742#false} assume !false; {37742#false} is VALID [2022-04-27 13:08:33,271 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:08:33,271 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:08:33,584 INFO L290 TraceCheckUtils]: 63: Hoare triple {37742#false} assume !false; {37742#false} is VALID [2022-04-27 13:08:33,584 INFO L290 TraceCheckUtils]: 62: Hoare triple {37742#false} assume 0 == ~cond; {37742#false} is VALID [2022-04-27 13:08:33,584 INFO L290 TraceCheckUtils]: 61: Hoare triple {37742#false} ~cond := #in~cond; {37742#false} is VALID [2022-04-27 13:08:33,584 INFO L272 TraceCheckUtils]: 60: Hoare triple {37742#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)); {37742#false} is VALID [2022-04-27 13:08:33,584 INFO L290 TraceCheckUtils]: 59: Hoare triple {37955#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {37742#false} is VALID [2022-04-27 13:08:33,585 INFO L290 TraceCheckUtils]: 58: Hoare triple {37959#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {37955#(< |main_#t~post6| 50)} is VALID [2022-04-27 13:08:33,585 INFO L290 TraceCheckUtils]: 57: Hoare triple {37959#(< ~counter~0 50)} ~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; {37959#(< ~counter~0 50)} is VALID [2022-04-27 13:08:33,586 INFO L290 TraceCheckUtils]: 56: Hoare triple {37959#(< ~counter~0 50)} assume !(~c~0 >= ~b~0); {37959#(< ~counter~0 50)} is VALID [2022-04-27 13:08:33,586 INFO L290 TraceCheckUtils]: 55: Hoare triple {37959#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {37959#(< ~counter~0 50)} is VALID [2022-04-27 13:08:33,587 INFO L290 TraceCheckUtils]: 54: Hoare triple {37972#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {37959#(< ~counter~0 50)} is VALID [2022-04-27 13:08:33,587 INFO L290 TraceCheckUtils]: 53: Hoare triple {37972#(< ~counter~0 49)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {37972#(< ~counter~0 49)} is VALID [2022-04-27 13:08:33,587 INFO L290 TraceCheckUtils]: 52: Hoare triple {37972#(< ~counter~0 49)} assume !(~c~0 >= 2 * ~v~0); {37972#(< ~counter~0 49)} is VALID [2022-04-27 13:08:33,588 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {37741#true} {37972#(< ~counter~0 49)} #104#return; {37972#(< ~counter~0 49)} is VALID [2022-04-27 13:08:33,588 INFO L290 TraceCheckUtils]: 50: Hoare triple {37741#true} assume true; {37741#true} is VALID [2022-04-27 13:08:33,588 INFO L290 TraceCheckUtils]: 49: Hoare triple {37741#true} assume !(0 == ~cond); {37741#true} is VALID [2022-04-27 13:08:33,588 INFO L290 TraceCheckUtils]: 48: Hoare triple {37741#true} ~cond := #in~cond; {37741#true} is VALID [2022-04-27 13:08:33,588 INFO L272 TraceCheckUtils]: 47: Hoare triple {37972#(< ~counter~0 49)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {37741#true} is VALID [2022-04-27 13:08:33,588 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {37741#true} {37972#(< ~counter~0 49)} #102#return; {37972#(< ~counter~0 49)} is VALID [2022-04-27 13:08:33,588 INFO L290 TraceCheckUtils]: 45: Hoare triple {37741#true} assume true; {37741#true} is VALID [2022-04-27 13:08:33,589 INFO L290 TraceCheckUtils]: 44: Hoare triple {37741#true} assume !(0 == ~cond); {37741#true} is VALID [2022-04-27 13:08:33,589 INFO L290 TraceCheckUtils]: 43: Hoare triple {37741#true} ~cond := #in~cond; {37741#true} is VALID [2022-04-27 13:08:33,589 INFO L272 TraceCheckUtils]: 42: Hoare triple {37972#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {37741#true} is VALID [2022-04-27 13:08:33,589 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {37741#true} {37972#(< ~counter~0 49)} #100#return; {37972#(< ~counter~0 49)} is VALID [2022-04-27 13:08:33,589 INFO L290 TraceCheckUtils]: 40: Hoare triple {37741#true} assume true; {37741#true} is VALID [2022-04-27 13:08:33,589 INFO L290 TraceCheckUtils]: 39: Hoare triple {37741#true} assume !(0 == ~cond); {37741#true} is VALID [2022-04-27 13:08:33,589 INFO L290 TraceCheckUtils]: 38: Hoare triple {37741#true} ~cond := #in~cond; {37741#true} is VALID [2022-04-27 13:08:33,589 INFO L272 TraceCheckUtils]: 37: Hoare triple {37972#(< ~counter~0 49)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37741#true} is VALID [2022-04-27 13:08:33,590 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {37741#true} {37972#(< ~counter~0 49)} #98#return; {37972#(< ~counter~0 49)} is VALID [2022-04-27 13:08:33,590 INFO L290 TraceCheckUtils]: 35: Hoare triple {37741#true} assume true; {37741#true} is VALID [2022-04-27 13:08:33,590 INFO L290 TraceCheckUtils]: 34: Hoare triple {37741#true} assume !(0 == ~cond); {37741#true} is VALID [2022-04-27 13:08:33,590 INFO L290 TraceCheckUtils]: 33: Hoare triple {37741#true} ~cond := #in~cond; {37741#true} is VALID [2022-04-27 13:08:33,590 INFO L272 TraceCheckUtils]: 32: Hoare triple {37972#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37741#true} is VALID [2022-04-27 13:08:33,590 INFO L290 TraceCheckUtils]: 31: Hoare triple {37972#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {37972#(< ~counter~0 49)} is VALID [2022-04-27 13:08:33,591 INFO L290 TraceCheckUtils]: 30: Hoare triple {38045#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {37972#(< ~counter~0 49)} is VALID [2022-04-27 13:08:33,592 INFO L290 TraceCheckUtils]: 29: Hoare triple {38045#(< ~counter~0 48)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {38045#(< ~counter~0 48)} is VALID [2022-04-27 13:08:33,592 INFO L290 TraceCheckUtils]: 28: Hoare triple {38045#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {38045#(< ~counter~0 48)} is VALID [2022-04-27 13:08:33,592 INFO L290 TraceCheckUtils]: 27: Hoare triple {38055#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38045#(< ~counter~0 48)} is VALID [2022-04-27 13:08:33,593 INFO L290 TraceCheckUtils]: 26: Hoare triple {38055#(< ~counter~0 47)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {38055#(< ~counter~0 47)} is VALID [2022-04-27 13:08:33,593 INFO L290 TraceCheckUtils]: 25: Hoare triple {38055#(< ~counter~0 47)} assume !!(#t~post6 < 50);havoc #t~post6; {38055#(< ~counter~0 47)} is VALID [2022-04-27 13:08:33,593 INFO L290 TraceCheckUtils]: 24: Hoare triple {38065#(< ~counter~0 46)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38055#(< ~counter~0 47)} is VALID [2022-04-27 13:08:33,594 INFO L290 TraceCheckUtils]: 23: Hoare triple {38065#(< ~counter~0 46)} ~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; {38065#(< ~counter~0 46)} is VALID [2022-04-27 13:08:33,594 INFO L290 TraceCheckUtils]: 22: Hoare triple {38065#(< ~counter~0 46)} assume !(~c~0 >= ~b~0); {38065#(< ~counter~0 46)} is VALID [2022-04-27 13:08:33,597 INFO L290 TraceCheckUtils]: 21: Hoare triple {38065#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {38065#(< ~counter~0 46)} is VALID [2022-04-27 13:08:33,597 INFO L290 TraceCheckUtils]: 20: Hoare triple {38078#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38065#(< ~counter~0 46)} is VALID [2022-04-27 13:08:33,597 INFO L290 TraceCheckUtils]: 19: Hoare triple {38078#(< ~counter~0 45)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {38078#(< ~counter~0 45)} is VALID [2022-04-27 13:08:33,598 INFO L290 TraceCheckUtils]: 18: Hoare triple {38078#(< ~counter~0 45)} assume !!(#t~post6 < 50);havoc #t~post6; {38078#(< ~counter~0 45)} is VALID [2022-04-27 13:08:33,598 INFO L290 TraceCheckUtils]: 17: Hoare triple {38088#(< ~counter~0 44)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38078#(< ~counter~0 45)} is VALID [2022-04-27 13:08:33,598 INFO L290 TraceCheckUtils]: 16: Hoare triple {38088#(< ~counter~0 44)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {38088#(< ~counter~0 44)} is VALID [2022-04-27 13:08:33,599 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {37741#true} {38088#(< ~counter~0 44)} #96#return; {38088#(< ~counter~0 44)} is VALID [2022-04-27 13:08:33,599 INFO L290 TraceCheckUtils]: 14: Hoare triple {37741#true} assume true; {37741#true} is VALID [2022-04-27 13:08:33,599 INFO L290 TraceCheckUtils]: 13: Hoare triple {37741#true} assume !(0 == ~cond); {37741#true} is VALID [2022-04-27 13:08:33,599 INFO L290 TraceCheckUtils]: 12: Hoare triple {37741#true} ~cond := #in~cond; {37741#true} is VALID [2022-04-27 13:08:33,599 INFO L272 TraceCheckUtils]: 11: Hoare triple {38088#(< ~counter~0 44)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {37741#true} is VALID [2022-04-27 13:08:33,599 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {37741#true} {38088#(< ~counter~0 44)} #94#return; {38088#(< ~counter~0 44)} is VALID [2022-04-27 13:08:33,599 INFO L290 TraceCheckUtils]: 9: Hoare triple {37741#true} assume true; {37741#true} is VALID [2022-04-27 13:08:33,599 INFO L290 TraceCheckUtils]: 8: Hoare triple {37741#true} assume !(0 == ~cond); {37741#true} is VALID [2022-04-27 13:08:33,599 INFO L290 TraceCheckUtils]: 7: Hoare triple {37741#true} ~cond := #in~cond; {37741#true} is VALID [2022-04-27 13:08:33,599 INFO L272 TraceCheckUtils]: 6: Hoare triple {38088#(< ~counter~0 44)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {37741#true} is VALID [2022-04-27 13:08:33,600 INFO L290 TraceCheckUtils]: 5: Hoare triple {38088#(< ~counter~0 44)} 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; {38088#(< ~counter~0 44)} is VALID [2022-04-27 13:08:33,600 INFO L272 TraceCheckUtils]: 4: Hoare triple {38088#(< ~counter~0 44)} call #t~ret9 := main(); {38088#(< ~counter~0 44)} is VALID [2022-04-27 13:08:33,600 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38088#(< ~counter~0 44)} {37741#true} #108#return; {38088#(< ~counter~0 44)} is VALID [2022-04-27 13:08:33,600 INFO L290 TraceCheckUtils]: 2: Hoare triple {38088#(< ~counter~0 44)} assume true; {38088#(< ~counter~0 44)} is VALID [2022-04-27 13:08:33,601 INFO L290 TraceCheckUtils]: 1: Hoare triple {37741#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; {38088#(< ~counter~0 44)} is VALID [2022-04-27 13:08:33,601 INFO L272 TraceCheckUtils]: 0: Hoare triple {37741#true} call ULTIMATE.init(); {37741#true} is VALID [2022-04-27 13:08:33,601 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:08:33,601 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:08:33,601 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [820123501] [2022-04-27 13:08:33,601 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:08:33,601 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1773577339] [2022-04-27 13:08:33,601 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1773577339] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:08:33,601 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:08:33,601 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-04-27 13:08:33,602 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1853251456] [2022-04-27 13:08:33,602 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:08:33,602 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 3.8333333333333335) internal successors, (69), 18 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:08:33,602 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:08:33,603 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 18 states have (on average 3.8333333333333335) internal successors, (69), 18 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:08:33,676 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:08:33,676 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-27 13:08:33,676 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:08:33,677 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-27 13:08:33,677 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=181, Unknown=0, NotChecked=0, Total=306 [2022-04-27 13:08:33,677 INFO L87 Difference]: Start difference. First operand 1226 states and 1707 transitions. Second operand has 18 states, 18 states have (on average 3.8333333333333335) internal successors, (69), 18 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:08:39,078 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:08:39,078 INFO L93 Difference]: Finished difference Result 2565 states and 3679 transitions. [2022-04-27 13:08:39,078 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2022-04-27 13:08:39,078 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 3.8333333333333335) internal successors, (69), 18 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:08:39,078 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:08:39,079 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 3.8333333333333335) internal successors, (69), 18 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:08:39,081 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 367 transitions. [2022-04-27 13:08:39,081 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 3.8333333333333335) internal successors, (69), 18 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:08:39,084 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 367 transitions. [2022-04-27 13:08:39,084 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 28 states and 367 transitions. [2022-04-27 13:08:39,333 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 367 edges. 367 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:08:39,605 INFO L225 Difference]: With dead ends: 2565 [2022-04-27 13:08:39,605 INFO L226 Difference]: Without dead ends: 2543 [2022-04-27 13:08:39,606 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 138 GetRequests, 111 SyntacticMatches, 0 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 94 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=287, Invalid=525, Unknown=0, NotChecked=0, Total=812 [2022-04-27 13:08:39,606 INFO L413 NwaCegarLoop]: 85 mSDtfsCounter, 421 mSDsluCounter, 401 mSDsCounter, 0 mSdLazyCounter, 206 mSolverCounterSat, 256 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 421 SdHoareTripleChecker+Valid, 486 SdHoareTripleChecker+Invalid, 462 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 256 IncrementalHoareTripleChecker+Valid, 206 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-27 13:08:39,606 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [421 Valid, 486 Invalid, 462 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [256 Valid, 206 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-27 13:08:39,607 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2543 states. [2022-04-27 13:08:43,375 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2543 to 2406. [2022-04-27 13:08:43,375 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:08:43,378 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2543 states. Second operand has 2406 states, 1658 states have (on average 1.3094089264173703) internal successors, (2171), 1717 states have internal predecessors, (2171), 631 states have call successors, (631), 117 states have call predecessors, (631), 116 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) [2022-04-27 13:08:43,379 INFO L74 IsIncluded]: Start isIncluded. First operand 2543 states. Second operand has 2406 states, 1658 states have (on average 1.3094089264173703) internal successors, (2171), 1717 states have internal predecessors, (2171), 631 states have call successors, (631), 117 states have call predecessors, (631), 116 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) [2022-04-27 13:08:43,381 INFO L87 Difference]: Start difference. First operand 2543 states. Second operand has 2406 states, 1658 states have (on average 1.3094089264173703) internal successors, (2171), 1717 states have internal predecessors, (2171), 631 states have call successors, (631), 117 states have call predecessors, (631), 116 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) [2022-04-27 13:08:43,561 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:08:43,561 INFO L93 Difference]: Finished difference Result 2543 states and 3572 transitions. [2022-04-27 13:08:43,561 INFO L276 IsEmpty]: Start isEmpty. Operand 2543 states and 3572 transitions. [2022-04-27 13:08:43,567 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:08:43,567 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:08:43,570 INFO L74 IsIncluded]: Start isIncluded. First operand has 2406 states, 1658 states have (on average 1.3094089264173703) internal successors, (2171), 1717 states have internal predecessors, (2171), 631 states have call successors, (631), 117 states have call predecessors, (631), 116 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) Second operand 2543 states. [2022-04-27 13:08:43,571 INFO L87 Difference]: Start difference. First operand has 2406 states, 1658 states have (on average 1.3094089264173703) internal successors, (2171), 1717 states have internal predecessors, (2171), 631 states have call successors, (631), 117 states have call predecessors, (631), 116 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) Second operand 2543 states. [2022-04-27 13:08:43,757 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:08:43,757 INFO L93 Difference]: Finished difference Result 2543 states and 3572 transitions. [2022-04-27 13:08:43,757 INFO L276 IsEmpty]: Start isEmpty. Operand 2543 states and 3572 transitions. [2022-04-27 13:08:43,774 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:08:43,774 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:08:43,775 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:08:43,775 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:08:43,777 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2406 states, 1658 states have (on average 1.3094089264173703) internal successors, (2171), 1717 states have internal predecessors, (2171), 631 states have call successors, (631), 117 states have call predecessors, (631), 116 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) [2022-04-27 13:08:44,029 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2406 states to 2406 states and 3425 transitions. [2022-04-27 13:08:44,029 INFO L78 Accepts]: Start accepts. Automaton has 2406 states and 3425 transitions. Word has length 64 [2022-04-27 13:08:44,030 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:08:44,030 INFO L495 AbstractCegarLoop]: Abstraction has 2406 states and 3425 transitions. [2022-04-27 13:08:44,030 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 18 states have (on average 3.8333333333333335) internal successors, (69), 18 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:08:44,030 INFO L276 IsEmpty]: Start isEmpty. Operand 2406 states and 3425 transitions. [2022-04-27 13:08:44,030 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 68 [2022-04-27 13:08:44,030 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:08:44,031 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:08:44,047 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:08:44,231 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:08:44,231 INFO L420 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:08:44,231 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:08:44,232 INFO L85 PathProgramCache]: Analyzing trace with hash 1156119236, now seen corresponding path program 1 times [2022-04-27 13:08:44,232 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:08:44,232 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [259140642] [2022-04-27 13:08:44,232 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:08:44,232 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:08:44,241 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:08:44,241 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2032457976] [2022-04-27 13:08:44,241 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:08:44,241 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:08:44,241 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:08:44,242 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:08:44,243 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:08:44,282 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:08:44,283 INFO L263 TraceCheckSpWp]: Trace formula consists of 192 conjuncts, 18 conjunts are in the unsatisfiable core [2022-04-27 13:08:44,296 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:08:44,297 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:08:44,588 INFO L272 TraceCheckUtils]: 0: Hoare triple {50587#true} call ULTIMATE.init(); {50587#true} is VALID [2022-04-27 13:08:44,588 INFO L290 TraceCheckUtils]: 1: Hoare triple {50587#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; {50587#true} is VALID [2022-04-27 13:08:44,588 INFO L290 TraceCheckUtils]: 2: Hoare triple {50587#true} assume true; {50587#true} is VALID [2022-04-27 13:08:44,588 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {50587#true} {50587#true} #108#return; {50587#true} is VALID [2022-04-27 13:08:44,588 INFO L272 TraceCheckUtils]: 4: Hoare triple {50587#true} call #t~ret9 := main(); {50587#true} is VALID [2022-04-27 13:08:44,589 INFO L290 TraceCheckUtils]: 5: Hoare triple {50587#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; {50587#true} is VALID [2022-04-27 13:08:44,589 INFO L272 TraceCheckUtils]: 6: Hoare triple {50587#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {50587#true} is VALID [2022-04-27 13:08:44,589 INFO L290 TraceCheckUtils]: 7: Hoare triple {50587#true} ~cond := #in~cond; {50587#true} is VALID [2022-04-27 13:08:44,589 INFO L290 TraceCheckUtils]: 8: Hoare triple {50587#true} assume !(0 == ~cond); {50587#true} is VALID [2022-04-27 13:08:44,589 INFO L290 TraceCheckUtils]: 9: Hoare triple {50587#true} assume true; {50587#true} is VALID [2022-04-27 13:08:44,589 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {50587#true} {50587#true} #94#return; {50587#true} is VALID [2022-04-27 13:08:44,589 INFO L272 TraceCheckUtils]: 11: Hoare triple {50587#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {50587#true} is VALID [2022-04-27 13:08:44,589 INFO L290 TraceCheckUtils]: 12: Hoare triple {50587#true} ~cond := #in~cond; {50628#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:08:44,589 INFO L290 TraceCheckUtils]: 13: Hoare triple {50628#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {50632#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:08:44,590 INFO L290 TraceCheckUtils]: 14: Hoare triple {50632#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {50632#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:08:44,590 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {50632#(not (= |assume_abort_if_not_#in~cond| 0))} {50587#true} #96#return; {50639#(<= 1 main_~y~0)} is VALID [2022-04-27 13:08:44,590 INFO L290 TraceCheckUtils]: 16: Hoare triple {50639#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {50643#(<= 1 main_~b~0)} is VALID [2022-04-27 13:08:44,591 INFO L290 TraceCheckUtils]: 17: Hoare triple {50643#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50643#(<= 1 main_~b~0)} is VALID [2022-04-27 13:08:44,591 INFO L290 TraceCheckUtils]: 18: Hoare triple {50643#(<= 1 main_~b~0)} assume !!(#t~post6 < 50);havoc #t~post6; {50643#(<= 1 main_~b~0)} is VALID [2022-04-27 13:08:44,591 INFO L290 TraceCheckUtils]: 19: Hoare triple {50643#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50643#(<= 1 main_~b~0)} is VALID [2022-04-27 13:08:44,591 INFO L290 TraceCheckUtils]: 20: Hoare triple {50643#(<= 1 main_~b~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50643#(<= 1 main_~b~0)} is VALID [2022-04-27 13:08:44,591 INFO L290 TraceCheckUtils]: 21: Hoare triple {50643#(<= 1 main_~b~0)} assume !!(#t~post7 < 50);havoc #t~post7; {50643#(<= 1 main_~b~0)} is VALID [2022-04-27 13:08:44,592 INFO L290 TraceCheckUtils]: 22: Hoare triple {50643#(<= 1 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {50662#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 13:08:44,592 INFO L290 TraceCheckUtils]: 23: Hoare triple {50662#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {50662#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 13:08:44,592 INFO L290 TraceCheckUtils]: 24: Hoare triple {50662#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} assume !!(#t~post8 < 50);havoc #t~post8; {50662#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 13:08:44,593 INFO L272 TraceCheckUtils]: 25: Hoare triple {50662#(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)); {50587#true} is VALID [2022-04-27 13:08:44,593 INFO L290 TraceCheckUtils]: 26: Hoare triple {50587#true} ~cond := #in~cond; {50587#true} is VALID [2022-04-27 13:08:44,593 INFO L290 TraceCheckUtils]: 27: Hoare triple {50587#true} assume !(0 == ~cond); {50587#true} is VALID [2022-04-27 13:08:44,593 INFO L290 TraceCheckUtils]: 28: Hoare triple {50587#true} assume true; {50587#true} is VALID [2022-04-27 13:08:44,593 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {50587#true} {50662#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #98#return; {50662#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 13:08:44,593 INFO L272 TraceCheckUtils]: 30: Hoare triple {50662#(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)); {50587#true} is VALID [2022-04-27 13:08:44,593 INFO L290 TraceCheckUtils]: 31: Hoare triple {50587#true} ~cond := #in~cond; {50587#true} is VALID [2022-04-27 13:08:44,593 INFO L290 TraceCheckUtils]: 32: Hoare triple {50587#true} assume !(0 == ~cond); {50587#true} is VALID [2022-04-27 13:08:44,593 INFO L290 TraceCheckUtils]: 33: Hoare triple {50587#true} assume true; {50587#true} is VALID [2022-04-27 13:08:44,594 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {50587#true} {50662#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #100#return; {50662#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 13:08:44,594 INFO L272 TraceCheckUtils]: 35: Hoare triple {50662#(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)); {50587#true} is VALID [2022-04-27 13:08:44,594 INFO L290 TraceCheckUtils]: 36: Hoare triple {50587#true} ~cond := #in~cond; {50587#true} is VALID [2022-04-27 13:08:44,594 INFO L290 TraceCheckUtils]: 37: Hoare triple {50587#true} assume !(0 == ~cond); {50587#true} is VALID [2022-04-27 13:08:44,594 INFO L290 TraceCheckUtils]: 38: Hoare triple {50587#true} assume true; {50587#true} is VALID [2022-04-27 13:08:44,595 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {50587#true} {50662#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #102#return; {50662#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 13:08:44,595 INFO L272 TraceCheckUtils]: 40: Hoare triple {50662#(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)); {50587#true} is VALID [2022-04-27 13:08:44,595 INFO L290 TraceCheckUtils]: 41: Hoare triple {50587#true} ~cond := #in~cond; {50587#true} is VALID [2022-04-27 13:08:44,595 INFO L290 TraceCheckUtils]: 42: Hoare triple {50587#true} assume !(0 == ~cond); {50587#true} is VALID [2022-04-27 13:08:44,595 INFO L290 TraceCheckUtils]: 43: Hoare triple {50587#true} assume true; {50587#true} is VALID [2022-04-27 13:08:44,595 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {50587#true} {50662#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #104#return; {50662#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 13:08:44,596 INFO L290 TraceCheckUtils]: 45: Hoare triple {50662#(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; {50732#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-27 13:08:44,596 INFO L290 TraceCheckUtils]: 46: Hoare triple {50732#(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; {50732#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-27 13:08:44,596 INFO L290 TraceCheckUtils]: 47: Hoare triple {50732#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} assume !!(#t~post8 < 50);havoc #t~post8; {50732#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-27 13:08:44,596 INFO L272 TraceCheckUtils]: 48: Hoare triple {50732#(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)); {50587#true} is VALID [2022-04-27 13:08:44,596 INFO L290 TraceCheckUtils]: 49: Hoare triple {50587#true} ~cond := #in~cond; {50587#true} is VALID [2022-04-27 13:08:44,596 INFO L290 TraceCheckUtils]: 50: Hoare triple {50587#true} assume !(0 == ~cond); {50587#true} is VALID [2022-04-27 13:08:44,597 INFO L290 TraceCheckUtils]: 51: Hoare triple {50587#true} assume true; {50587#true} is VALID [2022-04-27 13:08:44,597 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {50587#true} {50732#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #98#return; {50732#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-27 13:08:44,597 INFO L272 TraceCheckUtils]: 53: Hoare triple {50732#(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)); {50587#true} is VALID [2022-04-27 13:08:44,597 INFO L290 TraceCheckUtils]: 54: Hoare triple {50587#true} ~cond := #in~cond; {50587#true} is VALID [2022-04-27 13:08:44,597 INFO L290 TraceCheckUtils]: 55: Hoare triple {50587#true} assume !(0 == ~cond); {50587#true} is VALID [2022-04-27 13:08:44,597 INFO L290 TraceCheckUtils]: 56: Hoare triple {50587#true} assume true; {50587#true} is VALID [2022-04-27 13:08:44,598 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {50587#true} {50732#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #100#return; {50732#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-27 13:08:44,598 INFO L272 TraceCheckUtils]: 58: Hoare triple {50732#(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)); {50587#true} is VALID [2022-04-27 13:08:44,598 INFO L290 TraceCheckUtils]: 59: Hoare triple {50587#true} ~cond := #in~cond; {50587#true} is VALID [2022-04-27 13:08:44,598 INFO L290 TraceCheckUtils]: 60: Hoare triple {50587#true} assume !(0 == ~cond); {50587#true} is VALID [2022-04-27 13:08:44,598 INFO L290 TraceCheckUtils]: 61: Hoare triple {50587#true} assume true; {50587#true} is VALID [2022-04-27 13:08:44,598 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {50587#true} {50732#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #102#return; {50732#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-27 13:08:44,599 INFO L272 TraceCheckUtils]: 63: Hoare triple {50732#(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)); {50787#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:08:44,599 INFO L290 TraceCheckUtils]: 64: Hoare triple {50787#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {50791#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:08:44,600 INFO L290 TraceCheckUtils]: 65: Hoare triple {50791#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {50588#false} is VALID [2022-04-27 13:08:44,600 INFO L290 TraceCheckUtils]: 66: Hoare triple {50588#false} assume !false; {50588#false} is VALID [2022-04-27 13:08:44,600 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:08:44,600 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:08:44,823 INFO L290 TraceCheckUtils]: 66: Hoare triple {50588#false} assume !false; {50588#false} is VALID [2022-04-27 13:08:44,824 INFO L290 TraceCheckUtils]: 65: Hoare triple {50791#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {50588#false} is VALID [2022-04-27 13:08:44,824 INFO L290 TraceCheckUtils]: 64: Hoare triple {50787#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {50791#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:08:44,824 INFO L272 TraceCheckUtils]: 63: Hoare triple {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {50787#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:08:44,825 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {50587#true} {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:08:44,825 INFO L290 TraceCheckUtils]: 61: Hoare triple {50587#true} assume true; {50587#true} is VALID [2022-04-27 13:08:44,825 INFO L290 TraceCheckUtils]: 60: Hoare triple {50587#true} assume !(0 == ~cond); {50587#true} is VALID [2022-04-27 13:08:44,825 INFO L290 TraceCheckUtils]: 59: Hoare triple {50587#true} ~cond := #in~cond; {50587#true} is VALID [2022-04-27 13:08:44,825 INFO L272 TraceCheckUtils]: 58: Hoare triple {50807#(= 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)); {50587#true} is VALID [2022-04-27 13:08:44,842 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {50587#true} {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} #100#return; {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:08:44,842 INFO L290 TraceCheckUtils]: 56: Hoare triple {50587#true} assume true; {50587#true} is VALID [2022-04-27 13:08:44,842 INFO L290 TraceCheckUtils]: 55: Hoare triple {50587#true} assume !(0 == ~cond); {50587#true} is VALID [2022-04-27 13:08:44,842 INFO L290 TraceCheckUtils]: 54: Hoare triple {50587#true} ~cond := #in~cond; {50587#true} is VALID [2022-04-27 13:08:44,842 INFO L272 TraceCheckUtils]: 53: Hoare triple {50807#(= 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)); {50587#true} is VALID [2022-04-27 13:08:44,843 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {50587#true} {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} #98#return; {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:08:44,843 INFO L290 TraceCheckUtils]: 51: Hoare triple {50587#true} assume true; {50587#true} is VALID [2022-04-27 13:08:44,843 INFO L290 TraceCheckUtils]: 50: Hoare triple {50587#true} assume !(0 == ~cond); {50587#true} is VALID [2022-04-27 13:08:44,843 INFO L290 TraceCheckUtils]: 49: Hoare triple {50587#true} ~cond := #in~cond; {50587#true} is VALID [2022-04-27 13:08:44,843 INFO L272 TraceCheckUtils]: 48: Hoare triple {50807#(= 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)); {50587#true} is VALID [2022-04-27 13:08:44,844 INFO L290 TraceCheckUtils]: 47: Hoare triple {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(#t~post8 < 50);havoc #t~post8; {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:08:44,844 INFO L290 TraceCheckUtils]: 46: Hoare triple {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:08:44,846 INFO L290 TraceCheckUtils]: 45: Hoare triple {50807#(= 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; {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:08:44,846 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {50587#true} {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} #104#return; {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:08:44,846 INFO L290 TraceCheckUtils]: 43: Hoare triple {50587#true} assume true; {50587#true} is VALID [2022-04-27 13:08:44,846 INFO L290 TraceCheckUtils]: 42: Hoare triple {50587#true} assume !(0 == ~cond); {50587#true} is VALID [2022-04-27 13:08:44,846 INFO L290 TraceCheckUtils]: 41: Hoare triple {50587#true} ~cond := #in~cond; {50587#true} is VALID [2022-04-27 13:08:44,846 INFO L272 TraceCheckUtils]: 40: Hoare triple {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {50587#true} is VALID [2022-04-27 13:08:44,847 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {50587#true} {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:08:44,847 INFO L290 TraceCheckUtils]: 38: Hoare triple {50587#true} assume true; {50587#true} is VALID [2022-04-27 13:08:44,847 INFO L290 TraceCheckUtils]: 37: Hoare triple {50587#true} assume !(0 == ~cond); {50587#true} is VALID [2022-04-27 13:08:44,847 INFO L290 TraceCheckUtils]: 36: Hoare triple {50587#true} ~cond := #in~cond; {50587#true} is VALID [2022-04-27 13:08:44,847 INFO L272 TraceCheckUtils]: 35: Hoare triple {50807#(= 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)); {50587#true} is VALID [2022-04-27 13:08:44,848 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {50587#true} {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} #100#return; {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:08:44,848 INFO L290 TraceCheckUtils]: 33: Hoare triple {50587#true} assume true; {50587#true} is VALID [2022-04-27 13:08:44,848 INFO L290 TraceCheckUtils]: 32: Hoare triple {50587#true} assume !(0 == ~cond); {50587#true} is VALID [2022-04-27 13:08:44,848 INFO L290 TraceCheckUtils]: 31: Hoare triple {50587#true} ~cond := #in~cond; {50587#true} is VALID [2022-04-27 13:08:44,848 INFO L272 TraceCheckUtils]: 30: Hoare triple {50807#(= 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)); {50587#true} is VALID [2022-04-27 13:08:44,848 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {50587#true} {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} #98#return; {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:08:44,848 INFO L290 TraceCheckUtils]: 28: Hoare triple {50587#true} assume true; {50587#true} is VALID [2022-04-27 13:08:44,848 INFO L290 TraceCheckUtils]: 27: Hoare triple {50587#true} assume !(0 == ~cond); {50587#true} is VALID [2022-04-27 13:08:44,848 INFO L290 TraceCheckUtils]: 26: Hoare triple {50587#true} ~cond := #in~cond; {50587#true} is VALID [2022-04-27 13:08:44,848 INFO L272 TraceCheckUtils]: 25: Hoare triple {50807#(= 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)); {50587#true} is VALID [2022-04-27 13:08:44,849 INFO L290 TraceCheckUtils]: 24: Hoare triple {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(#t~post8 < 50);havoc #t~post8; {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:08:44,849 INFO L290 TraceCheckUtils]: 23: Hoare triple {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:08:44,849 INFO L290 TraceCheckUtils]: 22: Hoare triple {50587#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {50807#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:08:44,849 INFO L290 TraceCheckUtils]: 21: Hoare triple {50587#true} assume !!(#t~post7 < 50);havoc #t~post7; {50587#true} is VALID [2022-04-27 13:08:44,849 INFO L290 TraceCheckUtils]: 20: Hoare triple {50587#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50587#true} is VALID [2022-04-27 13:08:44,849 INFO L290 TraceCheckUtils]: 19: Hoare triple {50587#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50587#true} is VALID [2022-04-27 13:08:44,850 INFO L290 TraceCheckUtils]: 18: Hoare triple {50587#true} assume !!(#t~post6 < 50);havoc #t~post6; {50587#true} is VALID [2022-04-27 13:08:44,850 INFO L290 TraceCheckUtils]: 17: Hoare triple {50587#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50587#true} is VALID [2022-04-27 13:08:44,850 INFO L290 TraceCheckUtils]: 16: Hoare triple {50587#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {50587#true} is VALID [2022-04-27 13:08:44,850 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {50587#true} {50587#true} #96#return; {50587#true} is VALID [2022-04-27 13:08:44,850 INFO L290 TraceCheckUtils]: 14: Hoare triple {50587#true} assume true; {50587#true} is VALID [2022-04-27 13:08:44,850 INFO L290 TraceCheckUtils]: 13: Hoare triple {50587#true} assume !(0 == ~cond); {50587#true} is VALID [2022-04-27 13:08:44,850 INFO L290 TraceCheckUtils]: 12: Hoare triple {50587#true} ~cond := #in~cond; {50587#true} is VALID [2022-04-27 13:08:44,850 INFO L272 TraceCheckUtils]: 11: Hoare triple {50587#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {50587#true} is VALID [2022-04-27 13:08:44,850 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {50587#true} {50587#true} #94#return; {50587#true} is VALID [2022-04-27 13:08:44,850 INFO L290 TraceCheckUtils]: 9: Hoare triple {50587#true} assume true; {50587#true} is VALID [2022-04-27 13:08:44,850 INFO L290 TraceCheckUtils]: 8: Hoare triple {50587#true} assume !(0 == ~cond); {50587#true} is VALID [2022-04-27 13:08:44,850 INFO L290 TraceCheckUtils]: 7: Hoare triple {50587#true} ~cond := #in~cond; {50587#true} is VALID [2022-04-27 13:08:44,850 INFO L272 TraceCheckUtils]: 6: Hoare triple {50587#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {50587#true} is VALID [2022-04-27 13:08:44,850 INFO L290 TraceCheckUtils]: 5: Hoare triple {50587#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; {50587#true} is VALID [2022-04-27 13:08:44,850 INFO L272 TraceCheckUtils]: 4: Hoare triple {50587#true} call #t~ret9 := main(); {50587#true} is VALID [2022-04-27 13:08:44,850 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {50587#true} {50587#true} #108#return; {50587#true} is VALID [2022-04-27 13:08:44,850 INFO L290 TraceCheckUtils]: 2: Hoare triple {50587#true} assume true; {50587#true} is VALID [2022-04-27 13:08:44,850 INFO L290 TraceCheckUtils]: 1: Hoare triple {50587#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; {50587#true} is VALID [2022-04-27 13:08:44,850 INFO L272 TraceCheckUtils]: 0: Hoare triple {50587#true} call ULTIMATE.init(); {50587#true} is VALID [2022-04-27 13:08:44,851 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:08:44,851 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:08:44,851 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [259140642] [2022-04-27 13:08:44,851 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:08:44,851 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2032457976] [2022-04-27 13:08:44,851 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2032457976] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-27 13:08:44,851 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 13:08:44,851 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-27 13:08:44,851 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2090207456] [2022-04-27 13:08:44,851 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:08:44,851 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:08:44,852 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:08:44,852 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:08:44,878 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:08:44,878 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:08:44,878 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:08:44,878 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:08:44,879 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-27 13:08:44,879 INFO L87 Difference]: Start difference. First operand 2406 states and 3425 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:08:49,037 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:08:49,037 INFO L93 Difference]: Finished difference Result 2467 states and 3485 transitions. [2022-04-27 13:08:49,037 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:08:49,037 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:08:49,037 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:08:49,037 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:08:49,038 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-27 13:08:49,038 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:08:49,038 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-27 13:08:49,038 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 56 transitions. [2022-04-27 13:08:49,077 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:08:49,330 INFO L225 Difference]: With dead ends: 2467 [2022-04-27 13:08:49,330 INFO L226 Difference]: Without dead ends: 2465 [2022-04-27 13:08:49,331 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:08:49,331 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:08:49,332 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:08:49,333 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2465 states. [2022-04-27 13:08:53,228 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2465 to 2442. [2022-04-27 13:08:53,228 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:08:53,231 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2465 states. Second operand has 2442 states, 1685 states have (on average 1.3032640949554897) internal successors, (2196), 1744 states have internal predecessors, (2196), 631 states have call successors, (631), 126 states have call predecessors, (631), 125 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) [2022-04-27 13:08:53,232 INFO L74 IsIncluded]: Start isIncluded. First operand 2465 states. Second operand has 2442 states, 1685 states have (on average 1.3032640949554897) internal successors, (2196), 1744 states have internal predecessors, (2196), 631 states have call successors, (631), 126 states have call predecessors, (631), 125 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) [2022-04-27 13:08:53,234 INFO L87 Difference]: Start difference. First operand 2465 states. Second operand has 2442 states, 1685 states have (on average 1.3032640949554897) internal successors, (2196), 1744 states have internal predecessors, (2196), 631 states have call successors, (631), 126 states have call predecessors, (631), 125 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) [2022-04-27 13:08:53,389 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:08:53,390 INFO L93 Difference]: Finished difference Result 2465 states and 3473 transitions. [2022-04-27 13:08:53,390 INFO L276 IsEmpty]: Start isEmpty. Operand 2465 states and 3473 transitions. [2022-04-27 13:08:53,394 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:08:53,394 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:08:53,397 INFO L74 IsIncluded]: Start isIncluded. First operand has 2442 states, 1685 states have (on average 1.3032640949554897) internal successors, (2196), 1744 states have internal predecessors, (2196), 631 states have call successors, (631), 126 states have call predecessors, (631), 125 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) Second operand 2465 states. [2022-04-27 13:08:53,398 INFO L87 Difference]: Start difference. First operand has 2442 states, 1685 states have (on average 1.3032640949554897) internal successors, (2196), 1744 states have internal predecessors, (2196), 631 states have call successors, (631), 126 states have call predecessors, (631), 125 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) Second operand 2465 states. [2022-04-27 13:08:53,556 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:08:53,556 INFO L93 Difference]: Finished difference Result 2465 states and 3473 transitions. [2022-04-27 13:08:53,556 INFO L276 IsEmpty]: Start isEmpty. Operand 2465 states and 3473 transitions. [2022-04-27 13:08:53,560 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:08:53,560 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:08:53,560 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:08:53,560 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:08:53,563 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2442 states, 1685 states have (on average 1.3032640949554897) internal successors, (2196), 1744 states have internal predecessors, (2196), 631 states have call successors, (631), 126 states have call predecessors, (631), 125 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) [2022-04-27 13:08:53,803 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2442 states to 2442 states and 3450 transitions. [2022-04-27 13:08:53,803 INFO L78 Accepts]: Start accepts. Automaton has 2442 states and 3450 transitions. Word has length 67 [2022-04-27 13:08:53,803 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:08:53,803 INFO L495 AbstractCegarLoop]: Abstraction has 2442 states and 3450 transitions. [2022-04-27 13:08:53,804 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:08:53,804 INFO L276 IsEmpty]: Start isEmpty. Operand 2442 states and 3450 transitions. [2022-04-27 13:08:53,804 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2022-04-27 13:08:53,804 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:08:53,804 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:08:53,826 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:08:54,004 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:08:54,005 INFO L420 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:08:54,005 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:08:54,005 INFO L85 PathProgramCache]: Analyzing trace with hash -958869778, now seen corresponding path program 1 times [2022-04-27 13:08:54,005 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:08:54,005 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2123922806] [2022-04-27 13:08:54,005 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:08:54,005 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:08:54,020 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:08:54,020 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1927360588] [2022-04-27 13:08:54,020 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:08:54,020 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:08:54,020 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:08:54,021 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:08:54,023 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:08:54,066 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:08:54,067 INFO L263 TraceCheckSpWp]: Trace formula consists of 223 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-27 13:08:54,078 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:08:54,079 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:08:54,270 INFO L272 TraceCheckUtils]: 0: Hoare triple {63156#true} call ULTIMATE.init(); {63156#true} is VALID [2022-04-27 13:08:54,270 INFO L290 TraceCheckUtils]: 1: Hoare triple {63156#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; {63156#true} is VALID [2022-04-27 13:08:54,270 INFO L290 TraceCheckUtils]: 2: Hoare triple {63156#true} assume true; {63156#true} is VALID [2022-04-27 13:08:54,271 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {63156#true} {63156#true} #108#return; {63156#true} is VALID [2022-04-27 13:08:54,271 INFO L272 TraceCheckUtils]: 4: Hoare triple {63156#true} call #t~ret9 := main(); {63156#true} is VALID [2022-04-27 13:08:54,271 INFO L290 TraceCheckUtils]: 5: Hoare triple {63156#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; {63156#true} is VALID [2022-04-27 13:08:54,271 INFO L272 TraceCheckUtils]: 6: Hoare triple {63156#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {63156#true} is VALID [2022-04-27 13:08:54,271 INFO L290 TraceCheckUtils]: 7: Hoare triple {63156#true} ~cond := #in~cond; {63156#true} is VALID [2022-04-27 13:08:54,271 INFO L290 TraceCheckUtils]: 8: Hoare triple {63156#true} assume !(0 == ~cond); {63156#true} is VALID [2022-04-27 13:08:54,271 INFO L290 TraceCheckUtils]: 9: Hoare triple {63156#true} assume true; {63156#true} is VALID [2022-04-27 13:08:54,271 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {63156#true} {63156#true} #94#return; {63156#true} is VALID [2022-04-27 13:08:54,271 INFO L272 TraceCheckUtils]: 11: Hoare triple {63156#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {63156#true} is VALID [2022-04-27 13:08:54,271 INFO L290 TraceCheckUtils]: 12: Hoare triple {63156#true} ~cond := #in~cond; {63156#true} is VALID [2022-04-27 13:08:54,271 INFO L290 TraceCheckUtils]: 13: Hoare triple {63156#true} assume !(0 == ~cond); {63156#true} is VALID [2022-04-27 13:08:54,271 INFO L290 TraceCheckUtils]: 14: Hoare triple {63156#true} assume true; {63156#true} is VALID [2022-04-27 13:08:54,271 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {63156#true} {63156#true} #96#return; {63156#true} is VALID [2022-04-27 13:08:54,271 INFO L290 TraceCheckUtils]: 16: Hoare triple {63156#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {63156#true} is VALID [2022-04-27 13:08:54,271 INFO L290 TraceCheckUtils]: 17: Hoare triple {63156#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {63156#true} is VALID [2022-04-27 13:08:54,271 INFO L290 TraceCheckUtils]: 18: Hoare triple {63156#true} assume !!(#t~post6 < 50);havoc #t~post6; {63156#true} is VALID [2022-04-27 13:08:54,271 INFO L290 TraceCheckUtils]: 19: Hoare triple {63156#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {63156#true} is VALID [2022-04-27 13:08:54,271 INFO L290 TraceCheckUtils]: 20: Hoare triple {63156#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {63156#true} is VALID [2022-04-27 13:08:54,271 INFO L290 TraceCheckUtils]: 21: Hoare triple {63156#true} assume !!(#t~post7 < 50);havoc #t~post7; {63156#true} is VALID [2022-04-27 13:08:54,271 INFO L290 TraceCheckUtils]: 22: Hoare triple {63156#true} assume !(~c~0 >= ~b~0); {63156#true} is VALID [2022-04-27 13:08:54,271 INFO L290 TraceCheckUtils]: 23: Hoare triple {63156#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; {63156#true} is VALID [2022-04-27 13:08:54,272 INFO L290 TraceCheckUtils]: 24: Hoare triple {63156#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {63156#true} is VALID [2022-04-27 13:08:54,272 INFO L290 TraceCheckUtils]: 25: Hoare triple {63156#true} assume !!(#t~post6 < 50);havoc #t~post6; {63156#true} is VALID [2022-04-27 13:08:54,272 INFO L290 TraceCheckUtils]: 26: Hoare triple {63156#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {63156#true} is VALID [2022-04-27 13:08:54,272 INFO L290 TraceCheckUtils]: 27: Hoare triple {63156#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {63156#true} is VALID [2022-04-27 13:08:54,272 INFO L290 TraceCheckUtils]: 28: Hoare triple {63156#true} assume !!(#t~post7 < 50);havoc #t~post7; {63156#true} is VALID [2022-04-27 13:08:54,272 INFO L290 TraceCheckUtils]: 29: Hoare triple {63156#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {63248#(<= main_~v~0 main_~b~0)} is VALID [2022-04-27 13:08:54,272 INFO L290 TraceCheckUtils]: 30: Hoare triple {63248#(<= main_~v~0 main_~b~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {63248#(<= main_~v~0 main_~b~0)} is VALID [2022-04-27 13:08:54,273 INFO L290 TraceCheckUtils]: 31: Hoare triple {63248#(<= main_~v~0 main_~b~0)} assume !!(#t~post8 < 50);havoc #t~post8; {63248#(<= main_~v~0 main_~b~0)} is VALID [2022-04-27 13:08:54,273 INFO L272 TraceCheckUtils]: 32: Hoare triple {63248#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {63156#true} is VALID [2022-04-27 13:08:54,273 INFO L290 TraceCheckUtils]: 33: Hoare triple {63156#true} ~cond := #in~cond; {63156#true} is VALID [2022-04-27 13:08:54,273 INFO L290 TraceCheckUtils]: 34: Hoare triple {63156#true} assume !(0 == ~cond); {63156#true} is VALID [2022-04-27 13:08:54,273 INFO L290 TraceCheckUtils]: 35: Hoare triple {63156#true} assume true; {63156#true} is VALID [2022-04-27 13:08:54,273 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {63156#true} {63248#(<= main_~v~0 main_~b~0)} #98#return; {63248#(<= main_~v~0 main_~b~0)} is VALID [2022-04-27 13:08:54,273 INFO L272 TraceCheckUtils]: 37: Hoare triple {63248#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {63156#true} is VALID [2022-04-27 13:08:54,273 INFO L290 TraceCheckUtils]: 38: Hoare triple {63156#true} ~cond := #in~cond; {63156#true} is VALID [2022-04-27 13:08:54,273 INFO L290 TraceCheckUtils]: 39: Hoare triple {63156#true} assume !(0 == ~cond); {63156#true} is VALID [2022-04-27 13:08:54,274 INFO L290 TraceCheckUtils]: 40: Hoare triple {63156#true} assume true; {63156#true} is VALID [2022-04-27 13:08:54,274 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {63156#true} {63248#(<= main_~v~0 main_~b~0)} #100#return; {63248#(<= main_~v~0 main_~b~0)} is VALID [2022-04-27 13:08:54,274 INFO L272 TraceCheckUtils]: 42: Hoare triple {63248#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {63156#true} is VALID [2022-04-27 13:08:54,274 INFO L290 TraceCheckUtils]: 43: Hoare triple {63156#true} ~cond := #in~cond; {63156#true} is VALID [2022-04-27 13:08:54,274 INFO L290 TraceCheckUtils]: 44: Hoare triple {63156#true} assume !(0 == ~cond); {63156#true} is VALID [2022-04-27 13:08:54,274 INFO L290 TraceCheckUtils]: 45: Hoare triple {63156#true} assume true; {63156#true} is VALID [2022-04-27 13:08:54,275 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {63156#true} {63248#(<= main_~v~0 main_~b~0)} #102#return; {63248#(<= main_~v~0 main_~b~0)} is VALID [2022-04-27 13:08:54,275 INFO L272 TraceCheckUtils]: 47: Hoare triple {63248#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {63156#true} is VALID [2022-04-27 13:08:54,275 INFO L290 TraceCheckUtils]: 48: Hoare triple {63156#true} ~cond := #in~cond; {63156#true} is VALID [2022-04-27 13:08:54,275 INFO L290 TraceCheckUtils]: 49: Hoare triple {63156#true} assume !(0 == ~cond); {63156#true} is VALID [2022-04-27 13:08:54,275 INFO L290 TraceCheckUtils]: 50: Hoare triple {63156#true} assume true; {63156#true} is VALID [2022-04-27 13:08:54,275 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {63156#true} {63248#(<= main_~v~0 main_~b~0)} #104#return; {63248#(<= main_~v~0 main_~b~0)} is VALID [2022-04-27 13:08:54,276 INFO L290 TraceCheckUtils]: 52: Hoare triple {63248#(<= main_~v~0 main_~b~0)} assume !(~c~0 >= 2 * ~v~0); {63318#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-27 13:08:54,276 INFO L290 TraceCheckUtils]: 53: Hoare triple {63318#(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; {63322#(< main_~c~0 main_~b~0)} is VALID [2022-04-27 13:08:54,277 INFO L290 TraceCheckUtils]: 54: Hoare triple {63322#(< main_~c~0 main_~b~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {63322#(< main_~c~0 main_~b~0)} is VALID [2022-04-27 13:08:54,277 INFO L290 TraceCheckUtils]: 55: Hoare triple {63322#(< main_~c~0 main_~b~0)} assume !!(#t~post7 < 50);havoc #t~post7; {63322#(< main_~c~0 main_~b~0)} is VALID [2022-04-27 13:08:54,277 INFO L290 TraceCheckUtils]: 56: Hoare triple {63322#(< main_~c~0 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {63157#false} is VALID [2022-04-27 13:08:54,277 INFO L290 TraceCheckUtils]: 57: Hoare triple {63157#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {63157#false} is VALID [2022-04-27 13:08:54,277 INFO L290 TraceCheckUtils]: 58: Hoare triple {63157#false} assume !!(#t~post8 < 50);havoc #t~post8; {63157#false} is VALID [2022-04-27 13:08:54,277 INFO L272 TraceCheckUtils]: 59: Hoare triple {63157#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {63157#false} is VALID [2022-04-27 13:08:54,277 INFO L290 TraceCheckUtils]: 60: Hoare triple {63157#false} ~cond := #in~cond; {63157#false} is VALID [2022-04-27 13:08:54,277 INFO L290 TraceCheckUtils]: 61: Hoare triple {63157#false} assume !(0 == ~cond); {63157#false} is VALID [2022-04-27 13:08:54,277 INFO L290 TraceCheckUtils]: 62: Hoare triple {63157#false} assume true; {63157#false} is VALID [2022-04-27 13:08:54,277 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {63157#false} {63157#false} #98#return; {63157#false} is VALID [2022-04-27 13:08:54,278 INFO L272 TraceCheckUtils]: 64: Hoare triple {63157#false} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {63157#false} is VALID [2022-04-27 13:08:54,278 INFO L290 TraceCheckUtils]: 65: Hoare triple {63157#false} ~cond := #in~cond; {63157#false} is VALID [2022-04-27 13:08:54,278 INFO L290 TraceCheckUtils]: 66: Hoare triple {63157#false} assume !(0 == ~cond); {63157#false} is VALID [2022-04-27 13:08:54,278 INFO L290 TraceCheckUtils]: 67: Hoare triple {63157#false} assume true; {63157#false} is VALID [2022-04-27 13:08:54,278 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {63157#false} {63157#false} #100#return; {63157#false} is VALID [2022-04-27 13:08:54,278 INFO L272 TraceCheckUtils]: 69: Hoare triple {63157#false} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {63157#false} is VALID [2022-04-27 13:08:54,278 INFO L290 TraceCheckUtils]: 70: Hoare triple {63157#false} ~cond := #in~cond; {63157#false} is VALID [2022-04-27 13:08:54,278 INFO L290 TraceCheckUtils]: 71: Hoare triple {63157#false} assume 0 == ~cond; {63157#false} is VALID [2022-04-27 13:08:54,278 INFO L290 TraceCheckUtils]: 72: Hoare triple {63157#false} assume !false; {63157#false} is VALID [2022-04-27 13:08:54,278 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:08:54,278 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:08:54,278 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:08:54,278 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2123922806] [2022-04-27 13:08:54,278 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:08:54,278 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1927360588] [2022-04-27 13:08:54,278 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1927360588] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:08:54,278 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:08:54,279 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 13:08:54,279 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [353747791] [2022-04-27 13:08:54,279 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:08:54,279 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:08:54,279 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:08:54,279 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:08:54,313 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:08:54,313 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:08:54,313 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:08:54,314 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:08:54,314 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-27 13:08:54,314 INFO L87 Difference]: Start difference. First operand 2442 states and 3450 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:08:59,061 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:08:59,062 INFO L93 Difference]: Finished difference Result 4377 states and 6175 transitions. [2022-04-27 13:08:59,062 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 13:08:59,062 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:08:59,062 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:08:59,062 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:08:59,063 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 104 transitions. [2022-04-27 13:08:59,063 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:08:59,064 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 104 transitions. [2022-04-27 13:08:59,064 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 104 transitions. [2022-04-27 13:08:59,134 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:08:59,415 INFO L225 Difference]: With dead ends: 4377 [2022-04-27 13:08:59,415 INFO L226 Difference]: Without dead ends: 2578 [2022-04-27 13:08:59,419 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:08:59,419 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 12 mSDsluCounter, 73 mSDsCounter, 0 mSdLazyCounter, 47 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 121 SdHoareTripleChecker+Invalid, 49 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 47 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 13:08:59,419 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 121 Invalid, 49 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 47 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 13:08:59,420 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2578 states. [2022-04-27 13:09:03,003 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2578 to 2372. [2022-04-27 13:09:03,004 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:09:03,006 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2578 states. Second operand has 2372 states, 1689 states have (on average 1.2948490230905862) internal successors, (2187), 1720 states have internal predecessors, (2187), 559 states have call successors, (559), 124 states have call predecessors, (559), 123 states have return successors, (551), 527 states have call predecessors, (551), 551 states have call successors, (551) [2022-04-27 13:09:03,007 INFO L74 IsIncluded]: Start isIncluded. First operand 2578 states. Second operand has 2372 states, 1689 states have (on average 1.2948490230905862) internal successors, (2187), 1720 states have internal predecessors, (2187), 559 states have call successors, (559), 124 states have call predecessors, (559), 123 states have return successors, (551), 527 states have call predecessors, (551), 551 states have call successors, (551) [2022-04-27 13:09:03,009 INFO L87 Difference]: Start difference. First operand 2578 states. Second operand has 2372 states, 1689 states have (on average 1.2948490230905862) internal successors, (2187), 1720 states have internal predecessors, (2187), 559 states have call successors, (559), 124 states have call predecessors, (559), 123 states have return successors, (551), 527 states have call predecessors, (551), 551 states have call successors, (551) [2022-04-27 13:09:03,183 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:09:03,184 INFO L93 Difference]: Finished difference Result 2578 states and 3563 transitions. [2022-04-27 13:09:03,184 INFO L276 IsEmpty]: Start isEmpty. Operand 2578 states and 3563 transitions. [2022-04-27 13:09:03,188 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:09:03,188 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:09:03,190 INFO L74 IsIncluded]: Start isIncluded. First operand has 2372 states, 1689 states have (on average 1.2948490230905862) internal successors, (2187), 1720 states have internal predecessors, (2187), 559 states have call successors, (559), 124 states have call predecessors, (559), 123 states have return successors, (551), 527 states have call predecessors, (551), 551 states have call successors, (551) Second operand 2578 states. [2022-04-27 13:09:03,192 INFO L87 Difference]: Start difference. First operand has 2372 states, 1689 states have (on average 1.2948490230905862) internal successors, (2187), 1720 states have internal predecessors, (2187), 559 states have call successors, (559), 124 states have call predecessors, (559), 123 states have return successors, (551), 527 states have call predecessors, (551), 551 states have call successors, (551) Second operand 2578 states. [2022-04-27 13:09:03,395 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:09:03,395 INFO L93 Difference]: Finished difference Result 2578 states and 3563 transitions. [2022-04-27 13:09:03,395 INFO L276 IsEmpty]: Start isEmpty. Operand 2578 states and 3563 transitions. [2022-04-27 13:09:03,401 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:09:03,401 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:09:03,401 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:09:03,401 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:09:03,404 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2372 states, 1689 states have (on average 1.2948490230905862) internal successors, (2187), 1720 states have internal predecessors, (2187), 559 states have call successors, (559), 124 states have call predecessors, (559), 123 states have return successors, (551), 527 states have call predecessors, (551), 551 states have call successors, (551) [2022-04-27 13:09:03,660 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2372 states to 2372 states and 3297 transitions. [2022-04-27 13:09:03,660 INFO L78 Accepts]: Start accepts. Automaton has 2372 states and 3297 transitions. Word has length 73 [2022-04-27 13:09:03,660 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:09:03,660 INFO L495 AbstractCegarLoop]: Abstraction has 2372 states and 3297 transitions. [2022-04-27 13:09:03,660 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:09:03,660 INFO L276 IsEmpty]: Start isEmpty. Operand 2372 states and 3297 transitions. [2022-04-27 13:09:03,661 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-04-27 13:09:03,661 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:09:03,661 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:09:03,679 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:09:03,861 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:09:03,862 INFO L420 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:09:03,862 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:09:03,862 INFO L85 PathProgramCache]: Analyzing trace with hash -705069158, now seen corresponding path program 2 times [2022-04-27 13:09:03,862 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:09:03,862 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [220592465] [2022-04-27 13:09:03,862 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:09:03,862 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:09:03,873 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:09:03,873 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2005383722] [2022-04-27 13:09:03,873 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 13:09:03,874 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:09:03,874 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:09:03,874 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:09:03,875 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:09:03,925 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 13:09:03,926 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:09:03,927 INFO L263 TraceCheckSpWp]: Trace formula consists of 244 conjuncts, 82 conjunts are in the unsatisfiable core [2022-04-27 13:09:03,939 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:09:03,940 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:09:05,522 INFO L272 TraceCheckUtils]: 0: Hoare triple {78314#true} call ULTIMATE.init(); {78314#true} is VALID [2022-04-27 13:09:05,522 INFO L290 TraceCheckUtils]: 1: Hoare triple {78314#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; {78314#true} is VALID [2022-04-27 13:09:05,522 INFO L290 TraceCheckUtils]: 2: Hoare triple {78314#true} assume true; {78314#true} is VALID [2022-04-27 13:09:05,522 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {78314#true} {78314#true} #108#return; {78314#true} is VALID [2022-04-27 13:09:05,522 INFO L272 TraceCheckUtils]: 4: Hoare triple {78314#true} call #t~ret9 := main(); {78314#true} is VALID [2022-04-27 13:09:05,522 INFO L290 TraceCheckUtils]: 5: Hoare triple {78314#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; {78314#true} is VALID [2022-04-27 13:09:05,523 INFO L272 TraceCheckUtils]: 6: Hoare triple {78314#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {78314#true} is VALID [2022-04-27 13:09:05,523 INFO L290 TraceCheckUtils]: 7: Hoare triple {78314#true} ~cond := #in~cond; {78314#true} is VALID [2022-04-27 13:09:05,523 INFO L290 TraceCheckUtils]: 8: Hoare triple {78314#true} assume !(0 == ~cond); {78314#true} is VALID [2022-04-27 13:09:05,523 INFO L290 TraceCheckUtils]: 9: Hoare triple {78314#true} assume true; {78314#true} is VALID [2022-04-27 13:09:05,523 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {78314#true} {78314#true} #94#return; {78314#true} is VALID [2022-04-27 13:09:05,523 INFO L272 TraceCheckUtils]: 11: Hoare triple {78314#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {78314#true} is VALID [2022-04-27 13:09:05,523 INFO L290 TraceCheckUtils]: 12: Hoare triple {78314#true} ~cond := #in~cond; {78355#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:09:05,523 INFO L290 TraceCheckUtils]: 13: Hoare triple {78355#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {78359#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:09:05,524 INFO L290 TraceCheckUtils]: 14: Hoare triple {78359#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {78359#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:09:05,524 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {78359#(not (= |assume_abort_if_not_#in~cond| 0))} {78314#true} #96#return; {78366#(<= 1 main_~y~0)} is VALID [2022-04-27 13:09:05,524 INFO L290 TraceCheckUtils]: 16: Hoare triple {78366#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {78370#(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:09:05,525 INFO L290 TraceCheckUtils]: 17: Hoare triple {78370#(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; {78370#(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:09:05,525 INFO L290 TraceCheckUtils]: 18: Hoare triple {78370#(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 < 50);havoc #t~post6; {78370#(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:09:05,525 INFO L290 TraceCheckUtils]: 19: Hoare triple {78370#(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; {78380#(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:09:05,526 INFO L290 TraceCheckUtils]: 20: Hoare triple {78380#(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; {78380#(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:09:05,526 INFO L290 TraceCheckUtils]: 21: Hoare triple {78380#(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 < 50);havoc #t~post7; {78380#(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:09:05,526 INFO L290 TraceCheckUtils]: 22: Hoare triple {78380#(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); {78390#(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:09:05,527 INFO L290 TraceCheckUtils]: 23: Hoare triple {78390#(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; {78394#(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:09:05,527 INFO L290 TraceCheckUtils]: 24: Hoare triple {78394#(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; {78394#(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:09:05,528 INFO L290 TraceCheckUtils]: 25: Hoare triple {78394#(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 < 50);havoc #t~post6; {78394#(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:09:05,528 INFO L290 TraceCheckUtils]: 26: Hoare triple {78394#(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; {78404#(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:09:05,529 INFO L290 TraceCheckUtils]: 27: Hoare triple {78404#(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; {78404#(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:09:05,529 INFO L290 TraceCheckUtils]: 28: Hoare triple {78404#(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 < 50);havoc #t~post7; {78404#(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:09:05,529 INFO L290 TraceCheckUtils]: 29: Hoare triple {78404#(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; {78414#(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:09:05,530 INFO L290 TraceCheckUtils]: 30: Hoare triple {78414#(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; {78414#(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:09:05,530 INFO L290 TraceCheckUtils]: 31: Hoare triple {78414#(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 < 50);havoc #t~post8; {78414#(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:09:05,530 INFO L272 TraceCheckUtils]: 32: Hoare triple {78414#(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)); {78314#true} is VALID [2022-04-27 13:09:05,531 INFO L290 TraceCheckUtils]: 33: Hoare triple {78314#true} ~cond := #in~cond; {78427#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:09:05,531 INFO L290 TraceCheckUtils]: 34: Hoare triple {78427#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {78431#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:09:05,531 INFO L290 TraceCheckUtils]: 35: Hoare triple {78431#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {78431#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:09:05,533 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {78431#(not (= |__VERIFIER_assert_#in~cond| 0))} {78414#(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; {78438#(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:09:05,533 INFO L272 TraceCheckUtils]: 37: Hoare triple {78438#(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)); {78314#true} is VALID [2022-04-27 13:09:05,533 INFO L290 TraceCheckUtils]: 38: Hoare triple {78314#true} ~cond := #in~cond; {78314#true} is VALID [2022-04-27 13:09:05,533 INFO L290 TraceCheckUtils]: 39: Hoare triple {78314#true} assume !(0 == ~cond); {78314#true} is VALID [2022-04-27 13:09:05,533 INFO L290 TraceCheckUtils]: 40: Hoare triple {78314#true} assume true; {78314#true} is VALID [2022-04-27 13:09:05,534 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {78314#true} {78438#(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; {78438#(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:09:05,534 INFO L272 TraceCheckUtils]: 42: Hoare triple {78438#(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)); {78314#true} is VALID [2022-04-27 13:09:05,534 INFO L290 TraceCheckUtils]: 43: Hoare triple {78314#true} ~cond := #in~cond; {78314#true} is VALID [2022-04-27 13:09:05,534 INFO L290 TraceCheckUtils]: 44: Hoare triple {78314#true} assume !(0 == ~cond); {78314#true} is VALID [2022-04-27 13:09:05,534 INFO L290 TraceCheckUtils]: 45: Hoare triple {78314#true} assume true; {78314#true} is VALID [2022-04-27 13:09:05,534 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {78314#true} {78438#(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; {78438#(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:09:05,535 INFO L272 TraceCheckUtils]: 47: Hoare triple {78438#(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)); {78314#true} is VALID [2022-04-27 13:09:05,535 INFO L290 TraceCheckUtils]: 48: Hoare triple {78314#true} ~cond := #in~cond; {78314#true} is VALID [2022-04-27 13:09:05,535 INFO L290 TraceCheckUtils]: 49: Hoare triple {78314#true} assume !(0 == ~cond); {78314#true} is VALID [2022-04-27 13:09:05,535 INFO L290 TraceCheckUtils]: 50: Hoare triple {78314#true} assume true; {78314#true} is VALID [2022-04-27 13:09:05,535 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {78314#true} {78438#(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; {78438#(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:09:05,536 INFO L290 TraceCheckUtils]: 52: Hoare triple {78438#(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); {78487#(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:09:05,537 INFO L290 TraceCheckUtils]: 53: Hoare triple {78487#(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; {78491#(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:09:05,538 INFO L290 TraceCheckUtils]: 54: Hoare triple {78491#(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; {78491#(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:09:05,538 INFO L290 TraceCheckUtils]: 55: Hoare triple {78491#(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 < 50);havoc #t~post7; {78491#(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:09:05,539 INFO L290 TraceCheckUtils]: 56: Hoare triple {78491#(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); {78491#(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:09:05,540 INFO L290 TraceCheckUtils]: 57: Hoare triple {78491#(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; {78504#(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:09:05,541 INFO L290 TraceCheckUtils]: 58: Hoare triple {78504#(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; {78504#(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:09:05,541 INFO L290 TraceCheckUtils]: 59: Hoare triple {78504#(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 < 50);havoc #t~post6; {78504#(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:09:05,542 INFO L290 TraceCheckUtils]: 60: Hoare triple {78504#(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; {78504#(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:09:05,542 INFO L290 TraceCheckUtils]: 61: Hoare triple {78504#(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; {78504#(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:09:05,543 INFO L290 TraceCheckUtils]: 62: Hoare triple {78504#(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 < 50);havoc #t~post7; {78504#(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:09:05,543 INFO L290 TraceCheckUtils]: 63: Hoare triple {78504#(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; {78504#(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:09:05,544 INFO L290 TraceCheckUtils]: 64: Hoare triple {78504#(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; {78504#(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:09:05,544 INFO L290 TraceCheckUtils]: 65: Hoare triple {78504#(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 < 50);havoc #t~post8; {78504#(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:09:05,544 INFO L272 TraceCheckUtils]: 66: Hoare triple {78504#(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)); {78314#true} is VALID [2022-04-27 13:09:05,545 INFO L290 TraceCheckUtils]: 67: Hoare triple {78314#true} ~cond := #in~cond; {78427#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:09:05,545 INFO L290 TraceCheckUtils]: 68: Hoare triple {78427#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {78431#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:09:05,545 INFO L290 TraceCheckUtils]: 69: Hoare triple {78431#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {78431#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:09:05,546 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {78431#(not (= |__VERIFIER_assert_#in~cond| 0))} {78504#(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; {78544#(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:09:05,547 INFO L272 TraceCheckUtils]: 71: Hoare triple {78544#(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)); {78548#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:09:05,547 INFO L290 TraceCheckUtils]: 72: Hoare triple {78548#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {78552#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:09:05,548 INFO L290 TraceCheckUtils]: 73: Hoare triple {78552#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {78315#false} is VALID [2022-04-27 13:09:05,548 INFO L290 TraceCheckUtils]: 74: Hoare triple {78315#false} assume !false; {78315#false} is VALID [2022-04-27 13:09:05,548 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:09:05,548 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:10:05,747 INFO L290 TraceCheckUtils]: 74: Hoare triple {78315#false} assume !false; {78315#false} is VALID [2022-04-27 13:10:05,748 INFO L290 TraceCheckUtils]: 73: Hoare triple {78552#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {78315#false} is VALID [2022-04-27 13:10:05,748 INFO L290 TraceCheckUtils]: 72: Hoare triple {78548#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {78552#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:10:05,749 INFO L272 TraceCheckUtils]: 71: Hoare triple {78568#(= 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)); {78548#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:10:05,750 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {78431#(not (= |__VERIFIER_assert_#in~cond| 0))} {78572#(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; {78568#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:10:05,750 INFO L290 TraceCheckUtils]: 69: Hoare triple {78431#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {78431#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:10:05,750 INFO L290 TraceCheckUtils]: 68: Hoare triple {78582#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {78431#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:10:05,751 INFO L290 TraceCheckUtils]: 67: Hoare triple {78314#true} ~cond := #in~cond; {78582#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:10:05,751 INFO L272 TraceCheckUtils]: 66: Hoare triple {78572#(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)); {78314#true} is VALID [2022-04-27 13:10:05,751 INFO L290 TraceCheckUtils]: 65: Hoare triple {78572#(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 < 50);havoc #t~post8; {78572#(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:10:05,752 INFO L290 TraceCheckUtils]: 64: Hoare triple {78572#(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; {78572#(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:10:05,752 INFO L290 TraceCheckUtils]: 63: Hoare triple {78572#(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; {78572#(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:10:05,752 INFO L290 TraceCheckUtils]: 62: Hoare triple {78572#(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 < 50);havoc #t~post7; {78572#(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:10:05,753 INFO L290 TraceCheckUtils]: 61: Hoare triple {78572#(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; {78572#(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:10:05,753 INFO L290 TraceCheckUtils]: 60: Hoare triple {78572#(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; {78572#(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:10:05,753 INFO L290 TraceCheckUtils]: 59: Hoare triple {78572#(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 < 50);havoc #t~post6; {78572#(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:10:05,754 INFO L290 TraceCheckUtils]: 58: Hoare triple {78572#(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; {78572#(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:10:05,769 INFO L290 TraceCheckUtils]: 57: Hoare triple {78613#(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; {78572#(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:10:05,769 INFO L290 TraceCheckUtils]: 56: Hoare triple {78613#(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); {78613#(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:10:05,770 INFO L290 TraceCheckUtils]: 55: Hoare triple {78613#(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 < 50);havoc #t~post7; {78613#(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:10:05,770 INFO L290 TraceCheckUtils]: 54: Hoare triple {78613#(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; {78613#(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:10:05,775 INFO L290 TraceCheckUtils]: 53: Hoare triple {78626#(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; {78613#(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:10:05,775 INFO L290 TraceCheckUtils]: 52: Hoare triple {78630#(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); {78626#(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:10:05,776 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {78314#true} {78630#(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; {78630#(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:10:05,776 INFO L290 TraceCheckUtils]: 50: Hoare triple {78314#true} assume true; {78314#true} is VALID [2022-04-27 13:10:05,776 INFO L290 TraceCheckUtils]: 49: Hoare triple {78314#true} assume !(0 == ~cond); {78314#true} is VALID [2022-04-27 13:10:05,776 INFO L290 TraceCheckUtils]: 48: Hoare triple {78314#true} ~cond := #in~cond; {78314#true} is VALID [2022-04-27 13:10:05,776 INFO L272 TraceCheckUtils]: 47: Hoare triple {78630#(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)); {78314#true} is VALID [2022-04-27 13:10:05,777 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {78314#true} {78630#(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; {78630#(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:10:05,777 INFO L290 TraceCheckUtils]: 45: Hoare triple {78314#true} assume true; {78314#true} is VALID [2022-04-27 13:10:05,777 INFO L290 TraceCheckUtils]: 44: Hoare triple {78314#true} assume !(0 == ~cond); {78314#true} is VALID [2022-04-27 13:10:05,777 INFO L290 TraceCheckUtils]: 43: Hoare triple {78314#true} ~cond := #in~cond; {78314#true} is VALID [2022-04-27 13:10:05,777 INFO L272 TraceCheckUtils]: 42: Hoare triple {78630#(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)); {78314#true} is VALID [2022-04-27 13:10:05,778 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {78314#true} {78630#(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; {78630#(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:10:05,778 INFO L290 TraceCheckUtils]: 40: Hoare triple {78314#true} assume true; {78314#true} is VALID [2022-04-27 13:10:05,778 INFO L290 TraceCheckUtils]: 39: Hoare triple {78314#true} assume !(0 == ~cond); {78314#true} is VALID [2022-04-27 13:10:05,778 INFO L290 TraceCheckUtils]: 38: Hoare triple {78314#true} ~cond := #in~cond; {78314#true} is VALID [2022-04-27 13:10:05,778 INFO L272 TraceCheckUtils]: 37: Hoare triple {78630#(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)); {78314#true} is VALID [2022-04-27 13:10:05,779 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {78431#(not (= |__VERIFIER_assert_#in~cond| 0))} {78679#(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; {78630#(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:10:05,779 INFO L290 TraceCheckUtils]: 35: Hoare triple {78431#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {78431#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:10:05,779 INFO L290 TraceCheckUtils]: 34: Hoare triple {78582#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {78431#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:10:05,780 INFO L290 TraceCheckUtils]: 33: Hoare triple {78314#true} ~cond := #in~cond; {78582#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:10:05,780 INFO L272 TraceCheckUtils]: 32: Hoare triple {78679#(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)); {78314#true} is VALID [2022-04-27 13:10:05,780 INFO L290 TraceCheckUtils]: 31: Hoare triple {78679#(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 < 50);havoc #t~post8; {78679#(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:10:05,781 INFO L290 TraceCheckUtils]: 30: Hoare triple {78679#(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; {78679#(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:10:05,781 INFO L290 TraceCheckUtils]: 29: Hoare triple {78701#(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; {78679#(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:10:05,782 INFO L290 TraceCheckUtils]: 28: Hoare triple {78701#(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 < 50);havoc #t~post7; {78701#(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:10:05,782 INFO L290 TraceCheckUtils]: 27: Hoare triple {78701#(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; {78701#(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:10:05,784 INFO L290 TraceCheckUtils]: 26: Hoare triple {78314#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {78701#(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:10:05,784 INFO L290 TraceCheckUtils]: 25: Hoare triple {78314#true} assume !!(#t~post6 < 50);havoc #t~post6; {78314#true} is VALID [2022-04-27 13:10:05,784 INFO L290 TraceCheckUtils]: 24: Hoare triple {78314#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {78314#true} is VALID [2022-04-27 13:10:05,784 INFO L290 TraceCheckUtils]: 23: Hoare triple {78314#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; {78314#true} is VALID [2022-04-27 13:10:05,784 INFO L290 TraceCheckUtils]: 22: Hoare triple {78314#true} assume !(~c~0 >= ~b~0); {78314#true} is VALID [2022-04-27 13:10:05,784 INFO L290 TraceCheckUtils]: 21: Hoare triple {78314#true} assume !!(#t~post7 < 50);havoc #t~post7; {78314#true} is VALID [2022-04-27 13:10:05,784 INFO L290 TraceCheckUtils]: 20: Hoare triple {78314#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {78314#true} is VALID [2022-04-27 13:10:05,784 INFO L290 TraceCheckUtils]: 19: Hoare triple {78314#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {78314#true} is VALID [2022-04-27 13:10:05,784 INFO L290 TraceCheckUtils]: 18: Hoare triple {78314#true} assume !!(#t~post6 < 50);havoc #t~post6; {78314#true} is VALID [2022-04-27 13:10:05,784 INFO L290 TraceCheckUtils]: 17: Hoare triple {78314#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {78314#true} is VALID [2022-04-27 13:10:05,784 INFO L290 TraceCheckUtils]: 16: Hoare triple {78314#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {78314#true} is VALID [2022-04-27 13:10:05,784 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {78314#true} {78314#true} #96#return; {78314#true} is VALID [2022-04-27 13:10:05,784 INFO L290 TraceCheckUtils]: 14: Hoare triple {78314#true} assume true; {78314#true} is VALID [2022-04-27 13:10:05,784 INFO L290 TraceCheckUtils]: 13: Hoare triple {78314#true} assume !(0 == ~cond); {78314#true} is VALID [2022-04-27 13:10:05,784 INFO L290 TraceCheckUtils]: 12: Hoare triple {78314#true} ~cond := #in~cond; {78314#true} is VALID [2022-04-27 13:10:05,784 INFO L272 TraceCheckUtils]: 11: Hoare triple {78314#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {78314#true} is VALID [2022-04-27 13:10:05,784 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {78314#true} {78314#true} #94#return; {78314#true} is VALID [2022-04-27 13:10:05,784 INFO L290 TraceCheckUtils]: 9: Hoare triple {78314#true} assume true; {78314#true} is VALID [2022-04-27 13:10:05,784 INFO L290 TraceCheckUtils]: 8: Hoare triple {78314#true} assume !(0 == ~cond); {78314#true} is VALID [2022-04-27 13:10:05,784 INFO L290 TraceCheckUtils]: 7: Hoare triple {78314#true} ~cond := #in~cond; {78314#true} is VALID [2022-04-27 13:10:05,784 INFO L272 TraceCheckUtils]: 6: Hoare triple {78314#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {78314#true} is VALID [2022-04-27 13:10:05,785 INFO L290 TraceCheckUtils]: 5: Hoare triple {78314#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; {78314#true} is VALID [2022-04-27 13:10:05,785 INFO L272 TraceCheckUtils]: 4: Hoare triple {78314#true} call #t~ret9 := main(); {78314#true} is VALID [2022-04-27 13:10:05,785 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {78314#true} {78314#true} #108#return; {78314#true} is VALID [2022-04-27 13:10:05,785 INFO L290 TraceCheckUtils]: 2: Hoare triple {78314#true} assume true; {78314#true} is VALID [2022-04-27 13:10:05,785 INFO L290 TraceCheckUtils]: 1: Hoare triple {78314#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; {78314#true} is VALID [2022-04-27 13:10:05,785 INFO L272 TraceCheckUtils]: 0: Hoare triple {78314#true} call ULTIMATE.init(); {78314#true} is VALID [2022-04-27 13:10:05,785 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:10:05,785 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:10:05,785 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [220592465] [2022-04-27 13:10:05,785 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:10:05,785 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2005383722] [2022-04-27 13:10:05,785 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2005383722] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:10:05,785 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:10:05,785 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 13] total 28 [2022-04-27 13:10:05,786 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1220777510] [2022-04-27 13:10:05,786 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:10:05,786 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:10:05,786 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:10:05,786 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:10:05,916 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:10:05,916 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 28 states [2022-04-27 13:10:05,917 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:10:05,917 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2022-04-27 13:10:05,917 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=631, Unknown=0, NotChecked=0, Total=756 [2022-04-27 13:10:05,917 INFO L87 Difference]: Start difference. First operand 2372 states and 3297 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:10:23,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:10:26,350 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.21s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:10:28,354 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:10:36,213 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:10:38,216 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:10:40,355 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:10:42,233 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.31s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:10:51,463 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:10:51,463 INFO L93 Difference]: Finished difference Result 2869 states and 3894 transitions. [2022-04-27 13:10:51,463 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 33 states. [2022-04-27 13:10:51,463 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:10:51,463 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:10:51,463 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:10:51,465 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 245 transitions. [2022-04-27 13:10:51,465 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:10:51,467 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 245 transitions. [2022-04-27 13:10:51,467 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 33 states and 245 transitions. [2022-04-27 13:10:52,081 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 245 edges. 245 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:10:52,418 INFO L225 Difference]: With dead ends: 2869 [2022-04-27 13:10:52,419 INFO L226 Difference]: Without dead ends: 2863 [2022-04-27 13:10:52,420 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 180 GetRequests, 130 SyntacticMatches, 2 SemanticMatches, 48 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 607 ImplicationChecksByTransitivity, 6.4s TimeCoverageRelationStatistics Valid=469, Invalid=1981, Unknown=0, NotChecked=0, Total=2450 [2022-04-27 13:10:52,420 INFO L413 NwaCegarLoop]: 61 mSDtfsCounter, 308 mSDsluCounter, 555 mSDsCounter, 0 mSdLazyCounter, 1088 mSolverCounterSat, 286 mSolverCounterUnsat, 5 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 23.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 314 SdHoareTripleChecker+Valid, 616 SdHoareTripleChecker+Invalid, 1379 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 286 IncrementalHoareTripleChecker+Valid, 1088 IncrementalHoareTripleChecker+Invalid, 5 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 23.6s IncrementalHoareTripleChecker+Time [2022-04-27 13:10:52,420 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [314 Valid, 616 Invalid, 1379 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [286 Valid, 1088 Invalid, 5 Unknown, 0 Unchecked, 23.6s Time] [2022-04-27 13:10:52,421 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2863 states. [2022-04-27 13:10:56,630 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2863 to 2736. [2022-04-27 13:10:56,630 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:10:56,633 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2863 states. Second operand has 2736 states, 1985 states have (on average 1.2916876574307306) internal successors, (2564), 2026 states have internal predecessors, (2564), 594 states have call successors, (594), 158 states have call predecessors, (594), 156 states have return successors, (587), 551 states have call predecessors, (587), 587 states have call successors, (587) [2022-04-27 13:10:56,634 INFO L74 IsIncluded]: Start isIncluded. First operand 2863 states. Second operand has 2736 states, 1985 states have (on average 1.2916876574307306) internal successors, (2564), 2026 states have internal predecessors, (2564), 594 states have call successors, (594), 158 states have call predecessors, (594), 156 states have return successors, (587), 551 states have call predecessors, (587), 587 states have call successors, (587) [2022-04-27 13:10:56,636 INFO L87 Difference]: Start difference. First operand 2863 states. Second operand has 2736 states, 1985 states have (on average 1.2916876574307306) internal successors, (2564), 2026 states have internal predecessors, (2564), 594 states have call successors, (594), 158 states have call predecessors, (594), 156 states have return successors, (587), 551 states have call predecessors, (587), 587 states have call successors, (587) [2022-04-27 13:10:56,837 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:10:56,838 INFO L93 Difference]: Finished difference Result 2863 states and 3880 transitions. [2022-04-27 13:10:56,838 INFO L276 IsEmpty]: Start isEmpty. Operand 2863 states and 3880 transitions. [2022-04-27 13:10:56,841 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:10:56,841 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:10:56,844 INFO L74 IsIncluded]: Start isIncluded. First operand has 2736 states, 1985 states have (on average 1.2916876574307306) internal successors, (2564), 2026 states have internal predecessors, (2564), 594 states have call successors, (594), 158 states have call predecessors, (594), 156 states have return successors, (587), 551 states have call predecessors, (587), 587 states have call successors, (587) Second operand 2863 states. [2022-04-27 13:10:56,846 INFO L87 Difference]: Start difference. First operand has 2736 states, 1985 states have (on average 1.2916876574307306) internal successors, (2564), 2026 states have internal predecessors, (2564), 594 states have call successors, (594), 158 states have call predecessors, (594), 156 states have return successors, (587), 551 states have call predecessors, (587), 587 states have call successors, (587) Second operand 2863 states. [2022-04-27 13:10:57,054 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:10:57,054 INFO L93 Difference]: Finished difference Result 2863 states and 3880 transitions. [2022-04-27 13:10:57,054 INFO L276 IsEmpty]: Start isEmpty. Operand 2863 states and 3880 transitions. [2022-04-27 13:10:57,058 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:10:57,058 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:10:57,059 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:10:57,059 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:10:57,061 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2736 states, 1985 states have (on average 1.2916876574307306) internal successors, (2564), 2026 states have internal predecessors, (2564), 594 states have call successors, (594), 158 states have call predecessors, (594), 156 states have return successors, (587), 551 states have call predecessors, (587), 587 states have call successors, (587) [2022-04-27 13:10:57,364 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2736 states to 2736 states and 3745 transitions. [2022-04-27 13:10:57,364 INFO L78 Accepts]: Start accepts. Automaton has 2736 states and 3745 transitions. Word has length 75 [2022-04-27 13:10:57,365 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:10:57,365 INFO L495 AbstractCegarLoop]: Abstraction has 2736 states and 3745 transitions. [2022-04-27 13:10:57,365 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:10:57,365 INFO L276 IsEmpty]: Start isEmpty. Operand 2736 states and 3745 transitions. [2022-04-27 13:10:57,365 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 89 [2022-04-27 13:10:57,365 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:10:57,365 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:10:57,382 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Forceful destruction successful, exit code 0 [2022-04-27 13:10:57,571 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:10:57,571 INFO L420 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:10:57,571 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:10:57,571 INFO L85 PathProgramCache]: Analyzing trace with hash -1082523945, now seen corresponding path program 1 times [2022-04-27 13:10:57,572 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:10:57,572 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [458767780] [2022-04-27 13:10:57,572 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:10:57,572 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:10:57,582 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:10:57,583 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1867506243] [2022-04-27 13:10:57,583 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:10:57,583 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:10:57,583 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:10:57,584 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:10:57,585 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:10:57,637 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:10:57,639 INFO L263 TraceCheckSpWp]: Trace formula consists of 263 conjuncts, 86 conjunts are in the unsatisfiable core [2022-04-27 13:10:57,654 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:10:57,655 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:10:59,675 INFO L272 TraceCheckUtils]: 0: Hoare triple {92612#true} call ULTIMATE.init(); {92612#true} is VALID [2022-04-27 13:10:59,675 INFO L290 TraceCheckUtils]: 1: Hoare triple {92612#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; {92612#true} is VALID [2022-04-27 13:10:59,675 INFO L290 TraceCheckUtils]: 2: Hoare triple {92612#true} assume true; {92612#true} is VALID [2022-04-27 13:10:59,675 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {92612#true} {92612#true} #108#return; {92612#true} is VALID [2022-04-27 13:10:59,675 INFO L272 TraceCheckUtils]: 4: Hoare triple {92612#true} call #t~ret9 := main(); {92612#true} is VALID [2022-04-27 13:10:59,675 INFO L290 TraceCheckUtils]: 5: Hoare triple {92612#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; {92612#true} is VALID [2022-04-27 13:10:59,675 INFO L272 TraceCheckUtils]: 6: Hoare triple {92612#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {92612#true} is VALID [2022-04-27 13:10:59,675 INFO L290 TraceCheckUtils]: 7: Hoare triple {92612#true} ~cond := #in~cond; {92612#true} is VALID [2022-04-27 13:10:59,675 INFO L290 TraceCheckUtils]: 8: Hoare triple {92612#true} assume !(0 == ~cond); {92612#true} is VALID [2022-04-27 13:10:59,675 INFO L290 TraceCheckUtils]: 9: Hoare triple {92612#true} assume true; {92612#true} is VALID [2022-04-27 13:10:59,675 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {92612#true} {92612#true} #94#return; {92612#true} is VALID [2022-04-27 13:10:59,675 INFO L272 TraceCheckUtils]: 11: Hoare triple {92612#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {92612#true} is VALID [2022-04-27 13:10:59,675 INFO L290 TraceCheckUtils]: 12: Hoare triple {92612#true} ~cond := #in~cond; {92612#true} is VALID [2022-04-27 13:10:59,676 INFO L290 TraceCheckUtils]: 13: Hoare triple {92612#true} assume !(0 == ~cond); {92612#true} is VALID [2022-04-27 13:10:59,676 INFO L290 TraceCheckUtils]: 14: Hoare triple {92612#true} assume true; {92612#true} is VALID [2022-04-27 13:10:59,676 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {92612#true} {92612#true} #96#return; {92612#true} is VALID [2022-04-27 13:10:59,676 INFO L290 TraceCheckUtils]: 16: Hoare triple {92612#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {92665#(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:10:59,676 INFO L290 TraceCheckUtils]: 17: Hoare triple {92665#(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; {92665#(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:10:59,677 INFO L290 TraceCheckUtils]: 18: Hoare triple {92665#(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 < 50);havoc #t~post6; {92665#(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:10:59,677 INFO L290 TraceCheckUtils]: 19: Hoare triple {92665#(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; {92675#(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:10:59,678 INFO L290 TraceCheckUtils]: 20: Hoare triple {92675#(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; {92675#(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:10:59,678 INFO L290 TraceCheckUtils]: 21: Hoare triple {92675#(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 < 50);havoc #t~post7; {92675#(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:10:59,679 INFO L290 TraceCheckUtils]: 22: Hoare triple {92675#(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); {92685#(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:10:59,680 INFO L290 TraceCheckUtils]: 23: Hoare triple {92685#(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; {92689#(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:10:59,680 INFO L290 TraceCheckUtils]: 24: Hoare triple {92689#(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; {92689#(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:10:59,681 INFO L290 TraceCheckUtils]: 25: Hoare triple {92689#(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 < 50);havoc #t~post6; {92689#(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:10:59,681 INFO L290 TraceCheckUtils]: 26: Hoare triple {92689#(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; {92699#(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:10:59,682 INFO L290 TraceCheckUtils]: 27: Hoare triple {92699#(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; {92699#(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:10:59,682 INFO L290 TraceCheckUtils]: 28: Hoare triple {92699#(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 < 50);havoc #t~post7; {92699#(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:10:59,683 INFO L290 TraceCheckUtils]: 29: Hoare triple {92699#(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; {92709#(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:10:59,683 INFO L290 TraceCheckUtils]: 30: Hoare triple {92709#(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; {92709#(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:10:59,684 INFO L290 TraceCheckUtils]: 31: Hoare triple {92709#(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 < 50);havoc #t~post8; {92709#(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:10:59,684 INFO L272 TraceCheckUtils]: 32: Hoare triple {92709#(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)); {92612#true} is VALID [2022-04-27 13:10:59,684 INFO L290 TraceCheckUtils]: 33: Hoare triple {92612#true} ~cond := #in~cond; {92612#true} is VALID [2022-04-27 13:10:59,684 INFO L290 TraceCheckUtils]: 34: Hoare triple {92612#true} assume !(0 == ~cond); {92612#true} is VALID [2022-04-27 13:10:59,684 INFO L290 TraceCheckUtils]: 35: Hoare triple {92612#true} assume true; {92612#true} is VALID [2022-04-27 13:10:59,685 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {92612#true} {92709#(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; {92709#(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:10:59,685 INFO L272 TraceCheckUtils]: 37: Hoare triple {92709#(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)); {92612#true} is VALID [2022-04-27 13:10:59,685 INFO L290 TraceCheckUtils]: 38: Hoare triple {92612#true} ~cond := #in~cond; {92612#true} is VALID [2022-04-27 13:10:59,685 INFO L290 TraceCheckUtils]: 39: Hoare triple {92612#true} assume !(0 == ~cond); {92612#true} is VALID [2022-04-27 13:10:59,685 INFO L290 TraceCheckUtils]: 40: Hoare triple {92612#true} assume true; {92612#true} is VALID [2022-04-27 13:10:59,686 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {92612#true} {92709#(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; {92709#(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:10:59,686 INFO L272 TraceCheckUtils]: 42: Hoare triple {92709#(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)); {92612#true} is VALID [2022-04-27 13:10:59,686 INFO L290 TraceCheckUtils]: 43: Hoare triple {92612#true} ~cond := #in~cond; {92612#true} is VALID [2022-04-27 13:10:59,686 INFO L290 TraceCheckUtils]: 44: Hoare triple {92612#true} assume !(0 == ~cond); {92612#true} is VALID [2022-04-27 13:10:59,686 INFO L290 TraceCheckUtils]: 45: Hoare triple {92612#true} assume true; {92612#true} is VALID [2022-04-27 13:10:59,686 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {92612#true} {92709#(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; {92709#(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:10:59,686 INFO L272 TraceCheckUtils]: 47: Hoare triple {92709#(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)); {92612#true} is VALID [2022-04-27 13:10:59,686 INFO L290 TraceCheckUtils]: 48: Hoare triple {92612#true} ~cond := #in~cond; {92612#true} is VALID [2022-04-27 13:10:59,687 INFO L290 TraceCheckUtils]: 49: Hoare triple {92612#true} assume !(0 == ~cond); {92612#true} is VALID [2022-04-27 13:10:59,687 INFO L290 TraceCheckUtils]: 50: Hoare triple {92612#true} assume true; {92612#true} is VALID [2022-04-27 13:10:59,687 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {92612#true} {92709#(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; {92709#(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:10:59,688 INFO L290 TraceCheckUtils]: 52: Hoare triple {92709#(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; {92779#(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:10:59,688 INFO L290 TraceCheckUtils]: 53: Hoare triple {92779#(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; {92779#(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:10:59,689 INFO L290 TraceCheckUtils]: 54: Hoare triple {92779#(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 < 50);havoc #t~post8; {92779#(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:10:59,689 INFO L272 TraceCheckUtils]: 55: Hoare triple {92779#(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)); {92612#true} is VALID [2022-04-27 13:10:59,689 INFO L290 TraceCheckUtils]: 56: Hoare triple {92612#true} ~cond := #in~cond; {92792#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:10:59,689 INFO L290 TraceCheckUtils]: 57: Hoare triple {92792#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:10:59,689 INFO L290 TraceCheckUtils]: 58: Hoare triple {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:10:59,692 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} {92779#(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; {92803#(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:10:59,692 INFO L272 TraceCheckUtils]: 60: Hoare triple {92803#(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)); {92612#true} is VALID [2022-04-27 13:10:59,692 INFO L290 TraceCheckUtils]: 61: Hoare triple {92612#true} ~cond := #in~cond; {92792#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:10:59,692 INFO L290 TraceCheckUtils]: 62: Hoare triple {92792#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:10:59,692 INFO L290 TraceCheckUtils]: 63: Hoare triple {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:10:59,693 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} {92803#(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; {92819#(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:10:59,694 INFO L272 TraceCheckUtils]: 65: Hoare triple {92819#(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)); {92612#true} is VALID [2022-04-27 13:10:59,694 INFO L290 TraceCheckUtils]: 66: Hoare triple {92612#true} ~cond := #in~cond; {92612#true} is VALID [2022-04-27 13:10:59,694 INFO L290 TraceCheckUtils]: 67: Hoare triple {92612#true} assume !(0 == ~cond); {92612#true} is VALID [2022-04-27 13:10:59,694 INFO L290 TraceCheckUtils]: 68: Hoare triple {92612#true} assume true; {92612#true} is VALID [2022-04-27 13:10:59,694 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {92612#true} {92819#(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; {92819#(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:10:59,694 INFO L272 TraceCheckUtils]: 70: Hoare triple {92819#(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)); {92612#true} is VALID [2022-04-27 13:10:59,695 INFO L290 TraceCheckUtils]: 71: Hoare triple {92612#true} ~cond := #in~cond; {92792#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:10:59,695 INFO L290 TraceCheckUtils]: 72: Hoare triple {92792#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:10:59,695 INFO L290 TraceCheckUtils]: 73: Hoare triple {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:10:59,696 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} {92819#(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; {92819#(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:10:59,696 INFO L290 TraceCheckUtils]: 75: Hoare triple {92819#(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); {92819#(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:10:59,698 INFO L290 TraceCheckUtils]: 76: Hoare triple {92819#(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; {92856#(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:10:59,698 INFO L290 TraceCheckUtils]: 77: Hoare triple {92856#(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; {92856#(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:10:59,699 INFO L290 TraceCheckUtils]: 78: Hoare triple {92856#(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 < 50);havoc #t~post7; {92856#(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:10:59,699 INFO L290 TraceCheckUtils]: 79: Hoare triple {92856#(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); {92866#(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:10:59,701 INFO L290 TraceCheckUtils]: 80: Hoare triple {92866#(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; {92870#(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:10:59,701 INFO L290 TraceCheckUtils]: 81: Hoare triple {92870#(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; {92870#(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:10:59,702 INFO L290 TraceCheckUtils]: 82: Hoare triple {92870#(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 < 50);havoc #t~post6; {92870#(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:10:59,702 INFO L290 TraceCheckUtils]: 83: Hoare triple {92870#(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); {92880#(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:10:59,704 INFO L272 TraceCheckUtils]: 84: Hoare triple {92880#(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)); {92884#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:10:59,705 INFO L290 TraceCheckUtils]: 85: Hoare triple {92884#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {92888#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:10:59,705 INFO L290 TraceCheckUtils]: 86: Hoare triple {92888#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {92613#false} is VALID [2022-04-27 13:10:59,705 INFO L290 TraceCheckUtils]: 87: Hoare triple {92613#false} assume !false; {92613#false} is VALID [2022-04-27 13:10:59,705 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:10:59,705 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:12:12,842 INFO L290 TraceCheckUtils]: 87: Hoare triple {92613#false} assume !false; {92613#false} is VALID [2022-04-27 13:12:12,843 INFO L290 TraceCheckUtils]: 86: Hoare triple {92888#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {92613#false} is VALID [2022-04-27 13:12:12,843 INFO L290 TraceCheckUtils]: 85: Hoare triple {92884#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {92888#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:12:12,844 INFO L272 TraceCheckUtils]: 84: Hoare triple {92904#(= (+ (* 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)); {92884#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:12:12,844 INFO L290 TraceCheckUtils]: 83: Hoare triple {92908#(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); {92904#(= (+ (* 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:12:12,844 INFO L290 TraceCheckUtils]: 82: Hoare triple {92908#(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 < 50);havoc #t~post6; {92908#(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:12:12,845 INFO L290 TraceCheckUtils]: 81: Hoare triple {92908#(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; {92908#(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:12:13,235 INFO L290 TraceCheckUtils]: 80: Hoare triple {92918#(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; {92908#(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:12:13,236 INFO L290 TraceCheckUtils]: 79: Hoare triple {92922#(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); {92918#(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:12:13,236 INFO L290 TraceCheckUtils]: 78: Hoare triple {92922#(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 < 50);havoc #t~post7; {92922#(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:12:13,237 INFO L290 TraceCheckUtils]: 77: Hoare triple {92922#(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; {92922#(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:12:13,337 INFO L290 TraceCheckUtils]: 76: Hoare triple {92932#(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; {92922#(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:12:13,337 INFO L290 TraceCheckUtils]: 75: Hoare triple {92932#(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); {92932#(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:12:13,338 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} {92939#(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; {92932#(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:12:13,339 INFO L290 TraceCheckUtils]: 73: Hoare triple {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:12:13,339 INFO L290 TraceCheckUtils]: 72: Hoare triple {92949#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:12:13,339 INFO L290 TraceCheckUtils]: 71: Hoare triple {92612#true} ~cond := #in~cond; {92949#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:12:13,339 INFO L272 TraceCheckUtils]: 70: Hoare triple {92939#(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)); {92612#true} is VALID [2022-04-27 13:12:13,340 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {92612#true} {92939#(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; {92939#(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:12:13,340 INFO L290 TraceCheckUtils]: 68: Hoare triple {92612#true} assume true; {92612#true} is VALID [2022-04-27 13:12:13,340 INFO L290 TraceCheckUtils]: 67: Hoare triple {92612#true} assume !(0 == ~cond); {92612#true} is VALID [2022-04-27 13:12:13,340 INFO L290 TraceCheckUtils]: 66: Hoare triple {92612#true} ~cond := #in~cond; {92612#true} is VALID [2022-04-27 13:12:13,340 INFO L272 TraceCheckUtils]: 65: Hoare triple {92939#(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)); {92612#true} is VALID [2022-04-27 13:12:13,341 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} {92971#(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; {92939#(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:12:13,341 INFO L290 TraceCheckUtils]: 63: Hoare triple {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:12:13,341 INFO L290 TraceCheckUtils]: 62: Hoare triple {92949#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:12:13,342 INFO L290 TraceCheckUtils]: 61: Hoare triple {92612#true} ~cond := #in~cond; {92949#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:12:13,342 INFO L272 TraceCheckUtils]: 60: Hoare triple {92971#(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)); {92612#true} is VALID [2022-04-27 13:12:13,343 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} {92987#(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; {92971#(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:12:13,343 INFO L290 TraceCheckUtils]: 58: Hoare triple {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:12:13,343 INFO L290 TraceCheckUtils]: 57: Hoare triple {92949#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {92796#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:12:13,344 INFO L290 TraceCheckUtils]: 56: Hoare triple {92612#true} ~cond := #in~cond; {92949#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:12:13,344 INFO L272 TraceCheckUtils]: 55: Hoare triple {92987#(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)); {92612#true} is VALID [2022-04-27 13:12:13,344 INFO L290 TraceCheckUtils]: 54: Hoare triple {92987#(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 < 50);havoc #t~post8; {92987#(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:12:13,345 INFO L290 TraceCheckUtils]: 53: Hoare triple {92987#(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; {92987#(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:12:13,395 INFO L290 TraceCheckUtils]: 52: Hoare triple {93009#(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; {92987#(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:12:13,396 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {92612#true} {93009#(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; {93009#(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:12:13,396 INFO L290 TraceCheckUtils]: 50: Hoare triple {92612#true} assume true; {92612#true} is VALID [2022-04-27 13:12:13,396 INFO L290 TraceCheckUtils]: 49: Hoare triple {92612#true} assume !(0 == ~cond); {92612#true} is VALID [2022-04-27 13:12:13,396 INFO L290 TraceCheckUtils]: 48: Hoare triple {92612#true} ~cond := #in~cond; {92612#true} is VALID [2022-04-27 13:12:13,396 INFO L272 TraceCheckUtils]: 47: Hoare triple {93009#(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)); {92612#true} is VALID [2022-04-27 13:12:13,397 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {92612#true} {93009#(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; {93009#(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:12:13,397 INFO L290 TraceCheckUtils]: 45: Hoare triple {92612#true} assume true; {92612#true} is VALID [2022-04-27 13:12:13,397 INFO L290 TraceCheckUtils]: 44: Hoare triple {92612#true} assume !(0 == ~cond); {92612#true} is VALID [2022-04-27 13:12:13,397 INFO L290 TraceCheckUtils]: 43: Hoare triple {92612#true} ~cond := #in~cond; {92612#true} is VALID [2022-04-27 13:12:13,397 INFO L272 TraceCheckUtils]: 42: Hoare triple {93009#(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)); {92612#true} is VALID [2022-04-27 13:12:13,397 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {92612#true} {93009#(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; {93009#(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:12:13,397 INFO L290 TraceCheckUtils]: 40: Hoare triple {92612#true} assume true; {92612#true} is VALID [2022-04-27 13:12:13,397 INFO L290 TraceCheckUtils]: 39: Hoare triple {92612#true} assume !(0 == ~cond); {92612#true} is VALID [2022-04-27 13:12:13,398 INFO L290 TraceCheckUtils]: 38: Hoare triple {92612#true} ~cond := #in~cond; {92612#true} is VALID [2022-04-27 13:12:13,398 INFO L272 TraceCheckUtils]: 37: Hoare triple {93009#(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)); {92612#true} is VALID [2022-04-27 13:12:13,398 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {92612#true} {93009#(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; {93009#(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:12:13,398 INFO L290 TraceCheckUtils]: 35: Hoare triple {92612#true} assume true; {92612#true} is VALID [2022-04-27 13:12:13,398 INFO L290 TraceCheckUtils]: 34: Hoare triple {92612#true} assume !(0 == ~cond); {92612#true} is VALID [2022-04-27 13:12:13,398 INFO L290 TraceCheckUtils]: 33: Hoare triple {92612#true} ~cond := #in~cond; {92612#true} is VALID [2022-04-27 13:12:13,398 INFO L272 TraceCheckUtils]: 32: Hoare triple {93009#(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)); {92612#true} is VALID [2022-04-27 13:12:13,399 INFO L290 TraceCheckUtils]: 31: Hoare triple {93009#(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 < 50);havoc #t~post8; {93009#(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:12:13,400 INFO L290 TraceCheckUtils]: 30: Hoare triple {93009#(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; {93009#(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:12:13,400 INFO L290 TraceCheckUtils]: 29: Hoare triple {93079#(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; {93009#(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:12:13,401 INFO L290 TraceCheckUtils]: 28: Hoare triple {93079#(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 < 50);havoc #t~post7; {93079#(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:12:13,401 INFO L290 TraceCheckUtils]: 27: Hoare triple {93079#(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; {93079#(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:12:13,403 INFO L290 TraceCheckUtils]: 26: Hoare triple {92612#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {93079#(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:12:13,403 INFO L290 TraceCheckUtils]: 25: Hoare triple {92612#true} assume !!(#t~post6 < 50);havoc #t~post6; {92612#true} is VALID [2022-04-27 13:12:13,403 INFO L290 TraceCheckUtils]: 24: Hoare triple {92612#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92612#true} is VALID [2022-04-27 13:12:13,403 INFO L290 TraceCheckUtils]: 23: Hoare triple {92612#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; {92612#true} is VALID [2022-04-27 13:12:13,403 INFO L290 TraceCheckUtils]: 22: Hoare triple {92612#true} assume !(~c~0 >= ~b~0); {92612#true} is VALID [2022-04-27 13:12:13,403 INFO L290 TraceCheckUtils]: 21: Hoare triple {92612#true} assume !!(#t~post7 < 50);havoc #t~post7; {92612#true} is VALID [2022-04-27 13:12:13,403 INFO L290 TraceCheckUtils]: 20: Hoare triple {92612#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92612#true} is VALID [2022-04-27 13:12:13,403 INFO L290 TraceCheckUtils]: 19: Hoare triple {92612#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92612#true} is VALID [2022-04-27 13:12:13,403 INFO L290 TraceCheckUtils]: 18: Hoare triple {92612#true} assume !!(#t~post6 < 50);havoc #t~post6; {92612#true} is VALID [2022-04-27 13:12:13,403 INFO L290 TraceCheckUtils]: 17: Hoare triple {92612#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92612#true} is VALID [2022-04-27 13:12:13,403 INFO L290 TraceCheckUtils]: 16: Hoare triple {92612#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {92612#true} is VALID [2022-04-27 13:12:13,403 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {92612#true} {92612#true} #96#return; {92612#true} is VALID [2022-04-27 13:12:13,403 INFO L290 TraceCheckUtils]: 14: Hoare triple {92612#true} assume true; {92612#true} is VALID [2022-04-27 13:12:13,403 INFO L290 TraceCheckUtils]: 13: Hoare triple {92612#true} assume !(0 == ~cond); {92612#true} is VALID [2022-04-27 13:12:13,403 INFO L290 TraceCheckUtils]: 12: Hoare triple {92612#true} ~cond := #in~cond; {92612#true} is VALID [2022-04-27 13:12:13,403 INFO L272 TraceCheckUtils]: 11: Hoare triple {92612#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {92612#true} is VALID [2022-04-27 13:12:13,403 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {92612#true} {92612#true} #94#return; {92612#true} is VALID [2022-04-27 13:12:13,403 INFO L290 TraceCheckUtils]: 9: Hoare triple {92612#true} assume true; {92612#true} is VALID [2022-04-27 13:12:13,403 INFO L290 TraceCheckUtils]: 8: Hoare triple {92612#true} assume !(0 == ~cond); {92612#true} is VALID [2022-04-27 13:12:13,403 INFO L290 TraceCheckUtils]: 7: Hoare triple {92612#true} ~cond := #in~cond; {92612#true} is VALID [2022-04-27 13:12:13,403 INFO L272 TraceCheckUtils]: 6: Hoare triple {92612#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {92612#true} is VALID [2022-04-27 13:12:13,404 INFO L290 TraceCheckUtils]: 5: Hoare triple {92612#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; {92612#true} is VALID [2022-04-27 13:12:13,404 INFO L272 TraceCheckUtils]: 4: Hoare triple {92612#true} call #t~ret9 := main(); {92612#true} is VALID [2022-04-27 13:12:13,404 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {92612#true} {92612#true} #108#return; {92612#true} is VALID [2022-04-27 13:12:13,404 INFO L290 TraceCheckUtils]: 2: Hoare triple {92612#true} assume true; {92612#true} is VALID [2022-04-27 13:12:13,404 INFO L290 TraceCheckUtils]: 1: Hoare triple {92612#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; {92612#true} is VALID [2022-04-27 13:12:13,404 INFO L272 TraceCheckUtils]: 0: Hoare triple {92612#true} call ULTIMATE.init(); {92612#true} is VALID [2022-04-27 13:12:13,404 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:12:13,404 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:12:13,404 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [458767780] [2022-04-27 13:12:13,404 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:12:13,404 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1867506243] [2022-04-27 13:12:13,405 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1867506243] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:12:13,405 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:12:13,405 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 16] total 30 [2022-04-27 13:12:13,405 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [353547299] [2022-04-27 13:12:13,405 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:12:13,405 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:12:13,405 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:12:13,406 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:12:13,670 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:12:13,670 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 30 states [2022-04-27 13:12:13,670 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:12:13,670 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 30 interpolants. [2022-04-27 13:12:13,670 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=142, Invalid=728, Unknown=0, NotChecked=0, Total=870 [2022-04-27 13:12:13,670 INFO L87 Difference]: Start difference. First operand 2736 states and 3745 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:12:35,492 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:12:43,737 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.46s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:12:58,987 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:13:24,876 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:13:26,896 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:13:32,004 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.06s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:13:34,018 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:13:40,018 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.12s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:14:03,281 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:14:03,281 INFO L93 Difference]: Finished difference Result 3627 states and 4998 transitions. [2022-04-27 13:14:03,281 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 89 states. [2022-04-27 13:14:03,281 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:14:03,281 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:14:03,282 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:14:03,295 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 445 transitions. [2022-04-27 13:14:03,295 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:14:03,305 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 445 transitions. [2022-04-27 13:14:03,305 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 89 states and 445 transitions. [2022-04-27 13:14:15,152 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 445 edges. 443 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-27 13:14:15,709 INFO L225 Difference]: With dead ends: 3627 [2022-04-27 13:14:15,709 INFO L226 Difference]: Without dead ends: 3596 [2022-04-27 13:14:15,712 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 277 GetRequests, 168 SyntacticMatches, 1 SemanticMatches, 108 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4042 ImplicationChecksByTransitivity, 47.7s TimeCoverageRelationStatistics Valid=1950, Invalid=10040, Unknown=0, NotChecked=0, Total=11990 [2022-04-27 13:14:15,712 INFO L413 NwaCegarLoop]: 88 mSDtfsCounter, 404 mSDsluCounter, 867 mSDsCounter, 0 mSdLazyCounter, 1940 mSolverCounterSat, 537 mSolverCounterUnsat, 6 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 32.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 407 SdHoareTripleChecker+Valid, 955 SdHoareTripleChecker+Invalid, 2483 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 537 IncrementalHoareTripleChecker+Valid, 1940 IncrementalHoareTripleChecker+Invalid, 6 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 32.8s IncrementalHoareTripleChecker+Time [2022-04-27 13:14:15,712 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [407 Valid, 955 Invalid, 2483 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [537 Valid, 1940 Invalid, 6 Unknown, 0 Unchecked, 32.8s Time] [2022-04-27 13:14:15,714 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3596 states. [2022-04-27 13:14:21,868 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3596 to 3192. [2022-04-27 13:14:21,869 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:14:21,872 INFO L82 GeneralOperation]: Start isEquivalent. First operand 3596 states. Second operand has 3192 states, 2279 states have (on average 1.3027643703378675) internal successors, (2969), 2328 states have internal predecessors, (2969), 737 states have call successors, (737), 177 states have call predecessors, (737), 175 states have return successors, (730), 686 states have call predecessors, (730), 730 states have call successors, (730) [2022-04-27 13:14:21,873 INFO L74 IsIncluded]: Start isIncluded. First operand 3596 states. Second operand has 3192 states, 2279 states have (on average 1.3027643703378675) internal successors, (2969), 2328 states have internal predecessors, (2969), 737 states have call successors, (737), 177 states have call predecessors, (737), 175 states have return successors, (730), 686 states have call predecessors, (730), 730 states have call successors, (730) [2022-04-27 13:14:21,875 INFO L87 Difference]: Start difference. First operand 3596 states. Second operand has 3192 states, 2279 states have (on average 1.3027643703378675) internal successors, (2969), 2328 states have internal predecessors, (2969), 737 states have call successors, (737), 177 states have call predecessors, (737), 175 states have return successors, (730), 686 states have call predecessors, (730), 730 states have call successors, (730) [2022-04-27 13:14:22,261 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:14:22,261 INFO L93 Difference]: Finished difference Result 3596 states and 4945 transitions. [2022-04-27 13:14:22,261 INFO L276 IsEmpty]: Start isEmpty. Operand 3596 states and 4945 transitions. [2022-04-27 13:14:22,266 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:14:22,266 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:14:22,269 INFO L74 IsIncluded]: Start isIncluded. First operand has 3192 states, 2279 states have (on average 1.3027643703378675) internal successors, (2969), 2328 states have internal predecessors, (2969), 737 states have call successors, (737), 177 states have call predecessors, (737), 175 states have return successors, (730), 686 states have call predecessors, (730), 730 states have call successors, (730) Second operand 3596 states. [2022-04-27 13:14:22,270 INFO L87 Difference]: Start difference. First operand has 3192 states, 2279 states have (on average 1.3027643703378675) internal successors, (2969), 2328 states have internal predecessors, (2969), 737 states have call successors, (737), 177 states have call predecessors, (737), 175 states have return successors, (730), 686 states have call predecessors, (730), 730 states have call successors, (730) Second operand 3596 states. [2022-04-27 13:14:22,642 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:14:22,642 INFO L93 Difference]: Finished difference Result 3596 states and 4945 transitions. [2022-04-27 13:14:22,642 INFO L276 IsEmpty]: Start isEmpty. Operand 3596 states and 4945 transitions. [2022-04-27 13:14:22,646 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:14:22,646 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:14:22,646 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:14:22,646 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:14:22,649 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3192 states, 2279 states have (on average 1.3027643703378675) internal successors, (2969), 2328 states have internal predecessors, (2969), 737 states have call successors, (737), 177 states have call predecessors, (737), 175 states have return successors, (730), 686 states have call predecessors, (730), 730 states have call successors, (730) [2022-04-27 13:14:23,101 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3192 states to 3192 states and 4436 transitions. [2022-04-27 13:14:23,102 INFO L78 Accepts]: Start accepts. Automaton has 3192 states and 4436 transitions. Word has length 88 [2022-04-27 13:14:23,102 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:14:23,102 INFO L495 AbstractCegarLoop]: Abstraction has 3192 states and 4436 transitions. [2022-04-27 13:14:23,102 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:14:23,102 INFO L276 IsEmpty]: Start isEmpty. Operand 3192 states and 4436 transitions. [2022-04-27 13:14:23,103 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2022-04-27 13:14:23,103 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:14:23,103 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:14:23,120 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:14:23,307 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:14:23,307 INFO L420 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:14:23,308 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:14:23,308 INFO L85 PathProgramCache]: Analyzing trace with hash 516983514, now seen corresponding path program 3 times [2022-04-27 13:14:23,308 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:14:23,308 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [601215764] [2022-04-27 13:14:23,308 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:14:23,308 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:14:23,320 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:14:23,321 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [338598792] [2022-04-27 13:14:23,321 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 13:14:23,321 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:14:23,321 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:14:23,322 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:14:23,323 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:14:23,380 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2022-04-27 13:14:23,380 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:14:23,381 INFO L263 TraceCheckSpWp]: Trace formula consists of 246 conjuncts, 41 conjunts are in the unsatisfiable core [2022-04-27 13:14:23,391 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:14:23,393 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:14:24,081 INFO L272 TraceCheckUtils]: 0: Hoare triple {110324#true} call ULTIMATE.init(); {110324#true} is VALID [2022-04-27 13:14:24,081 INFO L290 TraceCheckUtils]: 1: Hoare triple {110324#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; {110324#true} is VALID [2022-04-27 13:14:24,081 INFO L290 TraceCheckUtils]: 2: Hoare triple {110324#true} assume true; {110324#true} is VALID [2022-04-27 13:14:24,081 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {110324#true} {110324#true} #108#return; {110324#true} is VALID [2022-04-27 13:14:24,081 INFO L272 TraceCheckUtils]: 4: Hoare triple {110324#true} call #t~ret9 := main(); {110324#true} is VALID [2022-04-27 13:14:24,081 INFO L290 TraceCheckUtils]: 5: Hoare triple {110324#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; {110324#true} is VALID [2022-04-27 13:14:24,082 INFO L272 TraceCheckUtils]: 6: Hoare triple {110324#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {110324#true} is VALID [2022-04-27 13:14:24,082 INFO L290 TraceCheckUtils]: 7: Hoare triple {110324#true} ~cond := #in~cond; {110324#true} is VALID [2022-04-27 13:14:24,082 INFO L290 TraceCheckUtils]: 8: Hoare triple {110324#true} assume !(0 == ~cond); {110324#true} is VALID [2022-04-27 13:14:24,082 INFO L290 TraceCheckUtils]: 9: Hoare triple {110324#true} assume true; {110324#true} is VALID [2022-04-27 13:14:24,082 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {110324#true} {110324#true} #94#return; {110324#true} is VALID [2022-04-27 13:14:24,082 INFO L272 TraceCheckUtils]: 11: Hoare triple {110324#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {110324#true} is VALID [2022-04-27 13:14:24,082 INFO L290 TraceCheckUtils]: 12: Hoare triple {110324#true} ~cond := #in~cond; {110324#true} is VALID [2022-04-27 13:14:24,082 INFO L290 TraceCheckUtils]: 13: Hoare triple {110324#true} assume !(0 == ~cond); {110324#true} is VALID [2022-04-27 13:14:24,082 INFO L290 TraceCheckUtils]: 14: Hoare triple {110324#true} assume true; {110324#true} is VALID [2022-04-27 13:14:24,082 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {110324#true} {110324#true} #96#return; {110324#true} is VALID [2022-04-27 13:14:24,082 INFO L290 TraceCheckUtils]: 16: Hoare triple {110324#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {110377#(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:14:24,083 INFO L290 TraceCheckUtils]: 17: Hoare triple {110377#(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; {110377#(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:14:24,083 INFO L290 TraceCheckUtils]: 18: Hoare triple {110377#(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 < 50);havoc #t~post6; {110377#(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:14:24,083 INFO L290 TraceCheckUtils]: 19: Hoare triple {110377#(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; {110387#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:14:24,084 INFO L290 TraceCheckUtils]: 20: Hoare triple {110387#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110387#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:14:24,084 INFO L290 TraceCheckUtils]: 21: Hoare triple {110387#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {110387#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:14:24,084 INFO L290 TraceCheckUtils]: 22: Hoare triple {110387#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {110397#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~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:14:24,085 INFO L290 TraceCheckUtils]: 23: Hoare triple {110397#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110397#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~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:14:24,085 INFO L290 TraceCheckUtils]: 24: Hoare triple {110397#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {110397#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~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:14:24,085 INFO L272 TraceCheckUtils]: 25: Hoare triple {110397#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~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 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {110324#true} is VALID [2022-04-27 13:14:24,085 INFO L290 TraceCheckUtils]: 26: Hoare triple {110324#true} ~cond := #in~cond; {110324#true} is VALID [2022-04-27 13:14:24,085 INFO L290 TraceCheckUtils]: 27: Hoare triple {110324#true} assume !(0 == ~cond); {110324#true} is VALID [2022-04-27 13:14:24,085 INFO L290 TraceCheckUtils]: 28: Hoare triple {110324#true} assume true; {110324#true} is VALID [2022-04-27 13:14:24,086 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {110324#true} {110397#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #98#return; {110397#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~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:14:24,086 INFO L272 TraceCheckUtils]: 30: Hoare triple {110397#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~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)); {110324#true} is VALID [2022-04-27 13:14:24,086 INFO L290 TraceCheckUtils]: 31: Hoare triple {110324#true} ~cond := #in~cond; {110324#true} is VALID [2022-04-27 13:14:24,086 INFO L290 TraceCheckUtils]: 32: Hoare triple {110324#true} assume !(0 == ~cond); {110324#true} is VALID [2022-04-27 13:14:24,086 INFO L290 TraceCheckUtils]: 33: Hoare triple {110324#true} assume true; {110324#true} is VALID [2022-04-27 13:14:24,087 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {110324#true} {110397#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #100#return; {110397#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~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:14:24,087 INFO L272 TraceCheckUtils]: 35: Hoare triple {110397#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~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)); {110324#true} is VALID [2022-04-27 13:14:24,087 INFO L290 TraceCheckUtils]: 36: Hoare triple {110324#true} ~cond := #in~cond; {110324#true} is VALID [2022-04-27 13:14:24,087 INFO L290 TraceCheckUtils]: 37: Hoare triple {110324#true} assume !(0 == ~cond); {110324#true} is VALID [2022-04-27 13:14:24,087 INFO L290 TraceCheckUtils]: 38: Hoare triple {110324#true} assume true; {110324#true} is VALID [2022-04-27 13:14:24,087 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {110324#true} {110397#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {110397#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~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:14:24,088 INFO L272 TraceCheckUtils]: 40: Hoare triple {110397#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~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)); {110324#true} is VALID [2022-04-27 13:14:24,088 INFO L290 TraceCheckUtils]: 41: Hoare triple {110324#true} ~cond := #in~cond; {110324#true} is VALID [2022-04-27 13:14:24,088 INFO L290 TraceCheckUtils]: 42: Hoare triple {110324#true} assume !(0 == ~cond); {110324#true} is VALID [2022-04-27 13:14:24,088 INFO L290 TraceCheckUtils]: 43: Hoare triple {110324#true} assume true; {110324#true} is VALID [2022-04-27 13:14:24,088 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {110324#true} {110397#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {110397#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~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:14:24,089 INFO L290 TraceCheckUtils]: 45: Hoare triple {110397#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~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); {110397#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~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:14:24,089 INFO L290 TraceCheckUtils]: 46: Hoare triple {110397#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~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; {110470#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:14:24,089 INFO L290 TraceCheckUtils]: 47: Hoare triple {110470#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110470#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:14:24,090 INFO L290 TraceCheckUtils]: 48: Hoare triple {110470#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {110470#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:14:24,090 INFO L290 TraceCheckUtils]: 49: Hoare triple {110470#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {110470#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:14:24,091 INFO L290 TraceCheckUtils]: 50: Hoare triple {110470#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= 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; {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:14:24,091 INFO L290 TraceCheckUtils]: 51: Hoare triple {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:14:24,091 INFO L290 TraceCheckUtils]: 52: Hoare triple {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !!(#t~post6 < 50);havoc #t~post6; {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:14:24,092 INFO L290 TraceCheckUtils]: 53: Hoare triple {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:14:24,092 INFO L290 TraceCheckUtils]: 54: Hoare triple {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:14:24,092 INFO L290 TraceCheckUtils]: 55: Hoare triple {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !!(#t~post7 < 50);havoc #t~post7; {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:14:24,093 INFO L290 TraceCheckUtils]: 56: Hoare triple {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:14:24,093 INFO L290 TraceCheckUtils]: 57: Hoare triple {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:14:24,093 INFO L290 TraceCheckUtils]: 58: Hoare triple {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !!(#t~post8 < 50);havoc #t~post8; {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:14:24,093 INFO L272 TraceCheckUtils]: 59: Hoare triple {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {110324#true} is VALID [2022-04-27 13:14:24,093 INFO L290 TraceCheckUtils]: 60: Hoare triple {110324#true} ~cond := #in~cond; {110324#true} is VALID [2022-04-27 13:14:24,093 INFO L290 TraceCheckUtils]: 61: Hoare triple {110324#true} assume !(0 == ~cond); {110324#true} is VALID [2022-04-27 13:14:24,093 INFO L290 TraceCheckUtils]: 62: Hoare triple {110324#true} assume true; {110324#true} is VALID [2022-04-27 13:14:24,094 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {110324#true} {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} #98#return; {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:14:24,094 INFO L272 TraceCheckUtils]: 64: Hoare triple {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {110324#true} is VALID [2022-04-27 13:14:24,094 INFO L290 TraceCheckUtils]: 65: Hoare triple {110324#true} ~cond := #in~cond; {110324#true} is VALID [2022-04-27 13:14:24,094 INFO L290 TraceCheckUtils]: 66: Hoare triple {110324#true} assume !(0 == ~cond); {110324#true} is VALID [2022-04-27 13:14:24,094 INFO L290 TraceCheckUtils]: 67: Hoare triple {110324#true} assume true; {110324#true} is VALID [2022-04-27 13:14:24,095 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {110324#true} {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} #100#return; {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:14:24,095 INFO L272 TraceCheckUtils]: 69: Hoare triple {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {110324#true} is VALID [2022-04-27 13:14:24,095 INFO L290 TraceCheckUtils]: 70: Hoare triple {110324#true} ~cond := #in~cond; {110324#true} is VALID [2022-04-27 13:14:24,095 INFO L290 TraceCheckUtils]: 71: Hoare triple {110324#true} assume !(0 == ~cond); {110324#true} is VALID [2022-04-27 13:14:24,095 INFO L290 TraceCheckUtils]: 72: Hoare triple {110324#true} assume true; {110324#true} is VALID [2022-04-27 13:14:24,095 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {110324#true} {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} #102#return; {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:14:24,095 INFO L272 TraceCheckUtils]: 74: Hoare triple {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {110324#true} is VALID [2022-04-27 13:14:24,095 INFO L290 TraceCheckUtils]: 75: Hoare triple {110324#true} ~cond := #in~cond; {110324#true} is VALID [2022-04-27 13:14:24,095 INFO L290 TraceCheckUtils]: 76: Hoare triple {110324#true} assume !(0 == ~cond); {110324#true} is VALID [2022-04-27 13:14:24,095 INFO L290 TraceCheckUtils]: 77: Hoare triple {110324#true} assume true; {110324#true} is VALID [2022-04-27 13:14:24,096 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {110324#true} {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} #104#return; {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:14:24,096 INFO L290 TraceCheckUtils]: 79: Hoare triple {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !(~c~0 >= 2 * ~v~0); {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:14:24,097 INFO L290 TraceCheckUtils]: 80: Hoare triple {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:14:24,097 INFO L290 TraceCheckUtils]: 81: Hoare triple {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:14:24,097 INFO L290 TraceCheckUtils]: 82: Hoare triple {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !!(#t~post7 < 50);havoc #t~post7; {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:14:24,098 INFO L290 TraceCheckUtils]: 83: Hoare triple {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !(~c~0 >= ~b~0); {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:14:24,098 INFO L290 TraceCheckUtils]: 84: Hoare triple {110483#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 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; {110586#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:14:24,098 INFO L290 TraceCheckUtils]: 85: Hoare triple {110586#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {110586#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:14:24,099 INFO L290 TraceCheckUtils]: 86: Hoare triple {110586#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {110586#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:14:24,099 INFO L290 TraceCheckUtils]: 87: Hoare triple {110586#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {110586#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:14:24,099 INFO L290 TraceCheckUtils]: 88: Hoare triple {110586#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110586#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:14:24,100 INFO L290 TraceCheckUtils]: 89: Hoare triple {110586#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {110586#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:14:24,100 INFO L290 TraceCheckUtils]: 90: Hoare triple {110586#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {110586#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:14:24,100 INFO L290 TraceCheckUtils]: 91: Hoare triple {110586#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110586#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:14:24,101 INFO L290 TraceCheckUtils]: 92: Hoare triple {110586#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {110586#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:14:24,101 INFO L272 TraceCheckUtils]: 93: Hoare triple {110586#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {110614#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:14:24,101 INFO L290 TraceCheckUtils]: 94: Hoare triple {110614#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {110618#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:14:24,102 INFO L290 TraceCheckUtils]: 95: Hoare triple {110618#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {110325#false} is VALID [2022-04-27 13:14:24,102 INFO L290 TraceCheckUtils]: 96: Hoare triple {110325#false} assume !false; {110325#false} is VALID [2022-04-27 13:14:24,102 INFO L134 CoverageAnalysis]: Checked inductivity of 186 backedges. 16 proven. 51 refuted. 0 times theorem prover too weak. 119 trivial. 0 not checked. [2022-04-27 13:14:24,102 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:14:24,524 INFO L290 TraceCheckUtils]: 96: Hoare triple {110325#false} assume !false; {110325#false} is VALID [2022-04-27 13:14:24,524 INFO L290 TraceCheckUtils]: 95: Hoare triple {110618#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {110325#false} is VALID [2022-04-27 13:14:24,524 INFO L290 TraceCheckUtils]: 94: Hoare triple {110614#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {110618#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:14:24,525 INFO L272 TraceCheckUtils]: 93: Hoare triple {110634#(= 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)); {110614#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:14:24,525 INFO L290 TraceCheckUtils]: 92: Hoare triple {110634#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post8 < 50);havoc #t~post8; {110634#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:14:24,526 INFO L290 TraceCheckUtils]: 91: Hoare triple {110634#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110634#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:14:24,526 INFO L290 TraceCheckUtils]: 90: Hoare triple {110634#(= 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; {110634#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:14:24,526 INFO L290 TraceCheckUtils]: 89: Hoare triple {110634#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {110634#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:14:24,526 INFO L290 TraceCheckUtils]: 88: Hoare triple {110634#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110634#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:14:24,527 INFO L290 TraceCheckUtils]: 87: Hoare triple {110634#(= 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; {110634#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:14:24,527 INFO L290 TraceCheckUtils]: 86: Hoare triple {110634#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 50);havoc #t~post6; {110634#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:14:24,527 INFO L290 TraceCheckUtils]: 85: Hoare triple {110634#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {110634#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:14:24,528 INFO L290 TraceCheckUtils]: 84: Hoare triple {110662#(= 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; {110634#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:14:24,528 INFO L290 TraceCheckUtils]: 83: Hoare triple {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:14:24,528 INFO L290 TraceCheckUtils]: 82: Hoare triple {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:14:24,529 INFO L290 TraceCheckUtils]: 81: Hoare triple {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:14:24,529 INFO L290 TraceCheckUtils]: 80: Hoare triple {110662#(= 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; {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:14:24,529 INFO L290 TraceCheckUtils]: 79: Hoare triple {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:14:24,530 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {110324#true} {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #104#return; {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:14:24,530 INFO L290 TraceCheckUtils]: 77: Hoare triple {110324#true} assume true; {110324#true} is VALID [2022-04-27 13:14:24,530 INFO L290 TraceCheckUtils]: 76: Hoare triple {110324#true} assume !(0 == ~cond); {110324#true} is VALID [2022-04-27 13:14:24,530 INFO L290 TraceCheckUtils]: 75: Hoare triple {110324#true} ~cond := #in~cond; {110324#true} is VALID [2022-04-27 13:14:24,530 INFO L272 TraceCheckUtils]: 74: Hoare triple {110662#(= 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)); {110324#true} is VALID [2022-04-27 13:14:24,530 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {110324#true} {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:14:24,530 INFO L290 TraceCheckUtils]: 72: Hoare triple {110324#true} assume true; {110324#true} is VALID [2022-04-27 13:14:24,530 INFO L290 TraceCheckUtils]: 71: Hoare triple {110324#true} assume !(0 == ~cond); {110324#true} is VALID [2022-04-27 13:14:24,530 INFO L290 TraceCheckUtils]: 70: Hoare triple {110324#true} ~cond := #in~cond; {110324#true} is VALID [2022-04-27 13:14:24,531 INFO L272 TraceCheckUtils]: 69: Hoare triple {110662#(= 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)); {110324#true} is VALID [2022-04-27 13:14:24,531 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {110324#true} {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #100#return; {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:14:24,531 INFO L290 TraceCheckUtils]: 67: Hoare triple {110324#true} assume true; {110324#true} is VALID [2022-04-27 13:14:24,531 INFO L290 TraceCheckUtils]: 66: Hoare triple {110324#true} assume !(0 == ~cond); {110324#true} is VALID [2022-04-27 13:14:24,531 INFO L290 TraceCheckUtils]: 65: Hoare triple {110324#true} ~cond := #in~cond; {110324#true} is VALID [2022-04-27 13:14:24,531 INFO L272 TraceCheckUtils]: 64: Hoare triple {110662#(= 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)); {110324#true} is VALID [2022-04-27 13:14:24,532 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {110324#true} {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #98#return; {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:14:24,532 INFO L290 TraceCheckUtils]: 62: Hoare triple {110324#true} assume true; {110324#true} is VALID [2022-04-27 13:14:24,532 INFO L290 TraceCheckUtils]: 61: Hoare triple {110324#true} assume !(0 == ~cond); {110324#true} is VALID [2022-04-27 13:14:24,532 INFO L290 TraceCheckUtils]: 60: Hoare triple {110324#true} ~cond := #in~cond; {110324#true} is VALID [2022-04-27 13:14:24,532 INFO L272 TraceCheckUtils]: 59: Hoare triple {110662#(= 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)); {110324#true} is VALID [2022-04-27 13:14:24,532 INFO L290 TraceCheckUtils]: 58: Hoare triple {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post8 < 50);havoc #t~post8; {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:14:24,532 INFO L290 TraceCheckUtils]: 57: Hoare triple {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:14:24,533 INFO L290 TraceCheckUtils]: 56: Hoare triple {110662#(= 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; {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:14:24,533 INFO L290 TraceCheckUtils]: 55: Hoare triple {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:14:24,533 INFO L290 TraceCheckUtils]: 54: Hoare triple {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:14:24,534 INFO L290 TraceCheckUtils]: 53: Hoare triple {110662#(= 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; {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:14:24,534 INFO L290 TraceCheckUtils]: 52: Hoare triple {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 50);havoc #t~post6; {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:14:24,534 INFO L290 TraceCheckUtils]: 51: Hoare triple {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:14:26,536 WARN L290 TraceCheckUtils]: 50: Hoare triple {110765#(= (+ (* (+ (* (* 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; {110662#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-27 13:14:26,537 INFO L290 TraceCheckUtils]: 49: Hoare triple {110765#(= (+ (* (+ (* (* 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); {110765#(= (+ (* (+ (* (* 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:14:26,537 INFO L290 TraceCheckUtils]: 48: Hoare triple {110765#(= (+ (* (+ (* (* 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 < 50);havoc #t~post7; {110765#(= (+ (* (+ (* (* 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:14:26,538 INFO L290 TraceCheckUtils]: 47: Hoare triple {110765#(= (+ (* (+ (* (* 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; {110765#(= (+ (* (+ (* (* 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:14:26,896 INFO L290 TraceCheckUtils]: 46: Hoare triple {110778#(= (+ 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)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {110765#(= (+ (* (+ (* (* 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:14:26,897 INFO L290 TraceCheckUtils]: 45: Hoare triple {110778#(= (+ 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)))} assume !(~c~0 >= 2 * ~v~0); {110778#(= (+ 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)))} is VALID [2022-04-27 13:14:26,897 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {110324#true} {110778#(= (+ 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)))} #104#return; {110778#(= (+ 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)))} is VALID [2022-04-27 13:14:26,897 INFO L290 TraceCheckUtils]: 43: Hoare triple {110324#true} assume true; {110324#true} is VALID [2022-04-27 13:14:26,897 INFO L290 TraceCheckUtils]: 42: Hoare triple {110324#true} assume !(0 == ~cond); {110324#true} is VALID [2022-04-27 13:14:26,897 INFO L290 TraceCheckUtils]: 41: Hoare triple {110324#true} ~cond := #in~cond; {110324#true} is VALID [2022-04-27 13:14:26,898 INFO L272 TraceCheckUtils]: 40: Hoare triple {110778#(= (+ 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)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {110324#true} is VALID [2022-04-27 13:14:26,898 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {110324#true} {110778#(= (+ 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)))} #102#return; {110778#(= (+ 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)))} is VALID [2022-04-27 13:14:26,898 INFO L290 TraceCheckUtils]: 38: Hoare triple {110324#true} assume true; {110324#true} is VALID [2022-04-27 13:14:26,898 INFO L290 TraceCheckUtils]: 37: Hoare triple {110324#true} assume !(0 == ~cond); {110324#true} is VALID [2022-04-27 13:14:26,898 INFO L290 TraceCheckUtils]: 36: Hoare triple {110324#true} ~cond := #in~cond; {110324#true} is VALID [2022-04-27 13:14:26,898 INFO L272 TraceCheckUtils]: 35: Hoare triple {110778#(= (+ 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)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {110324#true} is VALID [2022-04-27 13:14:26,899 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {110324#true} {110778#(= (+ 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)))} #100#return; {110778#(= (+ 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)))} is VALID [2022-04-27 13:14:26,899 INFO L290 TraceCheckUtils]: 33: Hoare triple {110324#true} assume true; {110324#true} is VALID [2022-04-27 13:14:26,899 INFO L290 TraceCheckUtils]: 32: Hoare triple {110324#true} assume !(0 == ~cond); {110324#true} is VALID [2022-04-27 13:14:26,899 INFO L290 TraceCheckUtils]: 31: Hoare triple {110324#true} ~cond := #in~cond; {110324#true} is VALID [2022-04-27 13:14:26,899 INFO L272 TraceCheckUtils]: 30: Hoare triple {110778#(= (+ 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)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {110324#true} is VALID [2022-04-27 13:14:26,912 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {110324#true} {110778#(= (+ 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)))} #98#return; {110778#(= (+ 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)))} is VALID [2022-04-27 13:14:26,912 INFO L290 TraceCheckUtils]: 28: Hoare triple {110324#true} assume true; {110324#true} is VALID [2022-04-27 13:14:26,912 INFO L290 TraceCheckUtils]: 27: Hoare triple {110324#true} assume !(0 == ~cond); {110324#true} is VALID [2022-04-27 13:14:26,912 INFO L290 TraceCheckUtils]: 26: Hoare triple {110324#true} ~cond := #in~cond; {110324#true} is VALID [2022-04-27 13:14:26,912 INFO L272 TraceCheckUtils]: 25: Hoare triple {110778#(= (+ 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)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {110324#true} is VALID [2022-04-27 13:14:26,912 INFO L290 TraceCheckUtils]: 24: Hoare triple {110778#(= (+ 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)))} assume !!(#t~post8 < 50);havoc #t~post8; {110778#(= (+ 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)))} is VALID [2022-04-27 13:14:26,913 INFO L290 TraceCheckUtils]: 23: Hoare triple {110778#(= (+ 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)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110778#(= (+ 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)))} is VALID [2022-04-27 13:14:26,913 INFO L290 TraceCheckUtils]: 22: Hoare triple {110851#(= (+ (* 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)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {110778#(= (+ 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)))} is VALID [2022-04-27 13:14:26,914 INFO L290 TraceCheckUtils]: 21: Hoare triple {110851#(= (+ (* 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)))} assume !!(#t~post7 < 50);havoc #t~post7; {110851#(= (+ (* 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)))} is VALID [2022-04-27 13:14:26,914 INFO L290 TraceCheckUtils]: 20: Hoare triple {110851#(= (+ (* 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)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110851#(= (+ (* 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)))} is VALID [2022-04-27 13:14:26,914 INFO L290 TraceCheckUtils]: 19: Hoare triple {110861#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {110851#(= (+ (* 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)))} is VALID [2022-04-27 13:14:26,915 INFO L290 TraceCheckUtils]: 18: Hoare triple {110861#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume !!(#t~post6 < 50);havoc #t~post6; {110861#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-27 13:14:26,915 INFO L290 TraceCheckUtils]: 17: Hoare triple {110861#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {110861#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-27 13:14:26,915 INFO L290 TraceCheckUtils]: 16: Hoare triple {110324#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {110861#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} is VALID [2022-04-27 13:14:26,916 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {110324#true} {110324#true} #96#return; {110324#true} is VALID [2022-04-27 13:14:26,916 INFO L290 TraceCheckUtils]: 14: Hoare triple {110324#true} assume true; {110324#true} is VALID [2022-04-27 13:14:26,916 INFO L290 TraceCheckUtils]: 13: Hoare triple {110324#true} assume !(0 == ~cond); {110324#true} is VALID [2022-04-27 13:14:26,916 INFO L290 TraceCheckUtils]: 12: Hoare triple {110324#true} ~cond := #in~cond; {110324#true} is VALID [2022-04-27 13:14:26,916 INFO L272 TraceCheckUtils]: 11: Hoare triple {110324#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {110324#true} is VALID [2022-04-27 13:14:26,916 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {110324#true} {110324#true} #94#return; {110324#true} is VALID [2022-04-27 13:14:26,916 INFO L290 TraceCheckUtils]: 9: Hoare triple {110324#true} assume true; {110324#true} is VALID [2022-04-27 13:14:26,916 INFO L290 TraceCheckUtils]: 8: Hoare triple {110324#true} assume !(0 == ~cond); {110324#true} is VALID [2022-04-27 13:14:26,916 INFO L290 TraceCheckUtils]: 7: Hoare triple {110324#true} ~cond := #in~cond; {110324#true} is VALID [2022-04-27 13:14:26,916 INFO L272 TraceCheckUtils]: 6: Hoare triple {110324#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {110324#true} is VALID [2022-04-27 13:14:26,916 INFO L290 TraceCheckUtils]: 5: Hoare triple {110324#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; {110324#true} is VALID [2022-04-27 13:14:26,916 INFO L272 TraceCheckUtils]: 4: Hoare triple {110324#true} call #t~ret9 := main(); {110324#true} is VALID [2022-04-27 13:14:26,916 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {110324#true} {110324#true} #108#return; {110324#true} is VALID [2022-04-27 13:14:26,916 INFO L290 TraceCheckUtils]: 2: Hoare triple {110324#true} assume true; {110324#true} is VALID [2022-04-27 13:14:26,916 INFO L290 TraceCheckUtils]: 1: Hoare triple {110324#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; {110324#true} is VALID [2022-04-27 13:14:26,916 INFO L272 TraceCheckUtils]: 0: Hoare triple {110324#true} call ULTIMATE.init(); {110324#true} is VALID [2022-04-27 13:14:26,917 INFO L134 CoverageAnalysis]: Checked inductivity of 186 backedges. 16 proven. 51 refuted. 0 times theorem prover too weak. 119 trivial. 0 not checked. [2022-04-27 13:14:26,917 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:14:26,917 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [601215764] [2022-04-27 13:14:26,917 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:14:26,917 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [338598792] [2022-04-27 13:14:26,917 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [338598792] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:14:26,917 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:14:26,917 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 16 [2022-04-27 13:14:26,917 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1906404389] [2022-04-27 13:14:26,917 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:14:26,917 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 5.125) internal successors, (82), 15 states have internal predecessors, (82), 7 states have call successors, (22), 2 states have call predecessors, (22), 1 states have return successors, (19), 5 states have call predecessors, (19), 5 states have call successors, (19) Word has length 97 [2022-04-27 13:14:26,918 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:14:26,918 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 5.125) internal successors, (82), 15 states have internal predecessors, (82), 7 states have call successors, (22), 2 states have call predecessors, (22), 1 states have return successors, (19), 5 states have call predecessors, (19), 5 states have call successors, (19) [2022-04-27 13:14:27,686 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 123 edges. 123 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:14:27,686 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-27 13:14:27,686 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:14:27,686 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-27 13:14:27,686 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=40, Invalid=200, Unknown=0, NotChecked=0, Total=240 [2022-04-27 13:14:27,686 INFO L87 Difference]: Start difference. First operand 3192 states and 4436 transitions. Second operand has 16 states, 16 states have (on average 5.125) internal successors, (82), 15 states have internal predecessors, (82), 7 states have call successors, (22), 2 states have call predecessors, (22), 1 states have return successors, (19), 5 states have call predecessors, (19), 5 states have call successors, (19) [2022-04-27 13:14:34,819 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.35s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:15:00,771 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:15:00,771 INFO L93 Difference]: Finished difference Result 3421 states and 4749 transitions. [2022-04-27 13:15:00,771 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-04-27 13:15:00,771 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 5.125) internal successors, (82), 15 states have internal predecessors, (82), 7 states have call successors, (22), 2 states have call predecessors, (22), 1 states have return successors, (19), 5 states have call predecessors, (19), 5 states have call successors, (19) Word has length 97 [2022-04-27 13:15:00,771 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:15:00,771 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 5.125) internal successors, (82), 15 states have internal predecessors, (82), 7 states have call successors, (22), 2 states have call predecessors, (22), 1 states have return successors, (19), 5 states have call predecessors, (19), 5 states have call successors, (19) [2022-04-27 13:15:00,780 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 173 transitions. [2022-04-27 13:15:00,780 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 5.125) internal successors, (82), 15 states have internal predecessors, (82), 7 states have call successors, (22), 2 states have call predecessors, (22), 1 states have return successors, (19), 5 states have call predecessors, (19), 5 states have call successors, (19) [2022-04-27 13:15:00,781 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 173 transitions. [2022-04-27 13:15:00,781 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 173 transitions. [2022-04-27 13:15:08,373 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 173 edges. 172 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-27 13:15:08,869 INFO L225 Difference]: With dead ends: 3421 [2022-04-27 13:15:08,870 INFO L226 Difference]: Without dead ends: 3409 [2022-04-27 13:15:08,870 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 208 GetRequests, 178 SyntacticMatches, 1 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 92 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=201, Invalid=729, Unknown=0, NotChecked=0, Total=930 [2022-04-27 13:15:08,871 INFO L413 NwaCegarLoop]: 67 mSDtfsCounter, 112 mSDsluCounter, 402 mSDsCounter, 0 mSdLazyCounter, 602 mSolverCounterSat, 143 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 12.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 112 SdHoareTripleChecker+Valid, 469 SdHoareTripleChecker+Invalid, 745 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 143 IncrementalHoareTripleChecker+Valid, 602 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 12.2s IncrementalHoareTripleChecker+Time [2022-04-27 13:15:08,871 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [112 Valid, 469 Invalid, 745 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [143 Valid, 602 Invalid, 0 Unknown, 0 Unchecked, 12.2s Time] [2022-04-27 13:15:08,872 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3409 states. [2022-04-27 13:15:15,132 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3409 to 3119. [2022-04-27 13:15:15,132 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:15:15,135 INFO L82 GeneralOperation]: Start isEquivalent. First operand 3409 states. Second operand has 3119 states, 2211 states have (on average 1.3021257349615558) internal successors, (2879), 2255 states have internal predecessors, (2879), 732 states have call successors, (732), 177 states have call predecessors, (732), 175 states have return successors, (730), 686 states have call predecessors, (730), 730 states have call successors, (730) [2022-04-27 13:15:15,137 INFO L74 IsIncluded]: Start isIncluded. First operand 3409 states. Second operand has 3119 states, 2211 states have (on average 1.3021257349615558) internal successors, (2879), 2255 states have internal predecessors, (2879), 732 states have call successors, (732), 177 states have call predecessors, (732), 175 states have return successors, (730), 686 states have call predecessors, (730), 730 states have call successors, (730) [2022-04-27 13:15:15,139 INFO L87 Difference]: Start difference. First operand 3409 states. Second operand has 3119 states, 2211 states have (on average 1.3021257349615558) internal successors, (2879), 2255 states have internal predecessors, (2879), 732 states have call successors, (732), 177 states have call predecessors, (732), 175 states have return successors, (730), 686 states have call predecessors, (730), 730 states have call successors, (730) [2022-04-27 13:15:15,459 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:15:15,460 INFO L93 Difference]: Finished difference Result 3409 states and 4733 transitions. [2022-04-27 13:15:15,460 INFO L276 IsEmpty]: Start isEmpty. Operand 3409 states and 4733 transitions. [2022-04-27 13:15:15,464 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:15:15,464 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:15:15,467 INFO L74 IsIncluded]: Start isIncluded. First operand has 3119 states, 2211 states have (on average 1.3021257349615558) internal successors, (2879), 2255 states have internal predecessors, (2879), 732 states have call successors, (732), 177 states have call predecessors, (732), 175 states have return successors, (730), 686 states have call predecessors, (730), 730 states have call successors, (730) Second operand 3409 states. [2022-04-27 13:15:15,468 INFO L87 Difference]: Start difference. First operand has 3119 states, 2211 states have (on average 1.3021257349615558) internal successors, (2879), 2255 states have internal predecessors, (2879), 732 states have call successors, (732), 177 states have call predecessors, (732), 175 states have return successors, (730), 686 states have call predecessors, (730), 730 states have call successors, (730) Second operand 3409 states. [2022-04-27 13:15:15,786 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:15:15,787 INFO L93 Difference]: Finished difference Result 3409 states and 4733 transitions. [2022-04-27 13:15:15,787 INFO L276 IsEmpty]: Start isEmpty. Operand 3409 states and 4733 transitions. [2022-04-27 13:15:15,791 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:15:15,791 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:15:15,791 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:15:15,791 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:15:15,794 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3119 states, 2211 states have (on average 1.3021257349615558) internal successors, (2879), 2255 states have internal predecessors, (2879), 732 states have call successors, (732), 177 states have call predecessors, (732), 175 states have return successors, (730), 686 states have call predecessors, (730), 730 states have call successors, (730) [2022-04-27 13:15:16,220 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3119 states to 3119 states and 4341 transitions. [2022-04-27 13:15:16,220 INFO L78 Accepts]: Start accepts. Automaton has 3119 states and 4341 transitions. Word has length 97 [2022-04-27 13:15:16,220 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:15:16,220 INFO L495 AbstractCegarLoop]: Abstraction has 3119 states and 4341 transitions. [2022-04-27 13:15:16,220 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 5.125) internal successors, (82), 15 states have internal predecessors, (82), 7 states have call successors, (22), 2 states have call predecessors, (22), 1 states have return successors, (19), 5 states have call predecessors, (19), 5 states have call successors, (19) [2022-04-27 13:15:16,221 INFO L276 IsEmpty]: Start isEmpty. Operand 3119 states and 4341 transitions. [2022-04-27 13:15:16,221 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 99 [2022-04-27 13:15:16,221 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:15:16,221 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 5, 4, 4, 4, 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:15:16,239 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Forceful destruction successful, exit code 0 [2022-04-27 13:15:16,422 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:15:16,422 INFO L420 AbstractCegarLoop]: === Iteration 24 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:15:16,422 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:15:16,422 INFO L85 PathProgramCache]: Analyzing trace with hash 493698625, now seen corresponding path program 1 times [2022-04-27 13:15:16,422 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:15:16,422 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [842132258] [2022-04-27 13:15:16,422 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:15:16,422 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:15:16,443 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:15:16,443 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [585689632] [2022-04-27 13:15:16,443 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:15:16,443 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:15:16,443 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:15:16,444 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:15:16,445 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:15:16,501 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:15:16,502 INFO L263 TraceCheckSpWp]: Trace formula consists of 302 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-27 13:15:16,521 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:15:16,523 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:15:16,981 INFO L272 TraceCheckUtils]: 0: Hoare triple {127249#true} call ULTIMATE.init(); {127249#true} is VALID [2022-04-27 13:15:16,981 INFO L290 TraceCheckUtils]: 1: Hoare triple {127249#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; {127257#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:16,982 INFO L290 TraceCheckUtils]: 2: Hoare triple {127257#(<= ~counter~0 0)} assume true; {127257#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:16,982 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {127257#(<= ~counter~0 0)} {127249#true} #108#return; {127257#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:16,982 INFO L272 TraceCheckUtils]: 4: Hoare triple {127257#(<= ~counter~0 0)} call #t~ret9 := main(); {127257#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:16,983 INFO L290 TraceCheckUtils]: 5: Hoare triple {127257#(<= ~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; {127257#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:16,983 INFO L272 TraceCheckUtils]: 6: Hoare triple {127257#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {127257#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:16,983 INFO L290 TraceCheckUtils]: 7: Hoare triple {127257#(<= ~counter~0 0)} ~cond := #in~cond; {127257#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:16,983 INFO L290 TraceCheckUtils]: 8: Hoare triple {127257#(<= ~counter~0 0)} assume !(0 == ~cond); {127257#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:16,984 INFO L290 TraceCheckUtils]: 9: Hoare triple {127257#(<= ~counter~0 0)} assume true; {127257#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:16,984 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {127257#(<= ~counter~0 0)} {127257#(<= ~counter~0 0)} #94#return; {127257#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:16,985 INFO L272 TraceCheckUtils]: 11: Hoare triple {127257#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {127257#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:16,985 INFO L290 TraceCheckUtils]: 12: Hoare triple {127257#(<= ~counter~0 0)} ~cond := #in~cond; {127257#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:16,985 INFO L290 TraceCheckUtils]: 13: Hoare triple {127257#(<= ~counter~0 0)} assume !(0 == ~cond); {127257#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:16,985 INFO L290 TraceCheckUtils]: 14: Hoare triple {127257#(<= ~counter~0 0)} assume true; {127257#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:16,986 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {127257#(<= ~counter~0 0)} {127257#(<= ~counter~0 0)} #96#return; {127257#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:16,986 INFO L290 TraceCheckUtils]: 16: Hoare triple {127257#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {127257#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:16,987 INFO L290 TraceCheckUtils]: 17: Hoare triple {127257#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {127306#(<= ~counter~0 1)} is VALID [2022-04-27 13:15:16,988 INFO L290 TraceCheckUtils]: 18: Hoare triple {127306#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {127306#(<= ~counter~0 1)} is VALID [2022-04-27 13:15:16,988 INFO L290 TraceCheckUtils]: 19: Hoare triple {127306#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {127306#(<= ~counter~0 1)} is VALID [2022-04-27 13:15:16,989 INFO L290 TraceCheckUtils]: 20: Hoare triple {127306#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {127316#(<= ~counter~0 2)} is VALID [2022-04-27 13:15:16,989 INFO L290 TraceCheckUtils]: 21: Hoare triple {127316#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {127316#(<= ~counter~0 2)} is VALID [2022-04-27 13:15:16,989 INFO L290 TraceCheckUtils]: 22: Hoare triple {127316#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {127316#(<= ~counter~0 2)} is VALID [2022-04-27 13:15:16,990 INFO L290 TraceCheckUtils]: 23: Hoare triple {127316#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,990 INFO L290 TraceCheckUtils]: 24: Hoare triple {127326#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,991 INFO L272 TraceCheckUtils]: 25: Hoare triple {127326#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,991 INFO L290 TraceCheckUtils]: 26: Hoare triple {127326#(<= ~counter~0 3)} ~cond := #in~cond; {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,991 INFO L290 TraceCheckUtils]: 27: Hoare triple {127326#(<= ~counter~0 3)} assume !(0 == ~cond); {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,991 INFO L290 TraceCheckUtils]: 28: Hoare triple {127326#(<= ~counter~0 3)} assume true; {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,992 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {127326#(<= ~counter~0 3)} {127326#(<= ~counter~0 3)} #98#return; {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,992 INFO L272 TraceCheckUtils]: 30: Hoare triple {127326#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,993 INFO L290 TraceCheckUtils]: 31: Hoare triple {127326#(<= ~counter~0 3)} ~cond := #in~cond; {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,993 INFO L290 TraceCheckUtils]: 32: Hoare triple {127326#(<= ~counter~0 3)} assume !(0 == ~cond); {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,993 INFO L290 TraceCheckUtils]: 33: Hoare triple {127326#(<= ~counter~0 3)} assume true; {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,994 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {127326#(<= ~counter~0 3)} {127326#(<= ~counter~0 3)} #100#return; {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,994 INFO L272 TraceCheckUtils]: 35: Hoare triple {127326#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,994 INFO L290 TraceCheckUtils]: 36: Hoare triple {127326#(<= ~counter~0 3)} ~cond := #in~cond; {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,994 INFO L290 TraceCheckUtils]: 37: Hoare triple {127326#(<= ~counter~0 3)} assume !(0 == ~cond); {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,995 INFO L290 TraceCheckUtils]: 38: Hoare triple {127326#(<= ~counter~0 3)} assume true; {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,995 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {127326#(<= ~counter~0 3)} {127326#(<= ~counter~0 3)} #102#return; {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,996 INFO L272 TraceCheckUtils]: 40: Hoare triple {127326#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,996 INFO L290 TraceCheckUtils]: 41: Hoare triple {127326#(<= ~counter~0 3)} ~cond := #in~cond; {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,996 INFO L290 TraceCheckUtils]: 42: Hoare triple {127326#(<= ~counter~0 3)} assume !(0 == ~cond); {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,996 INFO L290 TraceCheckUtils]: 43: Hoare triple {127326#(<= ~counter~0 3)} assume true; {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,997 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {127326#(<= ~counter~0 3)} {127326#(<= ~counter~0 3)} #104#return; {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,997 INFO L290 TraceCheckUtils]: 45: Hoare triple {127326#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,997 INFO L290 TraceCheckUtils]: 46: Hoare triple {127326#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {127326#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:16,998 INFO L290 TraceCheckUtils]: 47: Hoare triple {127326#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {127399#(<= ~counter~0 4)} is VALID [2022-04-27 13:15:16,999 INFO L290 TraceCheckUtils]: 48: Hoare triple {127399#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {127399#(<= ~counter~0 4)} is VALID [2022-04-27 13:15:16,999 INFO L290 TraceCheckUtils]: 49: Hoare triple {127399#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {127399#(<= ~counter~0 4)} is VALID [2022-04-27 13:15:16,999 INFO L290 TraceCheckUtils]: 50: Hoare triple {127399#(<= ~counter~0 4)} ~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; {127399#(<= ~counter~0 4)} is VALID [2022-04-27 13:15:17,000 INFO L290 TraceCheckUtils]: 51: Hoare triple {127399#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {127412#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:17,000 INFO L290 TraceCheckUtils]: 52: Hoare triple {127412#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {127412#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:17,000 INFO L290 TraceCheckUtils]: 53: Hoare triple {127412#(<= ~counter~0 5)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {127412#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:17,001 INFO L290 TraceCheckUtils]: 54: Hoare triple {127412#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {127422#(<= ~counter~0 6)} is VALID [2022-04-27 13:15:17,001 INFO L290 TraceCheckUtils]: 55: Hoare triple {127422#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {127422#(<= ~counter~0 6)} is VALID [2022-04-27 13:15:17,002 INFO L290 TraceCheckUtils]: 56: Hoare triple {127422#(<= ~counter~0 6)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {127422#(<= ~counter~0 6)} is VALID [2022-04-27 13:15:17,002 INFO L290 TraceCheckUtils]: 57: Hoare triple {127422#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,003 INFO L290 TraceCheckUtils]: 58: Hoare triple {127432#(<= ~counter~0 7)} assume !!(#t~post8 < 50);havoc #t~post8; {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,003 INFO L272 TraceCheckUtils]: 59: Hoare triple {127432#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,003 INFO L290 TraceCheckUtils]: 60: Hoare triple {127432#(<= ~counter~0 7)} ~cond := #in~cond; {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,004 INFO L290 TraceCheckUtils]: 61: Hoare triple {127432#(<= ~counter~0 7)} assume !(0 == ~cond); {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,004 INFO L290 TraceCheckUtils]: 62: Hoare triple {127432#(<= ~counter~0 7)} assume true; {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,004 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {127432#(<= ~counter~0 7)} {127432#(<= ~counter~0 7)} #98#return; {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,005 INFO L272 TraceCheckUtils]: 64: Hoare triple {127432#(<= ~counter~0 7)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,005 INFO L290 TraceCheckUtils]: 65: Hoare triple {127432#(<= ~counter~0 7)} ~cond := #in~cond; {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,005 INFO L290 TraceCheckUtils]: 66: Hoare triple {127432#(<= ~counter~0 7)} assume !(0 == ~cond); {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,006 INFO L290 TraceCheckUtils]: 67: Hoare triple {127432#(<= ~counter~0 7)} assume true; {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,006 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {127432#(<= ~counter~0 7)} {127432#(<= ~counter~0 7)} #100#return; {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,006 INFO L272 TraceCheckUtils]: 69: Hoare triple {127432#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,007 INFO L290 TraceCheckUtils]: 70: Hoare triple {127432#(<= ~counter~0 7)} ~cond := #in~cond; {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,007 INFO L290 TraceCheckUtils]: 71: Hoare triple {127432#(<= ~counter~0 7)} assume !(0 == ~cond); {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,007 INFO L290 TraceCheckUtils]: 72: Hoare triple {127432#(<= ~counter~0 7)} assume true; {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,008 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {127432#(<= ~counter~0 7)} {127432#(<= ~counter~0 7)} #102#return; {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,008 INFO L272 TraceCheckUtils]: 74: Hoare triple {127432#(<= ~counter~0 7)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,009 INFO L290 TraceCheckUtils]: 75: Hoare triple {127432#(<= ~counter~0 7)} ~cond := #in~cond; {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,009 INFO L290 TraceCheckUtils]: 76: Hoare triple {127432#(<= ~counter~0 7)} assume !(0 == ~cond); {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,009 INFO L290 TraceCheckUtils]: 77: Hoare triple {127432#(<= ~counter~0 7)} assume true; {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,010 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {127432#(<= ~counter~0 7)} {127432#(<= ~counter~0 7)} #104#return; {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,010 INFO L290 TraceCheckUtils]: 79: Hoare triple {127432#(<= ~counter~0 7)} assume !(~c~0 >= 2 * ~v~0); {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,010 INFO L290 TraceCheckUtils]: 80: Hoare triple {127432#(<= ~counter~0 7)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {127432#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:17,011 INFO L290 TraceCheckUtils]: 81: Hoare triple {127432#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {127505#(<= ~counter~0 8)} is VALID [2022-04-27 13:15:17,012 INFO L290 TraceCheckUtils]: 82: Hoare triple {127505#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {127505#(<= ~counter~0 8)} is VALID [2022-04-27 13:15:17,012 INFO L290 TraceCheckUtils]: 83: Hoare triple {127505#(<= ~counter~0 8)} assume !(~c~0 >= ~b~0); {127505#(<= ~counter~0 8)} is VALID [2022-04-27 13:15:17,012 INFO L290 TraceCheckUtils]: 84: Hoare triple {127505#(<= ~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; {127505#(<= ~counter~0 8)} is VALID [2022-04-27 13:15:17,013 INFO L290 TraceCheckUtils]: 85: Hoare triple {127505#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {127518#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:17,013 INFO L290 TraceCheckUtils]: 86: Hoare triple {127518#(<= ~counter~0 9)} assume !!(#t~post6 < 50);havoc #t~post6; {127518#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:17,013 INFO L290 TraceCheckUtils]: 87: Hoare triple {127518#(<= ~counter~0 9)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {127518#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:17,014 INFO L290 TraceCheckUtils]: 88: Hoare triple {127518#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {127528#(<= |main_#t~post7| 9)} is VALID [2022-04-27 13:15:17,014 INFO L290 TraceCheckUtils]: 89: Hoare triple {127528#(<= |main_#t~post7| 9)} assume !(#t~post7 < 50);havoc #t~post7; {127250#false} is VALID [2022-04-27 13:15:17,014 INFO L290 TraceCheckUtils]: 90: Hoare triple {127250#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; {127250#false} is VALID [2022-04-27 13:15:17,014 INFO L290 TraceCheckUtils]: 91: Hoare triple {127250#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {127250#false} is VALID [2022-04-27 13:15:17,014 INFO L290 TraceCheckUtils]: 92: Hoare triple {127250#false} assume !!(#t~post6 < 50);havoc #t~post6; {127250#false} is VALID [2022-04-27 13:15:17,014 INFO L290 TraceCheckUtils]: 93: Hoare triple {127250#false} assume !(0 != ~b~0); {127250#false} is VALID [2022-04-27 13:15:17,014 INFO L272 TraceCheckUtils]: 94: Hoare triple {127250#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)); {127250#false} is VALID [2022-04-27 13:15:17,014 INFO L290 TraceCheckUtils]: 95: Hoare triple {127250#false} ~cond := #in~cond; {127250#false} is VALID [2022-04-27 13:15:17,015 INFO L290 TraceCheckUtils]: 96: Hoare triple {127250#false} assume 0 == ~cond; {127250#false} is VALID [2022-04-27 13:15:17,015 INFO L290 TraceCheckUtils]: 97: Hoare triple {127250#false} assume !false; {127250#false} is VALID [2022-04-27 13:15:17,015 INFO L134 CoverageAnalysis]: Checked inductivity of 187 backedges. 27 proven. 108 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-27 13:15:17,015 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:15:17,507 INFO L290 TraceCheckUtils]: 97: Hoare triple {127250#false} assume !false; {127250#false} is VALID [2022-04-27 13:15:17,507 INFO L290 TraceCheckUtils]: 96: Hoare triple {127250#false} assume 0 == ~cond; {127250#false} is VALID [2022-04-27 13:15:17,507 INFO L290 TraceCheckUtils]: 95: Hoare triple {127250#false} ~cond := #in~cond; {127250#false} is VALID [2022-04-27 13:15:17,507 INFO L272 TraceCheckUtils]: 94: Hoare triple {127250#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)); {127250#false} is VALID [2022-04-27 13:15:17,507 INFO L290 TraceCheckUtils]: 93: Hoare triple {127250#false} assume !(0 != ~b~0); {127250#false} is VALID [2022-04-27 13:15:17,507 INFO L290 TraceCheckUtils]: 92: Hoare triple {127250#false} assume !!(#t~post6 < 50);havoc #t~post6; {127250#false} is VALID [2022-04-27 13:15:17,507 INFO L290 TraceCheckUtils]: 91: Hoare triple {127250#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {127250#false} is VALID [2022-04-27 13:15:17,507 INFO L290 TraceCheckUtils]: 90: Hoare triple {127250#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; {127250#false} is VALID [2022-04-27 13:15:17,507 INFO L290 TraceCheckUtils]: 89: Hoare triple {127580#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {127250#false} is VALID [2022-04-27 13:15:17,508 INFO L290 TraceCheckUtils]: 88: Hoare triple {127584#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {127580#(< |main_#t~post7| 50)} is VALID [2022-04-27 13:15:17,508 INFO L290 TraceCheckUtils]: 87: Hoare triple {127584#(< ~counter~0 50)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {127584#(< ~counter~0 50)} is VALID [2022-04-27 13:15:17,508 INFO L290 TraceCheckUtils]: 86: Hoare triple {127584#(< ~counter~0 50)} assume !!(#t~post6 < 50);havoc #t~post6; {127584#(< ~counter~0 50)} is VALID [2022-04-27 13:15:17,510 INFO L290 TraceCheckUtils]: 85: Hoare triple {127594#(< ~counter~0 49)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {127584#(< ~counter~0 50)} is VALID [2022-04-27 13:15:17,510 INFO L290 TraceCheckUtils]: 84: Hoare triple {127594#(< ~counter~0 49)} ~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; {127594#(< ~counter~0 49)} is VALID [2022-04-27 13:15:17,510 INFO L290 TraceCheckUtils]: 83: Hoare triple {127594#(< ~counter~0 49)} assume !(~c~0 >= ~b~0); {127594#(< ~counter~0 49)} is VALID [2022-04-27 13:15:17,510 INFO L290 TraceCheckUtils]: 82: Hoare triple {127594#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {127594#(< ~counter~0 49)} is VALID [2022-04-27 13:15:17,511 INFO L290 TraceCheckUtils]: 81: Hoare triple {127607#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {127594#(< ~counter~0 49)} is VALID [2022-04-27 13:15:17,511 INFO L290 TraceCheckUtils]: 80: Hoare triple {127607#(< ~counter~0 48)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {127607#(< ~counter~0 48)} is VALID [2022-04-27 13:15:17,511 INFO L290 TraceCheckUtils]: 79: Hoare triple {127607#(< ~counter~0 48)} assume !(~c~0 >= 2 * ~v~0); {127607#(< ~counter~0 48)} is VALID [2022-04-27 13:15:17,512 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {127249#true} {127607#(< ~counter~0 48)} #104#return; {127607#(< ~counter~0 48)} is VALID [2022-04-27 13:15:17,512 INFO L290 TraceCheckUtils]: 77: Hoare triple {127249#true} assume true; {127249#true} is VALID [2022-04-27 13:15:17,512 INFO L290 TraceCheckUtils]: 76: Hoare triple {127249#true} assume !(0 == ~cond); {127249#true} is VALID [2022-04-27 13:15:17,512 INFO L290 TraceCheckUtils]: 75: Hoare triple {127249#true} ~cond := #in~cond; {127249#true} is VALID [2022-04-27 13:15:17,512 INFO L272 TraceCheckUtils]: 74: Hoare triple {127607#(< ~counter~0 48)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {127249#true} is VALID [2022-04-27 13:15:17,512 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {127249#true} {127607#(< ~counter~0 48)} #102#return; {127607#(< ~counter~0 48)} is VALID [2022-04-27 13:15:17,512 INFO L290 TraceCheckUtils]: 72: Hoare triple {127249#true} assume true; {127249#true} is VALID [2022-04-27 13:15:17,513 INFO L290 TraceCheckUtils]: 71: Hoare triple {127249#true} assume !(0 == ~cond); {127249#true} is VALID [2022-04-27 13:15:17,513 INFO L290 TraceCheckUtils]: 70: Hoare triple {127249#true} ~cond := #in~cond; {127249#true} is VALID [2022-04-27 13:15:17,513 INFO L272 TraceCheckUtils]: 69: Hoare triple {127607#(< ~counter~0 48)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {127249#true} is VALID [2022-04-27 13:15:17,513 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {127249#true} {127607#(< ~counter~0 48)} #100#return; {127607#(< ~counter~0 48)} is VALID [2022-04-27 13:15:17,513 INFO L290 TraceCheckUtils]: 67: Hoare triple {127249#true} assume true; {127249#true} is VALID [2022-04-27 13:15:17,513 INFO L290 TraceCheckUtils]: 66: Hoare triple {127249#true} assume !(0 == ~cond); {127249#true} is VALID [2022-04-27 13:15:17,513 INFO L290 TraceCheckUtils]: 65: Hoare triple {127249#true} ~cond := #in~cond; {127249#true} is VALID [2022-04-27 13:15:17,513 INFO L272 TraceCheckUtils]: 64: Hoare triple {127607#(< ~counter~0 48)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {127249#true} is VALID [2022-04-27 13:15:17,514 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {127249#true} {127607#(< ~counter~0 48)} #98#return; {127607#(< ~counter~0 48)} is VALID [2022-04-27 13:15:17,514 INFO L290 TraceCheckUtils]: 62: Hoare triple {127249#true} assume true; {127249#true} is VALID [2022-04-27 13:15:17,514 INFO L290 TraceCheckUtils]: 61: Hoare triple {127249#true} assume !(0 == ~cond); {127249#true} is VALID [2022-04-27 13:15:17,514 INFO L290 TraceCheckUtils]: 60: Hoare triple {127249#true} ~cond := #in~cond; {127249#true} is VALID [2022-04-27 13:15:17,514 INFO L272 TraceCheckUtils]: 59: Hoare triple {127607#(< ~counter~0 48)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {127249#true} is VALID [2022-04-27 13:15:17,514 INFO L290 TraceCheckUtils]: 58: Hoare triple {127607#(< ~counter~0 48)} assume !!(#t~post8 < 50);havoc #t~post8; {127607#(< ~counter~0 48)} is VALID [2022-04-27 13:15:17,515 INFO L290 TraceCheckUtils]: 57: Hoare triple {127680#(< ~counter~0 47)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {127607#(< ~counter~0 48)} is VALID [2022-04-27 13:15:17,515 INFO L290 TraceCheckUtils]: 56: Hoare triple {127680#(< ~counter~0 47)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {127680#(< ~counter~0 47)} is VALID [2022-04-27 13:15:17,515 INFO L290 TraceCheckUtils]: 55: Hoare triple {127680#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {127680#(< ~counter~0 47)} is VALID [2022-04-27 13:15:17,516 INFO L290 TraceCheckUtils]: 54: Hoare triple {127690#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {127680#(< ~counter~0 47)} is VALID [2022-04-27 13:15:17,516 INFO L290 TraceCheckUtils]: 53: Hoare triple {127690#(< ~counter~0 46)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {127690#(< ~counter~0 46)} is VALID [2022-04-27 13:15:17,516 INFO L290 TraceCheckUtils]: 52: Hoare triple {127690#(< ~counter~0 46)} assume !!(#t~post6 < 50);havoc #t~post6; {127690#(< ~counter~0 46)} is VALID [2022-04-27 13:15:17,517 INFO L290 TraceCheckUtils]: 51: Hoare triple {127700#(< ~counter~0 45)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {127690#(< ~counter~0 46)} is VALID [2022-04-27 13:15:17,517 INFO L290 TraceCheckUtils]: 50: Hoare triple {127700#(< ~counter~0 45)} ~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; {127700#(< ~counter~0 45)} is VALID [2022-04-27 13:15:17,517 INFO L290 TraceCheckUtils]: 49: Hoare triple {127700#(< ~counter~0 45)} assume !(~c~0 >= ~b~0); {127700#(< ~counter~0 45)} is VALID [2022-04-27 13:15:17,518 INFO L290 TraceCheckUtils]: 48: Hoare triple {127700#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {127700#(< ~counter~0 45)} is VALID [2022-04-27 13:15:17,518 INFO L290 TraceCheckUtils]: 47: Hoare triple {127713#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {127700#(< ~counter~0 45)} is VALID [2022-04-27 13:15:17,518 INFO L290 TraceCheckUtils]: 46: Hoare triple {127713#(< ~counter~0 44)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {127713#(< ~counter~0 44)} is VALID [2022-04-27 13:15:17,519 INFO L290 TraceCheckUtils]: 45: Hoare triple {127713#(< ~counter~0 44)} assume !(~c~0 >= 2 * ~v~0); {127713#(< ~counter~0 44)} is VALID [2022-04-27 13:15:17,519 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {127249#true} {127713#(< ~counter~0 44)} #104#return; {127713#(< ~counter~0 44)} is VALID [2022-04-27 13:15:17,519 INFO L290 TraceCheckUtils]: 43: Hoare triple {127249#true} assume true; {127249#true} is VALID [2022-04-27 13:15:17,519 INFO L290 TraceCheckUtils]: 42: Hoare triple {127249#true} assume !(0 == ~cond); {127249#true} is VALID [2022-04-27 13:15:17,519 INFO L290 TraceCheckUtils]: 41: Hoare triple {127249#true} ~cond := #in~cond; {127249#true} is VALID [2022-04-27 13:15:17,519 INFO L272 TraceCheckUtils]: 40: Hoare triple {127713#(< ~counter~0 44)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {127249#true} is VALID [2022-04-27 13:15:17,520 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {127249#true} {127713#(< ~counter~0 44)} #102#return; {127713#(< ~counter~0 44)} is VALID [2022-04-27 13:15:17,520 INFO L290 TraceCheckUtils]: 38: Hoare triple {127249#true} assume true; {127249#true} is VALID [2022-04-27 13:15:17,520 INFO L290 TraceCheckUtils]: 37: Hoare triple {127249#true} assume !(0 == ~cond); {127249#true} is VALID [2022-04-27 13:15:17,520 INFO L290 TraceCheckUtils]: 36: Hoare triple {127249#true} ~cond := #in~cond; {127249#true} is VALID [2022-04-27 13:15:17,520 INFO L272 TraceCheckUtils]: 35: Hoare triple {127713#(< ~counter~0 44)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {127249#true} is VALID [2022-04-27 13:15:17,520 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {127249#true} {127713#(< ~counter~0 44)} #100#return; {127713#(< ~counter~0 44)} is VALID [2022-04-27 13:15:17,520 INFO L290 TraceCheckUtils]: 33: Hoare triple {127249#true} assume true; {127249#true} is VALID [2022-04-27 13:15:17,520 INFO L290 TraceCheckUtils]: 32: Hoare triple {127249#true} assume !(0 == ~cond); {127249#true} is VALID [2022-04-27 13:15:17,521 INFO L290 TraceCheckUtils]: 31: Hoare triple {127249#true} ~cond := #in~cond; {127249#true} is VALID [2022-04-27 13:15:17,521 INFO L272 TraceCheckUtils]: 30: Hoare triple {127713#(< ~counter~0 44)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {127249#true} is VALID [2022-04-27 13:15:17,521 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {127249#true} {127713#(< ~counter~0 44)} #98#return; {127713#(< ~counter~0 44)} is VALID [2022-04-27 13:15:17,521 INFO L290 TraceCheckUtils]: 28: Hoare triple {127249#true} assume true; {127249#true} is VALID [2022-04-27 13:15:17,521 INFO L290 TraceCheckUtils]: 27: Hoare triple {127249#true} assume !(0 == ~cond); {127249#true} is VALID [2022-04-27 13:15:17,521 INFO L290 TraceCheckUtils]: 26: Hoare triple {127249#true} ~cond := #in~cond; {127249#true} is VALID [2022-04-27 13:15:17,521 INFO L272 TraceCheckUtils]: 25: Hoare triple {127713#(< ~counter~0 44)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {127249#true} is VALID [2022-04-27 13:15:17,521 INFO L290 TraceCheckUtils]: 24: Hoare triple {127713#(< ~counter~0 44)} assume !!(#t~post8 < 50);havoc #t~post8; {127713#(< ~counter~0 44)} is VALID [2022-04-27 13:15:17,522 INFO L290 TraceCheckUtils]: 23: Hoare triple {127786#(< ~counter~0 43)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {127713#(< ~counter~0 44)} is VALID [2022-04-27 13:15:17,522 INFO L290 TraceCheckUtils]: 22: Hoare triple {127786#(< ~counter~0 43)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {127786#(< ~counter~0 43)} is VALID [2022-04-27 13:15:17,523 INFO L290 TraceCheckUtils]: 21: Hoare triple {127786#(< ~counter~0 43)} assume !!(#t~post7 < 50);havoc #t~post7; {127786#(< ~counter~0 43)} is VALID [2022-04-27 13:15:17,523 INFO L290 TraceCheckUtils]: 20: Hoare triple {127796#(< ~counter~0 42)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {127786#(< ~counter~0 43)} is VALID [2022-04-27 13:15:17,523 INFO L290 TraceCheckUtils]: 19: Hoare triple {127796#(< ~counter~0 42)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {127796#(< ~counter~0 42)} is VALID [2022-04-27 13:15:17,524 INFO L290 TraceCheckUtils]: 18: Hoare triple {127796#(< ~counter~0 42)} assume !!(#t~post6 < 50);havoc #t~post6; {127796#(< ~counter~0 42)} is VALID [2022-04-27 13:15:17,524 INFO L290 TraceCheckUtils]: 17: Hoare triple {127806#(< ~counter~0 41)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {127796#(< ~counter~0 42)} is VALID [2022-04-27 13:15:17,525 INFO L290 TraceCheckUtils]: 16: Hoare triple {127806#(< ~counter~0 41)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {127806#(< ~counter~0 41)} is VALID [2022-04-27 13:15:17,525 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {127249#true} {127806#(< ~counter~0 41)} #96#return; {127806#(< ~counter~0 41)} is VALID [2022-04-27 13:15:17,525 INFO L290 TraceCheckUtils]: 14: Hoare triple {127249#true} assume true; {127249#true} is VALID [2022-04-27 13:15:17,525 INFO L290 TraceCheckUtils]: 13: Hoare triple {127249#true} assume !(0 == ~cond); {127249#true} is VALID [2022-04-27 13:15:17,525 INFO L290 TraceCheckUtils]: 12: Hoare triple {127249#true} ~cond := #in~cond; {127249#true} is VALID [2022-04-27 13:15:17,525 INFO L272 TraceCheckUtils]: 11: Hoare triple {127806#(< ~counter~0 41)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {127249#true} is VALID [2022-04-27 13:15:17,525 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {127249#true} {127806#(< ~counter~0 41)} #94#return; {127806#(< ~counter~0 41)} is VALID [2022-04-27 13:15:17,525 INFO L290 TraceCheckUtils]: 9: Hoare triple {127249#true} assume true; {127249#true} is VALID [2022-04-27 13:15:17,525 INFO L290 TraceCheckUtils]: 8: Hoare triple {127249#true} assume !(0 == ~cond); {127249#true} is VALID [2022-04-27 13:15:17,526 INFO L290 TraceCheckUtils]: 7: Hoare triple {127249#true} ~cond := #in~cond; {127249#true} is VALID [2022-04-27 13:15:17,526 INFO L272 TraceCheckUtils]: 6: Hoare triple {127806#(< ~counter~0 41)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {127249#true} is VALID [2022-04-27 13:15:17,526 INFO L290 TraceCheckUtils]: 5: Hoare triple {127806#(< ~counter~0 41)} 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; {127806#(< ~counter~0 41)} is VALID [2022-04-27 13:15:17,526 INFO L272 TraceCheckUtils]: 4: Hoare triple {127806#(< ~counter~0 41)} call #t~ret9 := main(); {127806#(< ~counter~0 41)} is VALID [2022-04-27 13:15:17,526 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {127806#(< ~counter~0 41)} {127249#true} #108#return; {127806#(< ~counter~0 41)} is VALID [2022-04-27 13:15:17,526 INFO L290 TraceCheckUtils]: 2: Hoare triple {127806#(< ~counter~0 41)} assume true; {127806#(< ~counter~0 41)} is VALID [2022-04-27 13:15:17,527 INFO L290 TraceCheckUtils]: 1: Hoare triple {127249#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; {127806#(< ~counter~0 41)} is VALID [2022-04-27 13:15:17,527 INFO L272 TraceCheckUtils]: 0: Hoare triple {127249#true} call ULTIMATE.init(); {127249#true} is VALID [2022-04-27 13:15:17,527 INFO L134 CoverageAnalysis]: Checked inductivity of 187 backedges. 27 proven. 44 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-27 13:15:17,527 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:15:17,527 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [842132258] [2022-04-27 13:15:17,527 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:15:17,527 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [585689632] [2022-04-27 13:15:17,528 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [585689632] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:15:17,528 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:15:17,528 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 24 [2022-04-27 13:15:17,528 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [430757119] [2022-04-27 13:15:17,528 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:15:17,528 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 24 states have (on average 4.0) internal successors, (96), 24 states have internal predecessors, (96), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) Word has length 98 [2022-04-27 13:15:17,528 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:15:17,528 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 24 states, 24 states have (on average 4.0) internal successors, (96), 24 states have internal predecessors, (96), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-27 13:15:17,657 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 142 edges. 142 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:15:17,658 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 24 states [2022-04-27 13:15:17,658 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:15:17,659 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2022-04-27 13:15:17,660 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-27 13:15:17,660 INFO L87 Difference]: Start difference. First operand 3119 states and 4341 transitions. Second operand has 24 states, 24 states have (on average 4.0) internal successors, (96), 24 states have internal predecessors, (96), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-27 13:15:35,417 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:15:35,417 INFO L93 Difference]: Finished difference Result 7132 states and 10399 transitions. [2022-04-27 13:15:35,418 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 40 states. [2022-04-27 13:15:35,418 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 24 states have (on average 4.0) internal successors, (96), 24 states have internal predecessors, (96), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) Word has length 98 [2022-04-27 13:15:35,418 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:15:35,418 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 24 states have (on average 4.0) internal successors, (96), 24 states have internal predecessors, (96), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-27 13:15:35,421 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 562 transitions. [2022-04-27 13:15:35,421 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 24 states have (on average 4.0) internal successors, (96), 24 states have internal predecessors, (96), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-27 13:15:35,425 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 562 transitions. [2022-04-27 13:15:35,425 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 40 states and 562 transitions. [2022-04-27 13:15:35,905 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 562 edges. 562 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:15:37,457 INFO L225 Difference]: With dead ends: 7132 [2022-04-27 13:15:37,457 INFO L226 Difference]: Without dead ends: 6000 [2022-04-27 13:15:37,460 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 212 GetRequests, 173 SyntacticMatches, 0 SemanticMatches, 39 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 228 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=585, Invalid=1055, Unknown=0, NotChecked=0, Total=1640 [2022-04-27 13:15:37,461 INFO L413 NwaCegarLoop]: 113 mSDtfsCounter, 583 mSDsluCounter, 602 mSDsCounter, 0 mSdLazyCounter, 418 mSolverCounterSat, 327 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 583 SdHoareTripleChecker+Valid, 715 SdHoareTripleChecker+Invalid, 745 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 327 IncrementalHoareTripleChecker+Valid, 418 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-27 13:15:37,461 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [583 Valid, 715 Invalid, 745 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [327 Valid, 418 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-27 13:15:37,463 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 6000 states. [2022-04-27 13:15:50,459 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 6000 to 5690. [2022-04-27 13:15:50,459 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:15:50,464 INFO L82 GeneralOperation]: Start isEquivalent. First operand 6000 states. Second operand has 5690 states, 3782 states have (on average 1.297197250132205) internal successors, (4906), 3804 states have internal predecessors, (4906), 1601 states have call successors, (1601), 308 states have call predecessors, (1601), 306 states have return successors, (1599), 1577 states have call predecessors, (1599), 1599 states have call successors, (1599) [2022-04-27 13:15:50,468 INFO L74 IsIncluded]: Start isIncluded. First operand 6000 states. Second operand has 5690 states, 3782 states have (on average 1.297197250132205) internal successors, (4906), 3804 states have internal predecessors, (4906), 1601 states have call successors, (1601), 308 states have call predecessors, (1601), 306 states have return successors, (1599), 1577 states have call predecessors, (1599), 1599 states have call successors, (1599) [2022-04-27 13:15:50,471 INFO L87 Difference]: Start difference. First operand 6000 states. Second operand has 5690 states, 3782 states have (on average 1.297197250132205) internal successors, (4906), 3804 states have internal predecessors, (4906), 1601 states have call successors, (1601), 308 states have call predecessors, (1601), 306 states have return successors, (1599), 1577 states have call predecessors, (1599), 1599 states have call successors, (1599) [2022-04-27 13:15:51,414 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:15:51,414 INFO L93 Difference]: Finished difference Result 6000 states and 8433 transitions. [2022-04-27 13:15:51,414 INFO L276 IsEmpty]: Start isEmpty. Operand 6000 states and 8433 transitions. [2022-04-27 13:15:51,423 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:15:51,423 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:15:51,429 INFO L74 IsIncluded]: Start isIncluded. First operand has 5690 states, 3782 states have (on average 1.297197250132205) internal successors, (4906), 3804 states have internal predecessors, (4906), 1601 states have call successors, (1601), 308 states have call predecessors, (1601), 306 states have return successors, (1599), 1577 states have call predecessors, (1599), 1599 states have call successors, (1599) Second operand 6000 states. [2022-04-27 13:15:51,434 INFO L87 Difference]: Start difference. First operand has 5690 states, 3782 states have (on average 1.297197250132205) internal successors, (4906), 3804 states have internal predecessors, (4906), 1601 states have call successors, (1601), 308 states have call predecessors, (1601), 306 states have return successors, (1599), 1577 states have call predecessors, (1599), 1599 states have call successors, (1599) Second operand 6000 states. [2022-04-27 13:15:52,273 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:15:52,273 INFO L93 Difference]: Finished difference Result 6000 states and 8433 transitions. [2022-04-27 13:15:52,273 INFO L276 IsEmpty]: Start isEmpty. Operand 6000 states and 8433 transitions. [2022-04-27 13:15:52,281 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:15:52,281 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:15:52,281 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:15:52,281 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:15:52,287 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5690 states, 3782 states have (on average 1.297197250132205) internal successors, (4906), 3804 states have internal predecessors, (4906), 1601 states have call successors, (1601), 308 states have call predecessors, (1601), 306 states have return successors, (1599), 1577 states have call predecessors, (1599), 1599 states have call successors, (1599) [2022-04-27 13:15:53,634 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5690 states to 5690 states and 8106 transitions. [2022-04-27 13:15:53,634 INFO L78 Accepts]: Start accepts. Automaton has 5690 states and 8106 transitions. Word has length 98 [2022-04-27 13:15:53,635 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:15:53,635 INFO L495 AbstractCegarLoop]: Abstraction has 5690 states and 8106 transitions. [2022-04-27 13:15:53,635 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 24 states, 24 states have (on average 4.0) internal successors, (96), 24 states have internal predecessors, (96), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-27 13:15:53,635 INFO L276 IsEmpty]: Start isEmpty. Operand 5690 states and 8106 transitions. [2022-04-27 13:15:53,636 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 109 [2022-04-27 13:15:53,636 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:15:53,636 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:15:53,652 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:15:53,836 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:15:53,837 INFO L420 AbstractCegarLoop]: === Iteration 25 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:15:53,837 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:15:53,837 INFO L85 PathProgramCache]: Analyzing trace with hash 911562927, now seen corresponding path program 2 times [2022-04-27 13:15:53,837 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:15:53,837 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1481942782] [2022-04-27 13:15:53,837 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:15:53,837 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:15:53,848 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:15:53,848 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1686251137] [2022-04-27 13:15:53,848 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 13:15:53,848 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:15:53,849 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:15:53,849 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:15:53,861 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:15:53,918 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 13:15:53,918 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:15:53,919 INFO L263 TraceCheckSpWp]: Trace formula consists of 289 conjuncts, 74 conjunts are in the unsatisfiable core [2022-04-27 13:15:53,935 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:15:53,936 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:15:55,289 INFO L272 TraceCheckUtils]: 0: Hoare triple {158869#true} call ULTIMATE.init(); {158869#true} is VALID [2022-04-27 13:15:55,289 INFO L290 TraceCheckUtils]: 1: Hoare triple {158869#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; {158869#true} is VALID [2022-04-27 13:15:55,289 INFO L290 TraceCheckUtils]: 2: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:15:55,289 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {158869#true} {158869#true} #108#return; {158869#true} is VALID [2022-04-27 13:15:55,289 INFO L272 TraceCheckUtils]: 4: Hoare triple {158869#true} call #t~ret9 := main(); {158869#true} is VALID [2022-04-27 13:15:55,289 INFO L290 TraceCheckUtils]: 5: Hoare triple {158869#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; {158869#true} is VALID [2022-04-27 13:15:55,289 INFO L272 TraceCheckUtils]: 6: Hoare triple {158869#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {158869#true} is VALID [2022-04-27 13:15:55,289 INFO L290 TraceCheckUtils]: 7: Hoare triple {158869#true} ~cond := #in~cond; {158869#true} is VALID [2022-04-27 13:15:55,289 INFO L290 TraceCheckUtils]: 8: Hoare triple {158869#true} assume !(0 == ~cond); {158869#true} is VALID [2022-04-27 13:15:55,290 INFO L290 TraceCheckUtils]: 9: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:15:55,290 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {158869#true} {158869#true} #94#return; {158869#true} is VALID [2022-04-27 13:15:55,290 INFO L272 TraceCheckUtils]: 11: Hoare triple {158869#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {158869#true} is VALID [2022-04-27 13:15:55,290 INFO L290 TraceCheckUtils]: 12: Hoare triple {158869#true} ~cond := #in~cond; {158869#true} is VALID [2022-04-27 13:15:55,290 INFO L290 TraceCheckUtils]: 13: Hoare triple {158869#true} assume !(0 == ~cond); {158869#true} is VALID [2022-04-27 13:15:55,290 INFO L290 TraceCheckUtils]: 14: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:15:55,290 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {158869#true} {158869#true} #96#return; {158869#true} is VALID [2022-04-27 13:15:55,290 INFO L290 TraceCheckUtils]: 16: Hoare triple {158869#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {158922#(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:15:55,291 INFO L290 TraceCheckUtils]: 17: Hoare triple {158922#(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; {158922#(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:15:55,291 INFO L290 TraceCheckUtils]: 18: Hoare triple {158922#(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 < 50);havoc #t~post6; {158922#(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:15:55,291 INFO L290 TraceCheckUtils]: 19: Hoare triple {158922#(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; {158932#(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:15:55,292 INFO L290 TraceCheckUtils]: 20: Hoare triple {158932#(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; {158932#(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:15:55,292 INFO L290 TraceCheckUtils]: 21: Hoare triple {158932#(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 < 50);havoc #t~post7; {158932#(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:15:55,292 INFO L290 TraceCheckUtils]: 22: Hoare triple {158932#(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; {158942#(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:15:55,293 INFO L290 TraceCheckUtils]: 23: Hoare triple {158942#(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; {158942#(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:15:55,293 INFO L290 TraceCheckUtils]: 24: Hoare triple {158942#(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 < 50);havoc #t~post8; {158942#(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:15:55,293 INFO L272 TraceCheckUtils]: 25: Hoare triple {158942#(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)); {158869#true} is VALID [2022-04-27 13:15:55,293 INFO L290 TraceCheckUtils]: 26: Hoare triple {158869#true} ~cond := #in~cond; {158869#true} is VALID [2022-04-27 13:15:55,293 INFO L290 TraceCheckUtils]: 27: Hoare triple {158869#true} assume !(0 == ~cond); {158869#true} is VALID [2022-04-27 13:15:55,293 INFO L290 TraceCheckUtils]: 28: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:15:55,294 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {158869#true} {158942#(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; {158942#(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:15:55,294 INFO L272 TraceCheckUtils]: 30: Hoare triple {158942#(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 ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {158869#true} is VALID [2022-04-27 13:15:55,294 INFO L290 TraceCheckUtils]: 31: Hoare triple {158869#true} ~cond := #in~cond; {158869#true} is VALID [2022-04-27 13:15:55,294 INFO L290 TraceCheckUtils]: 32: Hoare triple {158869#true} assume !(0 == ~cond); {158869#true} is VALID [2022-04-27 13:15:55,294 INFO L290 TraceCheckUtils]: 33: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:15:55,295 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {158869#true} {158942#(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))} #100#return; {158942#(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:15:55,295 INFO L272 TraceCheckUtils]: 35: Hoare triple {158942#(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 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {158869#true} is VALID [2022-04-27 13:15:55,295 INFO L290 TraceCheckUtils]: 36: Hoare triple {158869#true} ~cond := #in~cond; {158869#true} is VALID [2022-04-27 13:15:55,295 INFO L290 TraceCheckUtils]: 37: Hoare triple {158869#true} assume !(0 == ~cond); {158869#true} is VALID [2022-04-27 13:15:55,295 INFO L290 TraceCheckUtils]: 38: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:15:55,296 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {158869#true} {158942#(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))} #102#return; {158942#(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:15:55,296 INFO L272 TraceCheckUtils]: 40: Hoare triple {158942#(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 ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {158869#true} is VALID [2022-04-27 13:15:55,296 INFO L290 TraceCheckUtils]: 41: Hoare triple {158869#true} ~cond := #in~cond; {158869#true} is VALID [2022-04-27 13:15:55,296 INFO L290 TraceCheckUtils]: 42: Hoare triple {158869#true} assume !(0 == ~cond); {158869#true} is VALID [2022-04-27 13:15:55,296 INFO L290 TraceCheckUtils]: 43: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:15:55,297 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {158869#true} {158942#(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))} #104#return; {158942#(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:15:55,297 INFO L290 TraceCheckUtils]: 45: Hoare triple {158942#(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 !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {159012#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,298 INFO L290 TraceCheckUtils]: 46: Hoare triple {159012#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {159012#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,298 INFO L290 TraceCheckUtils]: 47: Hoare triple {159012#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {159012#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,298 INFO L272 TraceCheckUtils]: 48: Hoare triple {159012#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~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)); {158869#true} is VALID [2022-04-27 13:15:55,298 INFO L290 TraceCheckUtils]: 49: Hoare triple {158869#true} ~cond := #in~cond; {158869#true} is VALID [2022-04-27 13:15:55,298 INFO L290 TraceCheckUtils]: 50: Hoare triple {158869#true} assume !(0 == ~cond); {158869#true} is VALID [2022-04-27 13:15:55,298 INFO L290 TraceCheckUtils]: 51: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:15:55,299 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {158869#true} {159012#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #98#return; {159012#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,299 INFO L272 TraceCheckUtils]: 53: Hoare triple {159012#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {158869#true} is VALID [2022-04-27 13:15:55,299 INFO L290 TraceCheckUtils]: 54: Hoare triple {158869#true} ~cond := #in~cond; {158869#true} is VALID [2022-04-27 13:15:55,299 INFO L290 TraceCheckUtils]: 55: Hoare triple {158869#true} assume !(0 == ~cond); {158869#true} is VALID [2022-04-27 13:15:55,299 INFO L290 TraceCheckUtils]: 56: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:15:55,300 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {158869#true} {159012#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #100#return; {159012#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,300 INFO L272 TraceCheckUtils]: 58: Hoare triple {159012#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {158869#true} is VALID [2022-04-27 13:15:55,300 INFO L290 TraceCheckUtils]: 59: Hoare triple {158869#true} ~cond := #in~cond; {158869#true} is VALID [2022-04-27 13:15:55,300 INFO L290 TraceCheckUtils]: 60: Hoare triple {158869#true} assume !(0 == ~cond); {158869#true} is VALID [2022-04-27 13:15:55,302 INFO L290 TraceCheckUtils]: 61: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:15:55,302 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {158869#true} {159012#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {159012#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,303 INFO L272 TraceCheckUtils]: 63: Hoare triple {159012#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {158869#true} is VALID [2022-04-27 13:15:55,303 INFO L290 TraceCheckUtils]: 64: Hoare triple {158869#true} ~cond := #in~cond; {158869#true} is VALID [2022-04-27 13:15:55,303 INFO L290 TraceCheckUtils]: 65: Hoare triple {158869#true} assume !(0 == ~cond); {158869#true} is VALID [2022-04-27 13:15:55,303 INFO L290 TraceCheckUtils]: 66: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:15:55,303 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {158869#true} {159012#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #104#return; {159012#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,304 INFO L290 TraceCheckUtils]: 68: Hoare triple {159012#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {159012#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,305 INFO L290 TraceCheckUtils]: 69: Hoare triple {159012#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {159085#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,305 INFO L290 TraceCheckUtils]: 70: Hoare triple {159085#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {159085#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,306 INFO L290 TraceCheckUtils]: 71: Hoare triple {159085#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {159085#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,306 INFO L290 TraceCheckUtils]: 72: Hoare triple {159085#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= 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; {159095#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,306 INFO L290 TraceCheckUtils]: 73: Hoare triple {159095#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {159095#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,307 INFO L290 TraceCheckUtils]: 74: Hoare triple {159095#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {159095#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,307 INFO L272 TraceCheckUtils]: 75: Hoare triple {159095#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= 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)); {158869#true} is VALID [2022-04-27 13:15:55,307 INFO L290 TraceCheckUtils]: 76: Hoare triple {158869#true} ~cond := #in~cond; {159108#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:15:55,307 INFO L290 TraceCheckUtils]: 77: Hoare triple {159108#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:15:55,308 INFO L290 TraceCheckUtils]: 78: Hoare triple {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:15:55,308 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} {159095#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #98#return; {159095#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,308 INFO L272 TraceCheckUtils]: 80: Hoare triple {159095#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {158869#true} is VALID [2022-04-27 13:15:55,309 INFO L290 TraceCheckUtils]: 81: Hoare triple {158869#true} ~cond := #in~cond; {159108#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:15:55,309 INFO L290 TraceCheckUtils]: 82: Hoare triple {159108#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:15:55,309 INFO L290 TraceCheckUtils]: 83: Hoare triple {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:15:55,310 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} {159095#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #100#return; {159095#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,310 INFO L272 TraceCheckUtils]: 85: Hoare triple {159095#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {158869#true} is VALID [2022-04-27 13:15:55,310 INFO L290 TraceCheckUtils]: 86: Hoare triple {158869#true} ~cond := #in~cond; {159108#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:15:55,310 INFO L290 TraceCheckUtils]: 87: Hoare triple {159108#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:15:55,311 INFO L290 TraceCheckUtils]: 88: Hoare triple {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:15:55,312 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} {159095#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {159149#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,312 INFO L272 TraceCheckUtils]: 90: Hoare triple {159149#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {158869#true} is VALID [2022-04-27 13:15:55,312 INFO L290 TraceCheckUtils]: 91: Hoare triple {158869#true} ~cond := #in~cond; {158869#true} is VALID [2022-04-27 13:15:55,312 INFO L290 TraceCheckUtils]: 92: Hoare triple {158869#true} assume !(0 == ~cond); {158869#true} is VALID [2022-04-27 13:15:55,312 INFO L290 TraceCheckUtils]: 93: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:15:55,312 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {158869#true} {159149#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} #104#return; {159149#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,313 INFO L290 TraceCheckUtils]: 95: Hoare triple {159149#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {159149#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,314 INFO L290 TraceCheckUtils]: 96: Hoare triple {159149#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {159171#(and (= main_~c~0 (+ main_~x~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,314 INFO L290 TraceCheckUtils]: 97: Hoare triple {159171#(and (= main_~c~0 (+ main_~x~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {159171#(and (= main_~c~0 (+ main_~x~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,315 INFO L290 TraceCheckUtils]: 98: Hoare triple {159171#(and (= main_~c~0 (+ main_~x~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {159171#(and (= main_~c~0 (+ main_~x~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,315 INFO L290 TraceCheckUtils]: 99: Hoare triple {159171#(and (= main_~c~0 (+ main_~x~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {159171#(and (= main_~c~0 (+ main_~x~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-27 13:15:55,316 INFO L290 TraceCheckUtils]: 100: Hoare triple {159171#(and (= main_~c~0 (+ main_~x~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {159184#(and (= (+ main_~q~0 (* main_~p~0 3)) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0))} is VALID [2022-04-27 13:15:55,316 INFO L290 TraceCheckUtils]: 101: Hoare triple {159184#(and (= (+ main_~q~0 (* main_~p~0 3)) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {159184#(and (= (+ main_~q~0 (* main_~p~0 3)) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0))} is VALID [2022-04-27 13:15:55,317 INFO L290 TraceCheckUtils]: 102: Hoare triple {159184#(and (= (+ main_~q~0 (* main_~p~0 3)) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0))} assume !!(#t~post6 < 50);havoc #t~post6; {159184#(and (= (+ main_~q~0 (* main_~p~0 3)) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0))} is VALID [2022-04-27 13:15:55,317 INFO L290 TraceCheckUtils]: 103: Hoare triple {159184#(and (= (+ main_~q~0 (* main_~p~0 3)) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0))} assume !(0 != ~b~0); {159194#(and (= (+ main_~q~0 (* main_~p~0 3)) 1) (= (+ (* main_~a~0 (- 3)) main_~x~0) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 (* main_~r~0 3)) 0))} is VALID [2022-04-27 13:15:55,318 INFO L272 TraceCheckUtils]: 104: Hoare triple {159194#(and (= (+ main_~q~0 (* main_~p~0 3)) 1) (= (+ (* main_~a~0 (- 3)) main_~x~0) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 (* main_~r~0 3)) 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)); {159198#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:15:55,318 INFO L290 TraceCheckUtils]: 105: Hoare triple {159198#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {159202#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:15:55,319 INFO L290 TraceCheckUtils]: 106: Hoare triple {159202#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {158870#false} is VALID [2022-04-27 13:15:55,319 INFO L290 TraceCheckUtils]: 107: Hoare triple {158870#false} assume !false; {158870#false} is VALID [2022-04-27 13:15:55,319 INFO L134 CoverageAnalysis]: Checked inductivity of 326 backedges. 93 proven. 46 refuted. 0 times theorem prover too weak. 187 trivial. 0 not checked. [2022-04-27 13:15:55,319 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:16:50,160 INFO L290 TraceCheckUtils]: 107: Hoare triple {158870#false} assume !false; {158870#false} is VALID [2022-04-27 13:16:50,161 INFO L290 TraceCheckUtils]: 106: Hoare triple {159202#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {158870#false} is VALID [2022-04-27 13:16:50,161 INFO L290 TraceCheckUtils]: 105: Hoare triple {159198#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {159202#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:16:50,162 INFO L272 TraceCheckUtils]: 104: Hoare triple {159218#(= (+ (* 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)); {159198#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:16:50,162 INFO L290 TraceCheckUtils]: 103: Hoare triple {159222#(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); {159218#(= (+ (* 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:16:50,163 INFO L290 TraceCheckUtils]: 102: Hoare triple {159222#(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 < 50);havoc #t~post6; {159222#(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:16:50,163 INFO L290 TraceCheckUtils]: 101: Hoare triple {159222#(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; {159222#(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:16:50,410 INFO L290 TraceCheckUtils]: 100: Hoare triple {159232#(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; {159222#(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:16:50,411 INFO L290 TraceCheckUtils]: 99: Hoare triple {159232#(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); {159232#(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:16:50,411 INFO L290 TraceCheckUtils]: 98: Hoare triple {159232#(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 < 50);havoc #t~post7; {159232#(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:16:50,412 INFO L290 TraceCheckUtils]: 97: Hoare triple {159232#(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; {159232#(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:16:50,535 INFO L290 TraceCheckUtils]: 96: Hoare triple {159245#(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; {159232#(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:16:50,536 INFO L290 TraceCheckUtils]: 95: Hoare triple {159245#(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); {159245#(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:16:50,536 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {158869#true} {159245#(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; {159245#(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:16:50,536 INFO L290 TraceCheckUtils]: 93: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:16:50,537 INFO L290 TraceCheckUtils]: 92: Hoare triple {158869#true} assume !(0 == ~cond); {158869#true} is VALID [2022-04-27 13:16:50,537 INFO L290 TraceCheckUtils]: 91: Hoare triple {158869#true} ~cond := #in~cond; {158869#true} is VALID [2022-04-27 13:16:50,537 INFO L272 TraceCheckUtils]: 90: Hoare triple {159245#(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)); {158869#true} is VALID [2022-04-27 13:16:50,538 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} {159267#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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; {159245#(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:16:50,538 INFO L290 TraceCheckUtils]: 88: Hoare triple {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:16:50,538 INFO L290 TraceCheckUtils]: 87: Hoare triple {159277#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:16:50,539 INFO L290 TraceCheckUtils]: 86: Hoare triple {158869#true} ~cond := #in~cond; {159277#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:16:50,539 INFO L272 TraceCheckUtils]: 85: Hoare triple {159267#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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)); {158869#true} is VALID [2022-04-27 13:16:50,540 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} {159284#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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; {159267#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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:16:50,540 INFO L290 TraceCheckUtils]: 83: Hoare triple {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:16:50,540 INFO L290 TraceCheckUtils]: 82: Hoare triple {159277#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:16:50,540 INFO L290 TraceCheckUtils]: 81: Hoare triple {158869#true} ~cond := #in~cond; {159277#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:16:50,540 INFO L272 TraceCheckUtils]: 80: Hoare triple {159284#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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)); {158869#true} is VALID [2022-04-27 13:16:50,541 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} {159300#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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; {159284#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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:16:50,542 INFO L290 TraceCheckUtils]: 78: Hoare triple {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:16:50,542 INFO L290 TraceCheckUtils]: 77: Hoare triple {159277#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {159112#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:16:50,542 INFO L290 TraceCheckUtils]: 76: Hoare triple {158869#true} ~cond := #in~cond; {159277#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:16:50,542 INFO L272 TraceCheckUtils]: 75: Hoare triple {159300#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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)); {158869#true} is VALID [2022-04-27 13:16:50,543 INFO L290 TraceCheckUtils]: 74: Hoare triple {159300#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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 < 50);havoc #t~post8; {159300#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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:16:50,543 INFO L290 TraceCheckUtils]: 73: Hoare triple {159300#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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; {159300#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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:16:50,741 INFO L290 TraceCheckUtils]: 72: Hoare triple {158869#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {159300#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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:16:50,741 INFO L290 TraceCheckUtils]: 71: Hoare triple {158869#true} assume !!(#t~post7 < 50);havoc #t~post7; {158869#true} is VALID [2022-04-27 13:16:50,741 INFO L290 TraceCheckUtils]: 70: Hoare triple {158869#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {158869#true} is VALID [2022-04-27 13:16:50,741 INFO L290 TraceCheckUtils]: 69: Hoare triple {158869#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {158869#true} is VALID [2022-04-27 13:16:50,741 INFO L290 TraceCheckUtils]: 68: Hoare triple {158869#true} assume !(~c~0 >= 2 * ~v~0); {158869#true} is VALID [2022-04-27 13:16:50,741 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {158869#true} {158869#true} #104#return; {158869#true} is VALID [2022-04-27 13:16:50,741 INFO L290 TraceCheckUtils]: 66: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:16:50,741 INFO L290 TraceCheckUtils]: 65: Hoare triple {158869#true} assume !(0 == ~cond); {158869#true} is VALID [2022-04-27 13:16:50,741 INFO L290 TraceCheckUtils]: 64: Hoare triple {158869#true} ~cond := #in~cond; {158869#true} is VALID [2022-04-27 13:16:50,741 INFO L272 TraceCheckUtils]: 63: Hoare triple {158869#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {158869#true} {158869#true} #102#return; {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L290 TraceCheckUtils]: 61: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L290 TraceCheckUtils]: 60: Hoare triple {158869#true} assume !(0 == ~cond); {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L290 TraceCheckUtils]: 59: Hoare triple {158869#true} ~cond := #in~cond; {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L272 TraceCheckUtils]: 58: Hoare triple {158869#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {158869#true} {158869#true} #100#return; {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L290 TraceCheckUtils]: 56: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L290 TraceCheckUtils]: 55: Hoare triple {158869#true} assume !(0 == ~cond); {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L290 TraceCheckUtils]: 54: Hoare triple {158869#true} ~cond := #in~cond; {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L272 TraceCheckUtils]: 53: Hoare triple {158869#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {158869#true} {158869#true} #98#return; {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L290 TraceCheckUtils]: 51: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L290 TraceCheckUtils]: 50: Hoare triple {158869#true} assume !(0 == ~cond); {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L290 TraceCheckUtils]: 49: Hoare triple {158869#true} ~cond := #in~cond; {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L272 TraceCheckUtils]: 48: Hoare triple {158869#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L290 TraceCheckUtils]: 47: Hoare triple {158869#true} assume !!(#t~post8 < 50);havoc #t~post8; {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L290 TraceCheckUtils]: 46: Hoare triple {158869#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L290 TraceCheckUtils]: 45: Hoare triple {158869#true} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {158869#true} {158869#true} #104#return; {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L290 TraceCheckUtils]: 43: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L290 TraceCheckUtils]: 42: Hoare triple {158869#true} assume !(0 == ~cond); {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L290 TraceCheckUtils]: 41: Hoare triple {158869#true} ~cond := #in~cond; {158869#true} is VALID [2022-04-27 13:16:50,742 INFO L272 TraceCheckUtils]: 40: Hoare triple {158869#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {158869#true} {158869#true} #102#return; {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L290 TraceCheckUtils]: 38: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L290 TraceCheckUtils]: 37: Hoare triple {158869#true} assume !(0 == ~cond); {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L290 TraceCheckUtils]: 36: Hoare triple {158869#true} ~cond := #in~cond; {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L272 TraceCheckUtils]: 35: Hoare triple {158869#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {158869#true} {158869#true} #100#return; {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L290 TraceCheckUtils]: 33: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L290 TraceCheckUtils]: 32: Hoare triple {158869#true} assume !(0 == ~cond); {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L290 TraceCheckUtils]: 31: Hoare triple {158869#true} ~cond := #in~cond; {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L272 TraceCheckUtils]: 30: Hoare triple {158869#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {158869#true} {158869#true} #98#return; {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L290 TraceCheckUtils]: 28: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L290 TraceCheckUtils]: 27: Hoare triple {158869#true} assume !(0 == ~cond); {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L290 TraceCheckUtils]: 26: Hoare triple {158869#true} ~cond := #in~cond; {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L272 TraceCheckUtils]: 25: Hoare triple {158869#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L290 TraceCheckUtils]: 24: Hoare triple {158869#true} assume !!(#t~post8 < 50);havoc #t~post8; {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L290 TraceCheckUtils]: 23: Hoare triple {158869#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L290 TraceCheckUtils]: 22: Hoare triple {158869#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L290 TraceCheckUtils]: 21: Hoare triple {158869#true} assume !!(#t~post7 < 50);havoc #t~post7; {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L290 TraceCheckUtils]: 20: Hoare triple {158869#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L290 TraceCheckUtils]: 19: Hoare triple {158869#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L290 TraceCheckUtils]: 18: Hoare triple {158869#true} assume !!(#t~post6 < 50);havoc #t~post6; {158869#true} is VALID [2022-04-27 13:16:50,743 INFO L290 TraceCheckUtils]: 17: Hoare triple {158869#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {158869#true} is VALID [2022-04-27 13:16:50,744 INFO L290 TraceCheckUtils]: 16: Hoare triple {158869#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {158869#true} is VALID [2022-04-27 13:16:50,744 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {158869#true} {158869#true} #96#return; {158869#true} is VALID [2022-04-27 13:16:50,744 INFO L290 TraceCheckUtils]: 14: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:16:50,744 INFO L290 TraceCheckUtils]: 13: Hoare triple {158869#true} assume !(0 == ~cond); {158869#true} is VALID [2022-04-27 13:16:50,744 INFO L290 TraceCheckUtils]: 12: Hoare triple {158869#true} ~cond := #in~cond; {158869#true} is VALID [2022-04-27 13:16:50,744 INFO L272 TraceCheckUtils]: 11: Hoare triple {158869#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {158869#true} is VALID [2022-04-27 13:16:50,744 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {158869#true} {158869#true} #94#return; {158869#true} is VALID [2022-04-27 13:16:50,744 INFO L290 TraceCheckUtils]: 9: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:16:50,744 INFO L290 TraceCheckUtils]: 8: Hoare triple {158869#true} assume !(0 == ~cond); {158869#true} is VALID [2022-04-27 13:16:50,744 INFO L290 TraceCheckUtils]: 7: Hoare triple {158869#true} ~cond := #in~cond; {158869#true} is VALID [2022-04-27 13:16:50,744 INFO L272 TraceCheckUtils]: 6: Hoare triple {158869#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {158869#true} is VALID [2022-04-27 13:16:50,744 INFO L290 TraceCheckUtils]: 5: Hoare triple {158869#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; {158869#true} is VALID [2022-04-27 13:16:50,744 INFO L272 TraceCheckUtils]: 4: Hoare triple {158869#true} call #t~ret9 := main(); {158869#true} is VALID [2022-04-27 13:16:50,744 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {158869#true} {158869#true} #108#return; {158869#true} is VALID [2022-04-27 13:16:50,744 INFO L290 TraceCheckUtils]: 2: Hoare triple {158869#true} assume true; {158869#true} is VALID [2022-04-27 13:16:50,744 INFO L290 TraceCheckUtils]: 1: Hoare triple {158869#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; {158869#true} is VALID [2022-04-27 13:16:50,744 INFO L272 TraceCheckUtils]: 0: Hoare triple {158869#true} call ULTIMATE.init(); {158869#true} is VALID [2022-04-27 13:16:50,745 INFO L134 CoverageAnalysis]: Checked inductivity of 326 backedges. 117 proven. 12 refuted. 0 times theorem prover too weak. 197 trivial. 0 not checked. [2022-04-27 13:16:50,745 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:16:50,745 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1481942782] [2022-04-27 13:16:50,745 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:16:50,745 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1686251137] [2022-04-27 13:16:50,745 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1686251137] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:16:50,745 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:16:50,745 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 13] total 24 [2022-04-27 13:16:50,745 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [470183466] [2022-04-27 13:16:50,745 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:16:50,746 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 20 states have (on average 3.45) internal successors, (69), 21 states have internal predecessors, (69), 11 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (23), 8 states have call predecessors, (23), 9 states have call successors, (23) Word has length 108 [2022-04-27 13:16:50,746 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:16:50,746 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 24 states, 20 states have (on average 3.45) internal successors, (69), 21 states have internal predecessors, (69), 11 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (23), 8 states have call predecessors, (23), 9 states have call successors, (23) [2022-04-27 13:16:51,160 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 118 edges. 118 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:16:51,160 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 24 states [2022-04-27 13:16:51,160 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:16:51,160 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2022-04-27 13:16:51,161 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=97, Invalid=455, Unknown=0, NotChecked=0, Total=552 [2022-04-27 13:16:51,161 INFO L87 Difference]: Start difference. First operand 5690 states and 8106 transitions. Second operand has 24 states, 20 states have (on average 3.45) internal successors, (69), 21 states have internal predecessors, (69), 11 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (23), 8 states have call predecessors, (23), 9 states have call successors, (23) [2022-04-27 13:17:06,498 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:17:34,749 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:17:34,750 INFO L93 Difference]: Finished difference Result 6730 states and 9551 transitions. [2022-04-27 13:17:34,750 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 32 states. [2022-04-27 13:17:34,750 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 20 states have (on average 3.45) internal successors, (69), 21 states have internal predecessors, (69), 11 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (23), 8 states have call predecessors, (23), 9 states have call successors, (23) Word has length 108 [2022-04-27 13:17:34,750 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:17:34,750 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 20 states have (on average 3.45) internal successors, (69), 21 states have internal predecessors, (69), 11 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (23), 8 states have call predecessors, (23), 9 states have call successors, (23) [2022-04-27 13:17:34,753 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 307 transitions. [2022-04-27 13:17:34,753 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 20 states have (on average 3.45) internal successors, (69), 21 states have internal predecessors, (69), 11 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (23), 8 states have call predecessors, (23), 9 states have call successors, (23) [2022-04-27 13:17:34,756 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 307 transitions. [2022-04-27 13:17:34,756 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 307 transitions. [2022-04-27 13:17:37,000 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 307 edges. 307 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:17:39,065 INFO L225 Difference]: With dead ends: 6730 [2022-04-27 13:17:39,066 INFO L226 Difference]: Without dead ends: 6724 [2022-04-27 13:17:39,067 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 245 GetRequests, 201 SyntacticMatches, 3 SemanticMatches, 41 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 364 ImplicationChecksByTransitivity, 2.3s TimeCoverageRelationStatistics Valid=340, Invalid=1466, Unknown=0, NotChecked=0, Total=1806 [2022-04-27 13:17:39,068 INFO L413 NwaCegarLoop]: 77 mSDtfsCounter, 181 mSDsluCounter, 684 mSDsCounter, 0 mSdLazyCounter, 1353 mSolverCounterSat, 286 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 8.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 195 SdHoareTripleChecker+Valid, 761 SdHoareTripleChecker+Invalid, 1640 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 286 IncrementalHoareTripleChecker+Valid, 1353 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 8.8s IncrementalHoareTripleChecker+Time [2022-04-27 13:17:39,068 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [195 Valid, 761 Invalid, 1640 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [286 Valid, 1353 Invalid, 1 Unknown, 0 Unchecked, 8.8s Time] [2022-04-27 13:17:39,071 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 6724 states. [2022-04-27 13:17:53,547 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 6724 to 6108. [2022-04-27 13:17:53,547 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:17:53,553 INFO L82 GeneralOperation]: Start isEquivalent. First operand 6724 states. Second operand has 6108 states, 3995 states have (on average 1.3053817271589487) internal successors, (5215), 4017 states have internal predecessors, (5215), 1781 states have call successors, (1781), 333 states have call predecessors, (1781), 331 states have return successors, (1779), 1757 states have call predecessors, (1779), 1779 states have call successors, (1779) [2022-04-27 13:17:53,558 INFO L74 IsIncluded]: Start isIncluded. First operand 6724 states. Second operand has 6108 states, 3995 states have (on average 1.3053817271589487) internal successors, (5215), 4017 states have internal predecessors, (5215), 1781 states have call successors, (1781), 333 states have call predecessors, (1781), 331 states have return successors, (1779), 1757 states have call predecessors, (1779), 1779 states have call successors, (1779) [2022-04-27 13:17:53,564 INFO L87 Difference]: Start difference. First operand 6724 states. Second operand has 6108 states, 3995 states have (on average 1.3053817271589487) internal successors, (5215), 4017 states have internal predecessors, (5215), 1781 states have call successors, (1781), 333 states have call predecessors, (1781), 331 states have return successors, (1779), 1757 states have call predecessors, (1779), 1779 states have call successors, (1779) [2022-04-27 13:17:54,758 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:17:54,758 INFO L93 Difference]: Finished difference Result 6724 states and 9501 transitions. [2022-04-27 13:17:54,758 INFO L276 IsEmpty]: Start isEmpty. Operand 6724 states and 9501 transitions. [2022-04-27 13:17:54,766 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:17:54,766 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:17:54,773 INFO L74 IsIncluded]: Start isIncluded. First operand has 6108 states, 3995 states have (on average 1.3053817271589487) internal successors, (5215), 4017 states have internal predecessors, (5215), 1781 states have call successors, (1781), 333 states have call predecessors, (1781), 331 states have return successors, (1779), 1757 states have call predecessors, (1779), 1779 states have call successors, (1779) Second operand 6724 states. [2022-04-27 13:17:54,776 INFO L87 Difference]: Start difference. First operand has 6108 states, 3995 states have (on average 1.3053817271589487) internal successors, (5215), 4017 states have internal predecessors, (5215), 1781 states have call successors, (1781), 333 states have call predecessors, (1781), 331 states have return successors, (1779), 1757 states have call predecessors, (1779), 1779 states have call successors, (1779) Second operand 6724 states. [2022-04-27 13:17:56,105 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:17:56,105 INFO L93 Difference]: Finished difference Result 6724 states and 9501 transitions. [2022-04-27 13:17:56,105 INFO L276 IsEmpty]: Start isEmpty. Operand 6724 states and 9501 transitions. [2022-04-27 13:17:56,114 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:17:56,115 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:17:56,115 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:17:56,115 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:17:56,121 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6108 states, 3995 states have (on average 1.3053817271589487) internal successors, (5215), 4017 states have internal predecessors, (5215), 1781 states have call successors, (1781), 333 states have call predecessors, (1781), 331 states have return successors, (1779), 1757 states have call predecessors, (1779), 1779 states have call successors, (1779) [2022-04-27 13:17:57,665 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6108 states to 6108 states and 8775 transitions. [2022-04-27 13:17:57,665 INFO L78 Accepts]: Start accepts. Automaton has 6108 states and 8775 transitions. Word has length 108 [2022-04-27 13:17:57,665 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:17:57,666 INFO L495 AbstractCegarLoop]: Abstraction has 6108 states and 8775 transitions. [2022-04-27 13:17:57,666 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 24 states, 20 states have (on average 3.45) internal successors, (69), 21 states have internal predecessors, (69), 11 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (23), 8 states have call predecessors, (23), 9 states have call successors, (23) [2022-04-27 13:17:57,666 INFO L276 IsEmpty]: Start isEmpty. Operand 6108 states and 8775 transitions. [2022-04-27 13:17:57,667 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2022-04-27 13:17:57,667 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:17:57,667 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 6, 6, 4, 4, 3, 3, 3, 3, 3, 3, 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:17:57,683 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:17:57,867 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:17:57,867 INFO L420 AbstractCegarLoop]: === Iteration 26 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:17:57,868 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:17:57,868 INFO L85 PathProgramCache]: Analyzing trace with hash -193506847, now seen corresponding path program 1 times [2022-04-27 13:17:57,868 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:17:57,868 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1412035499] [2022-04-27 13:17:57,868 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:17:57,868 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:17:57,880 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:17:57,880 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1709167938] [2022-04-27 13:17:57,880 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:17:57,880 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:17:57,880 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:17:57,881 INFO L229 MonitoredProcess]: Starting monitored process 26 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:17:57,887 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Waiting until timeout for monitored process [2022-04-27 13:17:57,944 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:17:57,945 INFO L263 TraceCheckSpWp]: Trace formula consists of 322 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-27 13:17:57,968 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:17:57,970 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:17:58,421 INFO L272 TraceCheckUtils]: 0: Hoare triple {192048#true} call ULTIMATE.init(); {192048#true} is VALID [2022-04-27 13:17:58,422 INFO L290 TraceCheckUtils]: 1: Hoare triple {192048#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; {192056#(<= ~counter~0 0)} is VALID [2022-04-27 13:17:58,422 INFO L290 TraceCheckUtils]: 2: Hoare triple {192056#(<= ~counter~0 0)} assume true; {192056#(<= ~counter~0 0)} is VALID [2022-04-27 13:17:58,422 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {192056#(<= ~counter~0 0)} {192048#true} #108#return; {192056#(<= ~counter~0 0)} is VALID [2022-04-27 13:17:58,423 INFO L272 TraceCheckUtils]: 4: Hoare triple {192056#(<= ~counter~0 0)} call #t~ret9 := main(); {192056#(<= ~counter~0 0)} is VALID [2022-04-27 13:17:58,423 INFO L290 TraceCheckUtils]: 5: Hoare triple {192056#(<= ~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; {192056#(<= ~counter~0 0)} is VALID [2022-04-27 13:17:58,423 INFO L272 TraceCheckUtils]: 6: Hoare triple {192056#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {192056#(<= ~counter~0 0)} is VALID [2022-04-27 13:17:58,424 INFO L290 TraceCheckUtils]: 7: Hoare triple {192056#(<= ~counter~0 0)} ~cond := #in~cond; {192056#(<= ~counter~0 0)} is VALID [2022-04-27 13:17:58,424 INFO L290 TraceCheckUtils]: 8: Hoare triple {192056#(<= ~counter~0 0)} assume !(0 == ~cond); {192056#(<= ~counter~0 0)} is VALID [2022-04-27 13:17:58,424 INFO L290 TraceCheckUtils]: 9: Hoare triple {192056#(<= ~counter~0 0)} assume true; {192056#(<= ~counter~0 0)} is VALID [2022-04-27 13:17:58,424 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {192056#(<= ~counter~0 0)} {192056#(<= ~counter~0 0)} #94#return; {192056#(<= ~counter~0 0)} is VALID [2022-04-27 13:17:58,425 INFO L272 TraceCheckUtils]: 11: Hoare triple {192056#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {192056#(<= ~counter~0 0)} is VALID [2022-04-27 13:17:58,425 INFO L290 TraceCheckUtils]: 12: Hoare triple {192056#(<= ~counter~0 0)} ~cond := #in~cond; {192056#(<= ~counter~0 0)} is VALID [2022-04-27 13:17:58,425 INFO L290 TraceCheckUtils]: 13: Hoare triple {192056#(<= ~counter~0 0)} assume !(0 == ~cond); {192056#(<= ~counter~0 0)} is VALID [2022-04-27 13:17:58,425 INFO L290 TraceCheckUtils]: 14: Hoare triple {192056#(<= ~counter~0 0)} assume true; {192056#(<= ~counter~0 0)} is VALID [2022-04-27 13:17:58,426 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {192056#(<= ~counter~0 0)} {192056#(<= ~counter~0 0)} #96#return; {192056#(<= ~counter~0 0)} is VALID [2022-04-27 13:17:58,426 INFO L290 TraceCheckUtils]: 16: Hoare triple {192056#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {192056#(<= ~counter~0 0)} is VALID [2022-04-27 13:17:58,428 INFO L290 TraceCheckUtils]: 17: Hoare triple {192056#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {192105#(<= ~counter~0 1)} is VALID [2022-04-27 13:17:58,428 INFO L290 TraceCheckUtils]: 18: Hoare triple {192105#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {192105#(<= ~counter~0 1)} is VALID [2022-04-27 13:17:58,428 INFO L290 TraceCheckUtils]: 19: Hoare triple {192105#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {192105#(<= ~counter~0 1)} is VALID [2022-04-27 13:17:58,429 INFO L290 TraceCheckUtils]: 20: Hoare triple {192105#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192115#(<= ~counter~0 2)} is VALID [2022-04-27 13:17:58,429 INFO L290 TraceCheckUtils]: 21: Hoare triple {192115#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {192115#(<= ~counter~0 2)} is VALID [2022-04-27 13:17:58,429 INFO L290 TraceCheckUtils]: 22: Hoare triple {192115#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {192115#(<= ~counter~0 2)} is VALID [2022-04-27 13:17:58,430 INFO L290 TraceCheckUtils]: 23: Hoare triple {192115#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,430 INFO L290 TraceCheckUtils]: 24: Hoare triple {192125#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,431 INFO L272 TraceCheckUtils]: 25: Hoare triple {192125#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,431 INFO L290 TraceCheckUtils]: 26: Hoare triple {192125#(<= ~counter~0 3)} ~cond := #in~cond; {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,431 INFO L290 TraceCheckUtils]: 27: Hoare triple {192125#(<= ~counter~0 3)} assume !(0 == ~cond); {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,431 INFO L290 TraceCheckUtils]: 28: Hoare triple {192125#(<= ~counter~0 3)} assume true; {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,432 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {192125#(<= ~counter~0 3)} {192125#(<= ~counter~0 3)} #98#return; {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,432 INFO L272 TraceCheckUtils]: 30: Hoare triple {192125#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,433 INFO L290 TraceCheckUtils]: 31: Hoare triple {192125#(<= ~counter~0 3)} ~cond := #in~cond; {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,433 INFO L290 TraceCheckUtils]: 32: Hoare triple {192125#(<= ~counter~0 3)} assume !(0 == ~cond); {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,433 INFO L290 TraceCheckUtils]: 33: Hoare triple {192125#(<= ~counter~0 3)} assume true; {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,434 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {192125#(<= ~counter~0 3)} {192125#(<= ~counter~0 3)} #100#return; {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,434 INFO L272 TraceCheckUtils]: 35: Hoare triple {192125#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,434 INFO L290 TraceCheckUtils]: 36: Hoare triple {192125#(<= ~counter~0 3)} ~cond := #in~cond; {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,434 INFO L290 TraceCheckUtils]: 37: Hoare triple {192125#(<= ~counter~0 3)} assume !(0 == ~cond); {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,435 INFO L290 TraceCheckUtils]: 38: Hoare triple {192125#(<= ~counter~0 3)} assume true; {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,435 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {192125#(<= ~counter~0 3)} {192125#(<= ~counter~0 3)} #102#return; {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,436 INFO L272 TraceCheckUtils]: 40: Hoare triple {192125#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,436 INFO L290 TraceCheckUtils]: 41: Hoare triple {192125#(<= ~counter~0 3)} ~cond := #in~cond; {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,436 INFO L290 TraceCheckUtils]: 42: Hoare triple {192125#(<= ~counter~0 3)} assume !(0 == ~cond); {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,436 INFO L290 TraceCheckUtils]: 43: Hoare triple {192125#(<= ~counter~0 3)} assume true; {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,437 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {192125#(<= ~counter~0 3)} {192125#(<= ~counter~0 3)} #104#return; {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,437 INFO L290 TraceCheckUtils]: 45: Hoare triple {192125#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,437 INFO L290 TraceCheckUtils]: 46: Hoare triple {192125#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {192125#(<= ~counter~0 3)} is VALID [2022-04-27 13:17:58,438 INFO L290 TraceCheckUtils]: 47: Hoare triple {192125#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192198#(<= ~counter~0 4)} is VALID [2022-04-27 13:17:58,438 INFO L290 TraceCheckUtils]: 48: Hoare triple {192198#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {192198#(<= ~counter~0 4)} is VALID [2022-04-27 13:17:58,439 INFO L290 TraceCheckUtils]: 49: Hoare triple {192198#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {192198#(<= ~counter~0 4)} is VALID [2022-04-27 13:17:58,439 INFO L290 TraceCheckUtils]: 50: Hoare triple {192198#(<= ~counter~0 4)} ~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; {192198#(<= ~counter~0 4)} is VALID [2022-04-27 13:17:58,440 INFO L290 TraceCheckUtils]: 51: Hoare triple {192198#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {192211#(<= ~counter~0 5)} is VALID [2022-04-27 13:17:58,440 INFO L290 TraceCheckUtils]: 52: Hoare triple {192211#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {192211#(<= ~counter~0 5)} is VALID [2022-04-27 13:17:58,440 INFO L290 TraceCheckUtils]: 53: Hoare triple {192211#(<= ~counter~0 5)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {192211#(<= ~counter~0 5)} is VALID [2022-04-27 13:17:58,441 INFO L290 TraceCheckUtils]: 54: Hoare triple {192211#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192221#(<= ~counter~0 6)} is VALID [2022-04-27 13:17:58,441 INFO L290 TraceCheckUtils]: 55: Hoare triple {192221#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {192221#(<= ~counter~0 6)} is VALID [2022-04-27 13:17:58,441 INFO L290 TraceCheckUtils]: 56: Hoare triple {192221#(<= ~counter~0 6)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {192221#(<= ~counter~0 6)} is VALID [2022-04-27 13:17:58,442 INFO L290 TraceCheckUtils]: 57: Hoare triple {192221#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,442 INFO L290 TraceCheckUtils]: 58: Hoare triple {192231#(<= ~counter~0 7)} assume !!(#t~post8 < 50);havoc #t~post8; {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,443 INFO L272 TraceCheckUtils]: 59: Hoare triple {192231#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,443 INFO L290 TraceCheckUtils]: 60: Hoare triple {192231#(<= ~counter~0 7)} ~cond := #in~cond; {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,443 INFO L290 TraceCheckUtils]: 61: Hoare triple {192231#(<= ~counter~0 7)} assume !(0 == ~cond); {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,443 INFO L290 TraceCheckUtils]: 62: Hoare triple {192231#(<= ~counter~0 7)} assume true; {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,444 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {192231#(<= ~counter~0 7)} {192231#(<= ~counter~0 7)} #98#return; {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,444 INFO L272 TraceCheckUtils]: 64: Hoare triple {192231#(<= ~counter~0 7)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,445 INFO L290 TraceCheckUtils]: 65: Hoare triple {192231#(<= ~counter~0 7)} ~cond := #in~cond; {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,445 INFO L290 TraceCheckUtils]: 66: Hoare triple {192231#(<= ~counter~0 7)} assume !(0 == ~cond); {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,445 INFO L290 TraceCheckUtils]: 67: Hoare triple {192231#(<= ~counter~0 7)} assume true; {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,445 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {192231#(<= ~counter~0 7)} {192231#(<= ~counter~0 7)} #100#return; {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,446 INFO L272 TraceCheckUtils]: 69: Hoare triple {192231#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,446 INFO L290 TraceCheckUtils]: 70: Hoare triple {192231#(<= ~counter~0 7)} ~cond := #in~cond; {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,446 INFO L290 TraceCheckUtils]: 71: Hoare triple {192231#(<= ~counter~0 7)} assume !(0 == ~cond); {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,447 INFO L290 TraceCheckUtils]: 72: Hoare triple {192231#(<= ~counter~0 7)} assume true; {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,447 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {192231#(<= ~counter~0 7)} {192231#(<= ~counter~0 7)} #102#return; {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,448 INFO L272 TraceCheckUtils]: 74: Hoare triple {192231#(<= ~counter~0 7)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,448 INFO L290 TraceCheckUtils]: 75: Hoare triple {192231#(<= ~counter~0 7)} ~cond := #in~cond; {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,449 INFO L290 TraceCheckUtils]: 76: Hoare triple {192231#(<= ~counter~0 7)} assume !(0 == ~cond); {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,449 INFO L290 TraceCheckUtils]: 77: Hoare triple {192231#(<= ~counter~0 7)} assume true; {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,449 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {192231#(<= ~counter~0 7)} {192231#(<= ~counter~0 7)} #104#return; {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,449 INFO L290 TraceCheckUtils]: 79: Hoare triple {192231#(<= ~counter~0 7)} assume !(~c~0 >= 2 * ~v~0); {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,450 INFO L290 TraceCheckUtils]: 80: Hoare triple {192231#(<= ~counter~0 7)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {192231#(<= ~counter~0 7)} is VALID [2022-04-27 13:17:58,451 INFO L290 TraceCheckUtils]: 81: Hoare triple {192231#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192304#(<= ~counter~0 8)} is VALID [2022-04-27 13:17:58,451 INFO L290 TraceCheckUtils]: 82: Hoare triple {192304#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {192304#(<= ~counter~0 8)} is VALID [2022-04-27 13:17:58,451 INFO L290 TraceCheckUtils]: 83: Hoare triple {192304#(<= ~counter~0 8)} assume !(~c~0 >= ~b~0); {192304#(<= ~counter~0 8)} is VALID [2022-04-27 13:17:58,451 INFO L290 TraceCheckUtils]: 84: Hoare triple {192304#(<= ~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; {192304#(<= ~counter~0 8)} is VALID [2022-04-27 13:17:58,452 INFO L290 TraceCheckUtils]: 85: Hoare triple {192304#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {192317#(<= ~counter~0 9)} is VALID [2022-04-27 13:17:58,452 INFO L290 TraceCheckUtils]: 86: Hoare triple {192317#(<= ~counter~0 9)} assume !!(#t~post6 < 50);havoc #t~post6; {192317#(<= ~counter~0 9)} is VALID [2022-04-27 13:17:58,453 INFO L290 TraceCheckUtils]: 87: Hoare triple {192317#(<= ~counter~0 9)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {192317#(<= ~counter~0 9)} is VALID [2022-04-27 13:17:58,453 INFO L290 TraceCheckUtils]: 88: Hoare triple {192317#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192327#(<= ~counter~0 10)} is VALID [2022-04-27 13:17:58,454 INFO L290 TraceCheckUtils]: 89: Hoare triple {192327#(<= ~counter~0 10)} assume !!(#t~post7 < 50);havoc #t~post7; {192327#(<= ~counter~0 10)} is VALID [2022-04-27 13:17:58,454 INFO L290 TraceCheckUtils]: 90: Hoare triple {192327#(<= ~counter~0 10)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {192327#(<= ~counter~0 10)} is VALID [2022-04-27 13:17:58,454 INFO L290 TraceCheckUtils]: 91: Hoare triple {192327#(<= ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {192337#(<= |main_#t~post8| 10)} is VALID [2022-04-27 13:17:58,454 INFO L290 TraceCheckUtils]: 92: Hoare triple {192337#(<= |main_#t~post8| 10)} assume !(#t~post8 < 50);havoc #t~post8; {192049#false} is VALID [2022-04-27 13:17:58,454 INFO L290 TraceCheckUtils]: 93: Hoare triple {192049#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {192049#false} is VALID [2022-04-27 13:17:58,455 INFO L290 TraceCheckUtils]: 94: Hoare triple {192049#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192049#false} is VALID [2022-04-27 13:17:58,455 INFO L290 TraceCheckUtils]: 95: Hoare triple {192049#false} assume !!(#t~post7 < 50);havoc #t~post7; {192049#false} is VALID [2022-04-27 13:17:58,455 INFO L290 TraceCheckUtils]: 96: Hoare triple {192049#false} assume !(~c~0 >= ~b~0); {192049#false} is VALID [2022-04-27 13:17:58,455 INFO L290 TraceCheckUtils]: 97: Hoare triple {192049#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; {192049#false} is VALID [2022-04-27 13:17:58,455 INFO L290 TraceCheckUtils]: 98: Hoare triple {192049#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {192049#false} is VALID [2022-04-27 13:17:58,455 INFO L290 TraceCheckUtils]: 99: Hoare triple {192049#false} assume !!(#t~post6 < 50);havoc #t~post6; {192049#false} is VALID [2022-04-27 13:17:58,455 INFO L290 TraceCheckUtils]: 100: Hoare triple {192049#false} assume !(0 != ~b~0); {192049#false} is VALID [2022-04-27 13:17:58,455 INFO L272 TraceCheckUtils]: 101: Hoare triple {192049#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)); {192049#false} is VALID [2022-04-27 13:17:58,455 INFO L290 TraceCheckUtils]: 102: Hoare triple {192049#false} ~cond := #in~cond; {192049#false} is VALID [2022-04-27 13:17:58,455 INFO L290 TraceCheckUtils]: 103: Hoare triple {192049#false} assume 0 == ~cond; {192049#false} is VALID [2022-04-27 13:17:58,455 INFO L290 TraceCheckUtils]: 104: Hoare triple {192049#false} assume !false; {192049#false} is VALID [2022-04-27 13:17:58,456 INFO L134 CoverageAnalysis]: Checked inductivity of 212 backedges. 44 proven. 116 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-27 13:17:58,456 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:17:58,989 INFO L290 TraceCheckUtils]: 104: Hoare triple {192049#false} assume !false; {192049#false} is VALID [2022-04-27 13:17:58,990 INFO L290 TraceCheckUtils]: 103: Hoare triple {192049#false} assume 0 == ~cond; {192049#false} is VALID [2022-04-27 13:17:58,990 INFO L290 TraceCheckUtils]: 102: Hoare triple {192049#false} ~cond := #in~cond; {192049#false} is VALID [2022-04-27 13:17:58,990 INFO L272 TraceCheckUtils]: 101: Hoare triple {192049#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)); {192049#false} is VALID [2022-04-27 13:17:58,990 INFO L290 TraceCheckUtils]: 100: Hoare triple {192049#false} assume !(0 != ~b~0); {192049#false} is VALID [2022-04-27 13:17:58,990 INFO L290 TraceCheckUtils]: 99: Hoare triple {192049#false} assume !!(#t~post6 < 50);havoc #t~post6; {192049#false} is VALID [2022-04-27 13:17:58,990 INFO L290 TraceCheckUtils]: 98: Hoare triple {192049#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {192049#false} is VALID [2022-04-27 13:17:58,990 INFO L290 TraceCheckUtils]: 97: Hoare triple {192049#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; {192049#false} is VALID [2022-04-27 13:17:58,990 INFO L290 TraceCheckUtils]: 96: Hoare triple {192049#false} assume !(~c~0 >= ~b~0); {192049#false} is VALID [2022-04-27 13:17:58,990 INFO L290 TraceCheckUtils]: 95: Hoare triple {192049#false} assume !!(#t~post7 < 50);havoc #t~post7; {192049#false} is VALID [2022-04-27 13:17:58,990 INFO L290 TraceCheckUtils]: 94: Hoare triple {192049#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192049#false} is VALID [2022-04-27 13:17:58,990 INFO L290 TraceCheckUtils]: 93: Hoare triple {192049#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {192049#false} is VALID [2022-04-27 13:17:58,990 INFO L290 TraceCheckUtils]: 92: Hoare triple {192413#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {192049#false} is VALID [2022-04-27 13:17:58,991 INFO L290 TraceCheckUtils]: 91: Hoare triple {192417#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {192413#(< |main_#t~post8| 50)} is VALID [2022-04-27 13:17:58,991 INFO L290 TraceCheckUtils]: 90: Hoare triple {192417#(< ~counter~0 50)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {192417#(< ~counter~0 50)} is VALID [2022-04-27 13:17:58,991 INFO L290 TraceCheckUtils]: 89: Hoare triple {192417#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {192417#(< ~counter~0 50)} is VALID [2022-04-27 13:17:58,993 INFO L290 TraceCheckUtils]: 88: Hoare triple {192427#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192417#(< ~counter~0 50)} is VALID [2022-04-27 13:17:58,993 INFO L290 TraceCheckUtils]: 87: Hoare triple {192427#(< ~counter~0 49)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {192427#(< ~counter~0 49)} is VALID [2022-04-27 13:17:58,993 INFO L290 TraceCheckUtils]: 86: Hoare triple {192427#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {192427#(< ~counter~0 49)} is VALID [2022-04-27 13:17:58,994 INFO L290 TraceCheckUtils]: 85: Hoare triple {192437#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {192427#(< ~counter~0 49)} is VALID [2022-04-27 13:17:58,994 INFO L290 TraceCheckUtils]: 84: Hoare triple {192437#(< ~counter~0 48)} ~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; {192437#(< ~counter~0 48)} is VALID [2022-04-27 13:17:58,994 INFO L290 TraceCheckUtils]: 83: Hoare triple {192437#(< ~counter~0 48)} assume !(~c~0 >= ~b~0); {192437#(< ~counter~0 48)} is VALID [2022-04-27 13:17:58,995 INFO L290 TraceCheckUtils]: 82: Hoare triple {192437#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {192437#(< ~counter~0 48)} is VALID [2022-04-27 13:17:58,995 INFO L290 TraceCheckUtils]: 81: Hoare triple {192450#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192437#(< ~counter~0 48)} is VALID [2022-04-27 13:17:58,996 INFO L290 TraceCheckUtils]: 80: Hoare triple {192450#(< ~counter~0 47)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {192450#(< ~counter~0 47)} is VALID [2022-04-27 13:17:58,996 INFO L290 TraceCheckUtils]: 79: Hoare triple {192450#(< ~counter~0 47)} assume !(~c~0 >= 2 * ~v~0); {192450#(< ~counter~0 47)} is VALID [2022-04-27 13:17:58,996 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {192048#true} {192450#(< ~counter~0 47)} #104#return; {192450#(< ~counter~0 47)} is VALID [2022-04-27 13:17:58,996 INFO L290 TraceCheckUtils]: 77: Hoare triple {192048#true} assume true; {192048#true} is VALID [2022-04-27 13:17:58,996 INFO L290 TraceCheckUtils]: 76: Hoare triple {192048#true} assume !(0 == ~cond); {192048#true} is VALID [2022-04-27 13:17:58,996 INFO L290 TraceCheckUtils]: 75: Hoare triple {192048#true} ~cond := #in~cond; {192048#true} is VALID [2022-04-27 13:17:58,996 INFO L272 TraceCheckUtils]: 74: Hoare triple {192450#(< ~counter~0 47)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {192048#true} is VALID [2022-04-27 13:17:58,997 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {192048#true} {192450#(< ~counter~0 47)} #102#return; {192450#(< ~counter~0 47)} is VALID [2022-04-27 13:17:58,997 INFO L290 TraceCheckUtils]: 72: Hoare triple {192048#true} assume true; {192048#true} is VALID [2022-04-27 13:17:58,997 INFO L290 TraceCheckUtils]: 71: Hoare triple {192048#true} assume !(0 == ~cond); {192048#true} is VALID [2022-04-27 13:17:58,997 INFO L290 TraceCheckUtils]: 70: Hoare triple {192048#true} ~cond := #in~cond; {192048#true} is VALID [2022-04-27 13:17:58,997 INFO L272 TraceCheckUtils]: 69: Hoare triple {192450#(< ~counter~0 47)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {192048#true} is VALID [2022-04-27 13:17:58,998 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {192048#true} {192450#(< ~counter~0 47)} #100#return; {192450#(< ~counter~0 47)} is VALID [2022-04-27 13:17:58,998 INFO L290 TraceCheckUtils]: 67: Hoare triple {192048#true} assume true; {192048#true} is VALID [2022-04-27 13:17:58,998 INFO L290 TraceCheckUtils]: 66: Hoare triple {192048#true} assume !(0 == ~cond); {192048#true} is VALID [2022-04-27 13:17:58,998 INFO L290 TraceCheckUtils]: 65: Hoare triple {192048#true} ~cond := #in~cond; {192048#true} is VALID [2022-04-27 13:17:58,998 INFO L272 TraceCheckUtils]: 64: Hoare triple {192450#(< ~counter~0 47)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {192048#true} is VALID [2022-04-27 13:17:58,998 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {192048#true} {192450#(< ~counter~0 47)} #98#return; {192450#(< ~counter~0 47)} is VALID [2022-04-27 13:17:58,998 INFO L290 TraceCheckUtils]: 62: Hoare triple {192048#true} assume true; {192048#true} is VALID [2022-04-27 13:17:58,998 INFO L290 TraceCheckUtils]: 61: Hoare triple {192048#true} assume !(0 == ~cond); {192048#true} is VALID [2022-04-27 13:17:58,998 INFO L290 TraceCheckUtils]: 60: Hoare triple {192048#true} ~cond := #in~cond; {192048#true} is VALID [2022-04-27 13:17:58,998 INFO L272 TraceCheckUtils]: 59: Hoare triple {192450#(< ~counter~0 47)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {192048#true} is VALID [2022-04-27 13:17:58,999 INFO L290 TraceCheckUtils]: 58: Hoare triple {192450#(< ~counter~0 47)} assume !!(#t~post8 < 50);havoc #t~post8; {192450#(< ~counter~0 47)} is VALID [2022-04-27 13:17:58,999 INFO L290 TraceCheckUtils]: 57: Hoare triple {192523#(< ~counter~0 46)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {192450#(< ~counter~0 47)} is VALID [2022-04-27 13:17:59,000 INFO L290 TraceCheckUtils]: 56: Hoare triple {192523#(< ~counter~0 46)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {192523#(< ~counter~0 46)} is VALID [2022-04-27 13:17:59,000 INFO L290 TraceCheckUtils]: 55: Hoare triple {192523#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {192523#(< ~counter~0 46)} is VALID [2022-04-27 13:17:59,001 INFO L290 TraceCheckUtils]: 54: Hoare triple {192533#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192523#(< ~counter~0 46)} is VALID [2022-04-27 13:17:59,001 INFO L290 TraceCheckUtils]: 53: Hoare triple {192533#(< ~counter~0 45)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {192533#(< ~counter~0 45)} is VALID [2022-04-27 13:17:59,001 INFO L290 TraceCheckUtils]: 52: Hoare triple {192533#(< ~counter~0 45)} assume !!(#t~post6 < 50);havoc #t~post6; {192533#(< ~counter~0 45)} is VALID [2022-04-27 13:17:59,002 INFO L290 TraceCheckUtils]: 51: Hoare triple {192543#(< ~counter~0 44)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {192533#(< ~counter~0 45)} is VALID [2022-04-27 13:17:59,002 INFO L290 TraceCheckUtils]: 50: Hoare triple {192543#(< ~counter~0 44)} ~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; {192543#(< ~counter~0 44)} is VALID [2022-04-27 13:17:59,002 INFO L290 TraceCheckUtils]: 49: Hoare triple {192543#(< ~counter~0 44)} assume !(~c~0 >= ~b~0); {192543#(< ~counter~0 44)} is VALID [2022-04-27 13:17:59,003 INFO L290 TraceCheckUtils]: 48: Hoare triple {192543#(< ~counter~0 44)} assume !!(#t~post7 < 50);havoc #t~post7; {192543#(< ~counter~0 44)} is VALID [2022-04-27 13:17:59,003 INFO L290 TraceCheckUtils]: 47: Hoare triple {192556#(< ~counter~0 43)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192543#(< ~counter~0 44)} is VALID [2022-04-27 13:17:59,004 INFO L290 TraceCheckUtils]: 46: Hoare triple {192556#(< ~counter~0 43)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {192556#(< ~counter~0 43)} is VALID [2022-04-27 13:17:59,004 INFO L290 TraceCheckUtils]: 45: Hoare triple {192556#(< ~counter~0 43)} assume !(~c~0 >= 2 * ~v~0); {192556#(< ~counter~0 43)} is VALID [2022-04-27 13:17:59,004 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {192048#true} {192556#(< ~counter~0 43)} #104#return; {192556#(< ~counter~0 43)} is VALID [2022-04-27 13:17:59,004 INFO L290 TraceCheckUtils]: 43: Hoare triple {192048#true} assume true; {192048#true} is VALID [2022-04-27 13:17:59,004 INFO L290 TraceCheckUtils]: 42: Hoare triple {192048#true} assume !(0 == ~cond); {192048#true} is VALID [2022-04-27 13:17:59,004 INFO L290 TraceCheckUtils]: 41: Hoare triple {192048#true} ~cond := #in~cond; {192048#true} is VALID [2022-04-27 13:17:59,004 INFO L272 TraceCheckUtils]: 40: Hoare triple {192556#(< ~counter~0 43)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {192048#true} is VALID [2022-04-27 13:17:59,005 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {192048#true} {192556#(< ~counter~0 43)} #102#return; {192556#(< ~counter~0 43)} is VALID [2022-04-27 13:17:59,005 INFO L290 TraceCheckUtils]: 38: Hoare triple {192048#true} assume true; {192048#true} is VALID [2022-04-27 13:17:59,005 INFO L290 TraceCheckUtils]: 37: Hoare triple {192048#true} assume !(0 == ~cond); {192048#true} is VALID [2022-04-27 13:17:59,005 INFO L290 TraceCheckUtils]: 36: Hoare triple {192048#true} ~cond := #in~cond; {192048#true} is VALID [2022-04-27 13:17:59,005 INFO L272 TraceCheckUtils]: 35: Hoare triple {192556#(< ~counter~0 43)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {192048#true} is VALID [2022-04-27 13:17:59,005 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {192048#true} {192556#(< ~counter~0 43)} #100#return; {192556#(< ~counter~0 43)} is VALID [2022-04-27 13:17:59,006 INFO L290 TraceCheckUtils]: 33: Hoare triple {192048#true} assume true; {192048#true} is VALID [2022-04-27 13:17:59,006 INFO L290 TraceCheckUtils]: 32: Hoare triple {192048#true} assume !(0 == ~cond); {192048#true} is VALID [2022-04-27 13:17:59,006 INFO L290 TraceCheckUtils]: 31: Hoare triple {192048#true} ~cond := #in~cond; {192048#true} is VALID [2022-04-27 13:17:59,006 INFO L272 TraceCheckUtils]: 30: Hoare triple {192556#(< ~counter~0 43)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {192048#true} is VALID [2022-04-27 13:17:59,006 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {192048#true} {192556#(< ~counter~0 43)} #98#return; {192556#(< ~counter~0 43)} is VALID [2022-04-27 13:17:59,006 INFO L290 TraceCheckUtils]: 28: Hoare triple {192048#true} assume true; {192048#true} is VALID [2022-04-27 13:17:59,006 INFO L290 TraceCheckUtils]: 27: Hoare triple {192048#true} assume !(0 == ~cond); {192048#true} is VALID [2022-04-27 13:17:59,006 INFO L290 TraceCheckUtils]: 26: Hoare triple {192048#true} ~cond := #in~cond; {192048#true} is VALID [2022-04-27 13:17:59,006 INFO L272 TraceCheckUtils]: 25: Hoare triple {192556#(< ~counter~0 43)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {192048#true} is VALID [2022-04-27 13:17:59,006 INFO L290 TraceCheckUtils]: 24: Hoare triple {192556#(< ~counter~0 43)} assume !!(#t~post8 < 50);havoc #t~post8; {192556#(< ~counter~0 43)} is VALID [2022-04-27 13:17:59,007 INFO L290 TraceCheckUtils]: 23: Hoare triple {192629#(< ~counter~0 42)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {192556#(< ~counter~0 43)} is VALID [2022-04-27 13:17:59,008 INFO L290 TraceCheckUtils]: 22: Hoare triple {192629#(< ~counter~0 42)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {192629#(< ~counter~0 42)} is VALID [2022-04-27 13:17:59,008 INFO L290 TraceCheckUtils]: 21: Hoare triple {192629#(< ~counter~0 42)} assume !!(#t~post7 < 50);havoc #t~post7; {192629#(< ~counter~0 42)} is VALID [2022-04-27 13:17:59,008 INFO L290 TraceCheckUtils]: 20: Hoare triple {192639#(< ~counter~0 41)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192629#(< ~counter~0 42)} is VALID [2022-04-27 13:17:59,009 INFO L290 TraceCheckUtils]: 19: Hoare triple {192639#(< ~counter~0 41)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {192639#(< ~counter~0 41)} is VALID [2022-04-27 13:17:59,009 INFO L290 TraceCheckUtils]: 18: Hoare triple {192639#(< ~counter~0 41)} assume !!(#t~post6 < 50);havoc #t~post6; {192639#(< ~counter~0 41)} is VALID [2022-04-27 13:17:59,010 INFO L290 TraceCheckUtils]: 17: Hoare triple {192649#(< ~counter~0 40)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {192639#(< ~counter~0 41)} is VALID [2022-04-27 13:17:59,010 INFO L290 TraceCheckUtils]: 16: Hoare triple {192649#(< ~counter~0 40)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {192649#(< ~counter~0 40)} is VALID [2022-04-27 13:17:59,010 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {192048#true} {192649#(< ~counter~0 40)} #96#return; {192649#(< ~counter~0 40)} is VALID [2022-04-27 13:17:59,010 INFO L290 TraceCheckUtils]: 14: Hoare triple {192048#true} assume true; {192048#true} is VALID [2022-04-27 13:17:59,010 INFO L290 TraceCheckUtils]: 13: Hoare triple {192048#true} assume !(0 == ~cond); {192048#true} is VALID [2022-04-27 13:17:59,010 INFO L290 TraceCheckUtils]: 12: Hoare triple {192048#true} ~cond := #in~cond; {192048#true} is VALID [2022-04-27 13:17:59,010 INFO L272 TraceCheckUtils]: 11: Hoare triple {192649#(< ~counter~0 40)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {192048#true} is VALID [2022-04-27 13:17:59,011 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {192048#true} {192649#(< ~counter~0 40)} #94#return; {192649#(< ~counter~0 40)} is VALID [2022-04-27 13:17:59,011 INFO L290 TraceCheckUtils]: 9: Hoare triple {192048#true} assume true; {192048#true} is VALID [2022-04-27 13:17:59,011 INFO L290 TraceCheckUtils]: 8: Hoare triple {192048#true} assume !(0 == ~cond); {192048#true} is VALID [2022-04-27 13:17:59,011 INFO L290 TraceCheckUtils]: 7: Hoare triple {192048#true} ~cond := #in~cond; {192048#true} is VALID [2022-04-27 13:17:59,011 INFO L272 TraceCheckUtils]: 6: Hoare triple {192649#(< ~counter~0 40)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {192048#true} is VALID [2022-04-27 13:17:59,011 INFO L290 TraceCheckUtils]: 5: Hoare triple {192649#(< ~counter~0 40)} 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; {192649#(< ~counter~0 40)} is VALID [2022-04-27 13:17:59,011 INFO L272 TraceCheckUtils]: 4: Hoare triple {192649#(< ~counter~0 40)} call #t~ret9 := main(); {192649#(< ~counter~0 40)} is VALID [2022-04-27 13:17:59,012 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {192649#(< ~counter~0 40)} {192048#true} #108#return; {192649#(< ~counter~0 40)} is VALID [2022-04-27 13:17:59,012 INFO L290 TraceCheckUtils]: 2: Hoare triple {192649#(< ~counter~0 40)} assume true; {192649#(< ~counter~0 40)} is VALID [2022-04-27 13:17:59,012 INFO L290 TraceCheckUtils]: 1: Hoare triple {192048#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; {192649#(< ~counter~0 40)} is VALID [2022-04-27 13:17:59,012 INFO L272 TraceCheckUtils]: 0: Hoare triple {192048#true} call ULTIMATE.init(); {192048#true} is VALID [2022-04-27 13:17:59,013 INFO L134 CoverageAnalysis]: Checked inductivity of 212 backedges. 44 proven. 52 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-27 13:17:59,013 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:17:59,013 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1412035499] [2022-04-27 13:17:59,013 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:17:59,013 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1709167938] [2022-04-27 13:17:59,013 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1709167938] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:17:59,013 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:17:59,013 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 26 [2022-04-27 13:17:59,013 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [888335654] [2022-04-27 13:17:59,013 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:17:59,014 INFO L78 Accepts]: Start accepts. Automaton has has 26 states, 26 states have (on average 4.076923076923077) internal successors, (106), 26 states have internal predecessors, (106), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) Word has length 105 [2022-04-27 13:17:59,014 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:17:59,014 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 26 states, 26 states have (on average 4.076923076923077) internal successors, (106), 26 states have internal predecessors, (106), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-27 13:17:59,145 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 152 edges. 152 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:17:59,145 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 26 states [2022-04-27 13:17:59,145 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:17:59,146 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2022-04-27 13:17:59,146 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=281, Invalid=369, Unknown=0, NotChecked=0, Total=650 [2022-04-27 13:17:59,146 INFO L87 Difference]: Start difference. First operand 6108 states and 8775 transitions. Second operand has 26 states, 26 states have (on average 4.076923076923077) internal successors, (106), 26 states have internal predecessors, (106), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-27 13:18:23,768 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:18:23,768 INFO L93 Difference]: Finished difference Result 10671 states and 15491 transitions. [2022-04-27 13:18:23,768 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 44 states. [2022-04-27 13:18:23,768 INFO L78 Accepts]: Start accepts. Automaton has has 26 states, 26 states have (on average 4.076923076923077) internal successors, (106), 26 states have internal predecessors, (106), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) Word has length 105 [2022-04-27 13:18:23,768 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:18:23,769 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 26 states have (on average 4.076923076923077) internal successors, (106), 26 states have internal predecessors, (106), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-27 13:18:23,772 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 600 transitions. [2022-04-27 13:18:23,772 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 26 states have (on average 4.076923076923077) internal successors, (106), 26 states have internal predecessors, (106), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-27 13:18:23,776 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 600 transitions. [2022-04-27 13:18:23,776 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 44 states and 600 transitions. [2022-04-27 13:18:24,305 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 600 edges. 600 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:18:26,655 INFO L225 Difference]: With dead ends: 10671 [2022-04-27 13:18:26,655 INFO L226 Difference]: Without dead ends: 7125 [2022-04-27 13:18:26,661 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 228 GetRequests, 185 SyntacticMatches, 0 SemanticMatches, 43 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 282 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=708, Invalid=1272, Unknown=0, NotChecked=0, Total=1980 [2022-04-27 13:18:26,661 INFO L413 NwaCegarLoop]: 120 mSDtfsCounter, 662 mSDsluCounter, 605 mSDsCounter, 0 mSdLazyCounter, 399 mSolverCounterSat, 357 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 662 SdHoareTripleChecker+Valid, 725 SdHoareTripleChecker+Invalid, 756 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 357 IncrementalHoareTripleChecker+Valid, 399 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-27 13:18:26,661 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [662 Valid, 725 Invalid, 756 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [357 Valid, 399 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-27 13:18:26,665 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 7125 states. [2022-04-27 13:18:44,056 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 7125 to 6950. [2022-04-27 13:18:44,057 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:18:44,063 INFO L82 GeneralOperation]: Start isEquivalent. First operand 7125 states. Second operand has 6950 states, 4495 states have (on average 1.2202447163515018) internal successors, (5485), 4513 states have internal predecessors, (5485), 2077 states have call successors, (2077), 379 states have call predecessors, (2077), 377 states have return successors, (2075), 2057 states have call predecessors, (2075), 2075 states have call successors, (2075) [2022-04-27 13:18:44,068 INFO L74 IsIncluded]: Start isIncluded. First operand 7125 states. Second operand has 6950 states, 4495 states have (on average 1.2202447163515018) internal successors, (5485), 4513 states have internal predecessors, (5485), 2077 states have call successors, (2077), 379 states have call predecessors, (2077), 377 states have return successors, (2075), 2057 states have call predecessors, (2075), 2075 states have call successors, (2075) [2022-04-27 13:18:44,072 INFO L87 Difference]: Start difference. First operand 7125 states. Second operand has 6950 states, 4495 states have (on average 1.2202447163515018) internal successors, (5485), 4513 states have internal predecessors, (5485), 2077 states have call successors, (2077), 379 states have call predecessors, (2077), 377 states have return successors, (2075), 2057 states have call predecessors, (2075), 2075 states have call successors, (2075) [2022-04-27 13:18:45,605 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:18:45,606 INFO L93 Difference]: Finished difference Result 7125 states and 9813 transitions. [2022-04-27 13:18:45,606 INFO L276 IsEmpty]: Start isEmpty. Operand 7125 states and 9813 transitions. [2022-04-27 13:18:45,615 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:18:45,615 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:18:45,622 INFO L74 IsIncluded]: Start isIncluded. First operand has 6950 states, 4495 states have (on average 1.2202447163515018) internal successors, (5485), 4513 states have internal predecessors, (5485), 2077 states have call successors, (2077), 379 states have call predecessors, (2077), 377 states have return successors, (2075), 2057 states have call predecessors, (2075), 2075 states have call successors, (2075) Second operand 7125 states. [2022-04-27 13:18:45,627 INFO L87 Difference]: Start difference. First operand has 6950 states, 4495 states have (on average 1.2202447163515018) internal successors, (5485), 4513 states have internal predecessors, (5485), 2077 states have call successors, (2077), 379 states have call predecessors, (2077), 377 states have return successors, (2075), 2057 states have call predecessors, (2075), 2075 states have call successors, (2075) Second operand 7125 states. [2022-04-27 13:18:47,149 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:18:47,149 INFO L93 Difference]: Finished difference Result 7125 states and 9813 transitions. [2022-04-27 13:18:47,149 INFO L276 IsEmpty]: Start isEmpty. Operand 7125 states and 9813 transitions. [2022-04-27 13:18:47,159 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:18:47,159 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:18:47,159 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:18:47,159 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:18:47,166 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6950 states, 4495 states have (on average 1.2202447163515018) internal successors, (5485), 4513 states have internal predecessors, (5485), 2077 states have call successors, (2077), 379 states have call predecessors, (2077), 377 states have return successors, (2075), 2057 states have call predecessors, (2075), 2075 states have call successors, (2075) [2022-04-27 13:18:49,213 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6950 states to 6950 states and 9637 transitions. [2022-04-27 13:18:49,214 INFO L78 Accepts]: Start accepts. Automaton has 6950 states and 9637 transitions. Word has length 105 [2022-04-27 13:18:49,214 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:18:49,214 INFO L495 AbstractCegarLoop]: Abstraction has 6950 states and 9637 transitions. [2022-04-27 13:18:49,214 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 26 states, 26 states have (on average 4.076923076923077) internal successors, (106), 26 states have internal predecessors, (106), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-27 13:18:49,214 INFO L276 IsEmpty]: Start isEmpty. Operand 6950 states and 9637 transitions. [2022-04-27 13:18:49,216 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 133 [2022-04-27 13:18:49,216 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:18:49,216 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 7, 7, 5, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:18:49,235 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Ended with exit code 0 [2022-04-27 13:18:49,432 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 26 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable25 [2022-04-27 13:18:49,433 INFO L420 AbstractCegarLoop]: === Iteration 27 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:18:49,433 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:18:49,433 INFO L85 PathProgramCache]: Analyzing trace with hash 862891816, now seen corresponding path program 2 times [2022-04-27 13:18:49,433 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:18:49,433 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1778104223] [2022-04-27 13:18:49,433 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:18:49,433 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:18:49,446 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:18:49,446 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [970480355] [2022-04-27 13:18:49,446 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 13:18:49,446 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:18:49,446 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:18:49,447 INFO L229 MonitoredProcess]: Starting monitored process 27 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:18:49,448 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Waiting until timeout for monitored process [2022-04-27 13:18:49,514 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 13:18:49,515 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:18:49,516 INFO L263 TraceCheckSpWp]: Trace formula consists of 387 conjuncts, 33 conjunts are in the unsatisfiable core [2022-04-27 13:18:49,541 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:18:49,543 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:18:50,153 INFO L272 TraceCheckUtils]: 0: Hoare triple {233364#true} call ULTIMATE.init(); {233364#true} is VALID [2022-04-27 13:18:50,154 INFO L290 TraceCheckUtils]: 1: Hoare triple {233364#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; {233372#(<= ~counter~0 0)} is VALID [2022-04-27 13:18:50,154 INFO L290 TraceCheckUtils]: 2: Hoare triple {233372#(<= ~counter~0 0)} assume true; {233372#(<= ~counter~0 0)} is VALID [2022-04-27 13:18:50,154 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {233372#(<= ~counter~0 0)} {233364#true} #108#return; {233372#(<= ~counter~0 0)} is VALID [2022-04-27 13:18:50,155 INFO L272 TraceCheckUtils]: 4: Hoare triple {233372#(<= ~counter~0 0)} call #t~ret9 := main(); {233372#(<= ~counter~0 0)} is VALID [2022-04-27 13:18:50,155 INFO L290 TraceCheckUtils]: 5: Hoare triple {233372#(<= ~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; {233372#(<= ~counter~0 0)} is VALID [2022-04-27 13:18:50,155 INFO L272 TraceCheckUtils]: 6: Hoare triple {233372#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {233372#(<= ~counter~0 0)} is VALID [2022-04-27 13:18:50,155 INFO L290 TraceCheckUtils]: 7: Hoare triple {233372#(<= ~counter~0 0)} ~cond := #in~cond; {233372#(<= ~counter~0 0)} is VALID [2022-04-27 13:18:50,156 INFO L290 TraceCheckUtils]: 8: Hoare triple {233372#(<= ~counter~0 0)} assume !(0 == ~cond); {233372#(<= ~counter~0 0)} is VALID [2022-04-27 13:18:50,156 INFO L290 TraceCheckUtils]: 9: Hoare triple {233372#(<= ~counter~0 0)} assume true; {233372#(<= ~counter~0 0)} is VALID [2022-04-27 13:18:50,156 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {233372#(<= ~counter~0 0)} {233372#(<= ~counter~0 0)} #94#return; {233372#(<= ~counter~0 0)} is VALID [2022-04-27 13:18:50,157 INFO L272 TraceCheckUtils]: 11: Hoare triple {233372#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {233372#(<= ~counter~0 0)} is VALID [2022-04-27 13:18:50,157 INFO L290 TraceCheckUtils]: 12: Hoare triple {233372#(<= ~counter~0 0)} ~cond := #in~cond; {233372#(<= ~counter~0 0)} is VALID [2022-04-27 13:18:50,157 INFO L290 TraceCheckUtils]: 13: Hoare triple {233372#(<= ~counter~0 0)} assume !(0 == ~cond); {233372#(<= ~counter~0 0)} is VALID [2022-04-27 13:18:50,157 INFO L290 TraceCheckUtils]: 14: Hoare triple {233372#(<= ~counter~0 0)} assume true; {233372#(<= ~counter~0 0)} is VALID [2022-04-27 13:18:50,158 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {233372#(<= ~counter~0 0)} {233372#(<= ~counter~0 0)} #96#return; {233372#(<= ~counter~0 0)} is VALID [2022-04-27 13:18:50,158 INFO L290 TraceCheckUtils]: 16: Hoare triple {233372#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {233372#(<= ~counter~0 0)} is VALID [2022-04-27 13:18:50,159 INFO L290 TraceCheckUtils]: 17: Hoare triple {233372#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {233421#(<= ~counter~0 1)} is VALID [2022-04-27 13:18:50,160 INFO L290 TraceCheckUtils]: 18: Hoare triple {233421#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {233421#(<= ~counter~0 1)} is VALID [2022-04-27 13:18:50,160 INFO L290 TraceCheckUtils]: 19: Hoare triple {233421#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {233421#(<= ~counter~0 1)} is VALID [2022-04-27 13:18:50,161 INFO L290 TraceCheckUtils]: 20: Hoare triple {233421#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {233431#(<= ~counter~0 2)} is VALID [2022-04-27 13:18:50,161 INFO L290 TraceCheckUtils]: 21: Hoare triple {233431#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {233431#(<= ~counter~0 2)} is VALID [2022-04-27 13:18:50,161 INFO L290 TraceCheckUtils]: 22: Hoare triple {233431#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {233431#(<= ~counter~0 2)} is VALID [2022-04-27 13:18:50,161 INFO L290 TraceCheckUtils]: 23: Hoare triple {233431#(<= ~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; {233431#(<= ~counter~0 2)} is VALID [2022-04-27 13:18:50,162 INFO L290 TraceCheckUtils]: 24: Hoare triple {233431#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {233444#(<= ~counter~0 3)} is VALID [2022-04-27 13:18:50,162 INFO L290 TraceCheckUtils]: 25: Hoare triple {233444#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {233444#(<= ~counter~0 3)} is VALID [2022-04-27 13:18:50,163 INFO L290 TraceCheckUtils]: 26: Hoare triple {233444#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {233444#(<= ~counter~0 3)} is VALID [2022-04-27 13:18:50,163 INFO L290 TraceCheckUtils]: 27: Hoare triple {233444#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {233454#(<= ~counter~0 4)} is VALID [2022-04-27 13:18:50,164 INFO L290 TraceCheckUtils]: 28: Hoare triple {233454#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {233454#(<= ~counter~0 4)} is VALID [2022-04-27 13:18:50,164 INFO L290 TraceCheckUtils]: 29: Hoare triple {233454#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {233454#(<= ~counter~0 4)} is VALID [2022-04-27 13:18:50,165 INFO L290 TraceCheckUtils]: 30: Hoare triple {233454#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,165 INFO L290 TraceCheckUtils]: 31: Hoare triple {233464#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,165 INFO L272 TraceCheckUtils]: 32: Hoare triple {233464#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,166 INFO L290 TraceCheckUtils]: 33: Hoare triple {233464#(<= ~counter~0 5)} ~cond := #in~cond; {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,166 INFO L290 TraceCheckUtils]: 34: Hoare triple {233464#(<= ~counter~0 5)} assume !(0 == ~cond); {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,166 INFO L290 TraceCheckUtils]: 35: Hoare triple {233464#(<= ~counter~0 5)} assume true; {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,167 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {233464#(<= ~counter~0 5)} {233464#(<= ~counter~0 5)} #98#return; {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,167 INFO L272 TraceCheckUtils]: 37: Hoare triple {233464#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,167 INFO L290 TraceCheckUtils]: 38: Hoare triple {233464#(<= ~counter~0 5)} ~cond := #in~cond; {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,167 INFO L290 TraceCheckUtils]: 39: Hoare triple {233464#(<= ~counter~0 5)} assume !(0 == ~cond); {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,168 INFO L290 TraceCheckUtils]: 40: Hoare triple {233464#(<= ~counter~0 5)} assume true; {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,168 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {233464#(<= ~counter~0 5)} {233464#(<= ~counter~0 5)} #100#return; {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,169 INFO L272 TraceCheckUtils]: 42: Hoare triple {233464#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,169 INFO L290 TraceCheckUtils]: 43: Hoare triple {233464#(<= ~counter~0 5)} ~cond := #in~cond; {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,169 INFO L290 TraceCheckUtils]: 44: Hoare triple {233464#(<= ~counter~0 5)} assume !(0 == ~cond); {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,169 INFO L290 TraceCheckUtils]: 45: Hoare triple {233464#(<= ~counter~0 5)} assume true; {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,170 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {233464#(<= ~counter~0 5)} {233464#(<= ~counter~0 5)} #102#return; {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,170 INFO L272 TraceCheckUtils]: 47: Hoare triple {233464#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,170 INFO L290 TraceCheckUtils]: 48: Hoare triple {233464#(<= ~counter~0 5)} ~cond := #in~cond; {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,171 INFO L290 TraceCheckUtils]: 49: Hoare triple {233464#(<= ~counter~0 5)} assume !(0 == ~cond); {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,171 INFO L290 TraceCheckUtils]: 50: Hoare triple {233464#(<= ~counter~0 5)} assume true; {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,171 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {233464#(<= ~counter~0 5)} {233464#(<= ~counter~0 5)} #104#return; {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,171 INFO L290 TraceCheckUtils]: 52: Hoare triple {233464#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,172 INFO L290 TraceCheckUtils]: 53: Hoare triple {233464#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {233464#(<= ~counter~0 5)} is VALID [2022-04-27 13:18:50,172 INFO L290 TraceCheckUtils]: 54: Hoare triple {233464#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {233537#(<= ~counter~0 6)} is VALID [2022-04-27 13:18:50,173 INFO L290 TraceCheckUtils]: 55: Hoare triple {233537#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {233537#(<= ~counter~0 6)} is VALID [2022-04-27 13:18:50,173 INFO L290 TraceCheckUtils]: 56: Hoare triple {233537#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {233537#(<= ~counter~0 6)} is VALID [2022-04-27 13:18:50,173 INFO L290 TraceCheckUtils]: 57: Hoare triple {233537#(<= ~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; {233537#(<= ~counter~0 6)} is VALID [2022-04-27 13:18:50,174 INFO L290 TraceCheckUtils]: 58: Hoare triple {233537#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {233550#(<= ~counter~0 7)} is VALID [2022-04-27 13:18:50,174 INFO L290 TraceCheckUtils]: 59: Hoare triple {233550#(<= ~counter~0 7)} assume !!(#t~post6 < 50);havoc #t~post6; {233550#(<= ~counter~0 7)} is VALID [2022-04-27 13:18:50,174 INFO L290 TraceCheckUtils]: 60: Hoare triple {233550#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {233550#(<= ~counter~0 7)} is VALID [2022-04-27 13:18:50,175 INFO L290 TraceCheckUtils]: 61: Hoare triple {233550#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {233560#(<= ~counter~0 8)} is VALID [2022-04-27 13:18:50,175 INFO L290 TraceCheckUtils]: 62: Hoare triple {233560#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {233560#(<= ~counter~0 8)} is VALID [2022-04-27 13:18:50,176 INFO L290 TraceCheckUtils]: 63: Hoare triple {233560#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {233560#(<= ~counter~0 8)} is VALID [2022-04-27 13:18:50,176 INFO L290 TraceCheckUtils]: 64: Hoare triple {233560#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,177 INFO L290 TraceCheckUtils]: 65: Hoare triple {233570#(<= ~counter~0 9)} assume !!(#t~post8 < 50);havoc #t~post8; {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,177 INFO L272 TraceCheckUtils]: 66: Hoare triple {233570#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,177 INFO L290 TraceCheckUtils]: 67: Hoare triple {233570#(<= ~counter~0 9)} ~cond := #in~cond; {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,178 INFO L290 TraceCheckUtils]: 68: Hoare triple {233570#(<= ~counter~0 9)} assume !(0 == ~cond); {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,178 INFO L290 TraceCheckUtils]: 69: Hoare triple {233570#(<= ~counter~0 9)} assume true; {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,178 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {233570#(<= ~counter~0 9)} {233570#(<= ~counter~0 9)} #98#return; {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,179 INFO L272 TraceCheckUtils]: 71: Hoare triple {233570#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,179 INFO L290 TraceCheckUtils]: 72: Hoare triple {233570#(<= ~counter~0 9)} ~cond := #in~cond; {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,179 INFO L290 TraceCheckUtils]: 73: Hoare triple {233570#(<= ~counter~0 9)} assume !(0 == ~cond); {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,179 INFO L290 TraceCheckUtils]: 74: Hoare triple {233570#(<= ~counter~0 9)} assume true; {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,180 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {233570#(<= ~counter~0 9)} {233570#(<= ~counter~0 9)} #100#return; {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,180 INFO L272 TraceCheckUtils]: 76: Hoare triple {233570#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,181 INFO L290 TraceCheckUtils]: 77: Hoare triple {233570#(<= ~counter~0 9)} ~cond := #in~cond; {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,181 INFO L290 TraceCheckUtils]: 78: Hoare triple {233570#(<= ~counter~0 9)} assume !(0 == ~cond); {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,181 INFO L290 TraceCheckUtils]: 79: Hoare triple {233570#(<= ~counter~0 9)} assume true; {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,181 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {233570#(<= ~counter~0 9)} {233570#(<= ~counter~0 9)} #102#return; {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,182 INFO L272 TraceCheckUtils]: 81: Hoare triple {233570#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,182 INFO L290 TraceCheckUtils]: 82: Hoare triple {233570#(<= ~counter~0 9)} ~cond := #in~cond; {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,182 INFO L290 TraceCheckUtils]: 83: Hoare triple {233570#(<= ~counter~0 9)} assume !(0 == ~cond); {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,183 INFO L290 TraceCheckUtils]: 84: Hoare triple {233570#(<= ~counter~0 9)} assume true; {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,183 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {233570#(<= ~counter~0 9)} {233570#(<= ~counter~0 9)} #104#return; {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,183 INFO L290 TraceCheckUtils]: 86: Hoare triple {233570#(<= ~counter~0 9)} assume !(~c~0 >= 2 * ~v~0); {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,183 INFO L290 TraceCheckUtils]: 87: Hoare triple {233570#(<= ~counter~0 9)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {233570#(<= ~counter~0 9)} is VALID [2022-04-27 13:18:50,184 INFO L290 TraceCheckUtils]: 88: Hoare triple {233570#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {233643#(<= ~counter~0 10)} is VALID [2022-04-27 13:18:50,184 INFO L290 TraceCheckUtils]: 89: Hoare triple {233643#(<= ~counter~0 10)} assume !!(#t~post7 < 50);havoc #t~post7; {233643#(<= ~counter~0 10)} is VALID [2022-04-27 13:18:50,185 INFO L290 TraceCheckUtils]: 90: Hoare triple {233643#(<= ~counter~0 10)} assume !(~c~0 >= ~b~0); {233643#(<= ~counter~0 10)} is VALID [2022-04-27 13:18:50,185 INFO L290 TraceCheckUtils]: 91: Hoare triple {233643#(<= ~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; {233643#(<= ~counter~0 10)} is VALID [2022-04-27 13:18:50,186 INFO L290 TraceCheckUtils]: 92: Hoare triple {233643#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {233656#(<= ~counter~0 11)} is VALID [2022-04-27 13:18:50,186 INFO L290 TraceCheckUtils]: 93: Hoare triple {233656#(<= ~counter~0 11)} assume !!(#t~post6 < 50);havoc #t~post6; {233656#(<= ~counter~0 11)} is VALID [2022-04-27 13:18:50,186 INFO L290 TraceCheckUtils]: 94: Hoare triple {233656#(<= ~counter~0 11)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {233656#(<= ~counter~0 11)} is VALID [2022-04-27 13:18:50,187 INFO L290 TraceCheckUtils]: 95: Hoare triple {233656#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {233666#(<= ~counter~0 12)} is VALID [2022-04-27 13:18:50,187 INFO L290 TraceCheckUtils]: 96: Hoare triple {233666#(<= ~counter~0 12)} assume !!(#t~post7 < 50);havoc #t~post7; {233666#(<= ~counter~0 12)} is VALID [2022-04-27 13:18:50,187 INFO L290 TraceCheckUtils]: 97: Hoare triple {233666#(<= ~counter~0 12)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {233666#(<= ~counter~0 12)} is VALID [2022-04-27 13:18:50,188 INFO L290 TraceCheckUtils]: 98: Hoare triple {233666#(<= ~counter~0 12)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,188 INFO L290 TraceCheckUtils]: 99: Hoare triple {233676#(<= ~counter~0 13)} assume !!(#t~post8 < 50);havoc #t~post8; {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,189 INFO L272 TraceCheckUtils]: 100: Hoare triple {233676#(<= ~counter~0 13)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,189 INFO L290 TraceCheckUtils]: 101: Hoare triple {233676#(<= ~counter~0 13)} ~cond := #in~cond; {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,189 INFO L290 TraceCheckUtils]: 102: Hoare triple {233676#(<= ~counter~0 13)} assume !(0 == ~cond); {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,189 INFO L290 TraceCheckUtils]: 103: Hoare triple {233676#(<= ~counter~0 13)} assume true; {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,190 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {233676#(<= ~counter~0 13)} {233676#(<= ~counter~0 13)} #98#return; {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,190 INFO L272 TraceCheckUtils]: 105: Hoare triple {233676#(<= ~counter~0 13)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,191 INFO L290 TraceCheckUtils]: 106: Hoare triple {233676#(<= ~counter~0 13)} ~cond := #in~cond; {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,191 INFO L290 TraceCheckUtils]: 107: Hoare triple {233676#(<= ~counter~0 13)} assume !(0 == ~cond); {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,191 INFO L290 TraceCheckUtils]: 108: Hoare triple {233676#(<= ~counter~0 13)} assume true; {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,192 INFO L284 TraceCheckUtils]: 109: Hoare quadruple {233676#(<= ~counter~0 13)} {233676#(<= ~counter~0 13)} #100#return; {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,192 INFO L272 TraceCheckUtils]: 110: Hoare triple {233676#(<= ~counter~0 13)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,192 INFO L290 TraceCheckUtils]: 111: Hoare triple {233676#(<= ~counter~0 13)} ~cond := #in~cond; {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,193 INFO L290 TraceCheckUtils]: 112: Hoare triple {233676#(<= ~counter~0 13)} assume !(0 == ~cond); {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,193 INFO L290 TraceCheckUtils]: 113: Hoare triple {233676#(<= ~counter~0 13)} assume true; {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,193 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {233676#(<= ~counter~0 13)} {233676#(<= ~counter~0 13)} #102#return; {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,194 INFO L272 TraceCheckUtils]: 115: Hoare triple {233676#(<= ~counter~0 13)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,194 INFO L290 TraceCheckUtils]: 116: Hoare triple {233676#(<= ~counter~0 13)} ~cond := #in~cond; {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,194 INFO L290 TraceCheckUtils]: 117: Hoare triple {233676#(<= ~counter~0 13)} assume !(0 == ~cond); {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,194 INFO L290 TraceCheckUtils]: 118: Hoare triple {233676#(<= ~counter~0 13)} assume true; {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,195 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {233676#(<= ~counter~0 13)} {233676#(<= ~counter~0 13)} #104#return; {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,195 INFO L290 TraceCheckUtils]: 120: Hoare triple {233676#(<= ~counter~0 13)} assume !(~c~0 >= 2 * ~v~0); {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,195 INFO L290 TraceCheckUtils]: 121: Hoare triple {233676#(<= ~counter~0 13)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {233676#(<= ~counter~0 13)} is VALID [2022-04-27 13:18:50,196 INFO L290 TraceCheckUtils]: 122: Hoare triple {233676#(<= ~counter~0 13)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {233749#(<= ~counter~0 14)} is VALID [2022-04-27 13:18:50,196 INFO L290 TraceCheckUtils]: 123: Hoare triple {233749#(<= ~counter~0 14)} assume !!(#t~post7 < 50);havoc #t~post7; {233749#(<= ~counter~0 14)} is VALID [2022-04-27 13:18:50,196 INFO L290 TraceCheckUtils]: 124: Hoare triple {233749#(<= ~counter~0 14)} assume !(~c~0 >= ~b~0); {233749#(<= ~counter~0 14)} is VALID [2022-04-27 13:18:50,197 INFO L290 TraceCheckUtils]: 125: Hoare triple {233749#(<= ~counter~0 14)} ~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; {233749#(<= ~counter~0 14)} is VALID [2022-04-27 13:18:50,197 INFO L290 TraceCheckUtils]: 126: Hoare triple {233749#(<= ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {233762#(<= |main_#t~post6| 14)} is VALID [2022-04-27 13:18:50,197 INFO L290 TraceCheckUtils]: 127: Hoare triple {233762#(<= |main_#t~post6| 14)} assume !(#t~post6 < 50);havoc #t~post6; {233365#false} is VALID [2022-04-27 13:18:50,197 INFO L272 TraceCheckUtils]: 128: Hoare triple {233365#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)); {233365#false} is VALID [2022-04-27 13:18:50,197 INFO L290 TraceCheckUtils]: 129: Hoare triple {233365#false} ~cond := #in~cond; {233365#false} is VALID [2022-04-27 13:18:50,197 INFO L290 TraceCheckUtils]: 130: Hoare triple {233365#false} assume 0 == ~cond; {233365#false} is VALID [2022-04-27 13:18:50,197 INFO L290 TraceCheckUtils]: 131: Hoare triple {233365#false} assume !false; {233365#false} is VALID [2022-04-27 13:18:50,198 INFO L134 CoverageAnalysis]: Checked inductivity of 411 backedges. 24 proven. 311 refuted. 0 times theorem prover too weak. 76 trivial. 0 not checked. [2022-04-27 13:18:50,198 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:18:50,968 INFO L290 TraceCheckUtils]: 131: Hoare triple {233365#false} assume !false; {233365#false} is VALID [2022-04-27 13:18:50,968 INFO L290 TraceCheckUtils]: 130: Hoare triple {233365#false} assume 0 == ~cond; {233365#false} is VALID [2022-04-27 13:18:50,968 INFO L290 TraceCheckUtils]: 129: Hoare triple {233365#false} ~cond := #in~cond; {233365#false} is VALID [2022-04-27 13:18:50,968 INFO L272 TraceCheckUtils]: 128: Hoare triple {233365#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)); {233365#false} is VALID [2022-04-27 13:18:50,968 INFO L290 TraceCheckUtils]: 127: Hoare triple {233790#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {233365#false} is VALID [2022-04-27 13:18:50,969 INFO L290 TraceCheckUtils]: 126: Hoare triple {233794#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {233790#(< |main_#t~post6| 50)} is VALID [2022-04-27 13:18:50,969 INFO L290 TraceCheckUtils]: 125: Hoare triple {233794#(< ~counter~0 50)} ~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; {233794#(< ~counter~0 50)} is VALID [2022-04-27 13:18:50,969 INFO L290 TraceCheckUtils]: 124: Hoare triple {233794#(< ~counter~0 50)} assume !(~c~0 >= ~b~0); {233794#(< ~counter~0 50)} is VALID [2022-04-27 13:18:50,969 INFO L290 TraceCheckUtils]: 123: Hoare triple {233794#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {233794#(< ~counter~0 50)} is VALID [2022-04-27 13:18:50,971 INFO L290 TraceCheckUtils]: 122: Hoare triple {233807#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {233794#(< ~counter~0 50)} is VALID [2022-04-27 13:18:50,971 INFO L290 TraceCheckUtils]: 121: Hoare triple {233807#(< ~counter~0 49)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {233807#(< ~counter~0 49)} is VALID [2022-04-27 13:18:50,971 INFO L290 TraceCheckUtils]: 120: Hoare triple {233807#(< ~counter~0 49)} assume !(~c~0 >= 2 * ~v~0); {233807#(< ~counter~0 49)} is VALID [2022-04-27 13:18:50,972 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {233364#true} {233807#(< ~counter~0 49)} #104#return; {233807#(< ~counter~0 49)} is VALID [2022-04-27 13:18:50,972 INFO L290 TraceCheckUtils]: 118: Hoare triple {233364#true} assume true; {233364#true} is VALID [2022-04-27 13:18:50,972 INFO L290 TraceCheckUtils]: 117: Hoare triple {233364#true} assume !(0 == ~cond); {233364#true} is VALID [2022-04-27 13:18:50,972 INFO L290 TraceCheckUtils]: 116: Hoare triple {233364#true} ~cond := #in~cond; {233364#true} is VALID [2022-04-27 13:18:50,972 INFO L272 TraceCheckUtils]: 115: Hoare triple {233807#(< ~counter~0 49)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {233364#true} is VALID [2022-04-27 13:18:50,972 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {233364#true} {233807#(< ~counter~0 49)} #102#return; {233807#(< ~counter~0 49)} is VALID [2022-04-27 13:18:50,972 INFO L290 TraceCheckUtils]: 113: Hoare triple {233364#true} assume true; {233364#true} is VALID [2022-04-27 13:18:50,973 INFO L290 TraceCheckUtils]: 112: Hoare triple {233364#true} assume !(0 == ~cond); {233364#true} is VALID [2022-04-27 13:18:50,973 INFO L290 TraceCheckUtils]: 111: Hoare triple {233364#true} ~cond := #in~cond; {233364#true} is VALID [2022-04-27 13:18:50,973 INFO L272 TraceCheckUtils]: 110: Hoare triple {233807#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {233364#true} is VALID [2022-04-27 13:18:50,973 INFO L284 TraceCheckUtils]: 109: Hoare quadruple {233364#true} {233807#(< ~counter~0 49)} #100#return; {233807#(< ~counter~0 49)} is VALID [2022-04-27 13:18:50,973 INFO L290 TraceCheckUtils]: 108: Hoare triple {233364#true} assume true; {233364#true} is VALID [2022-04-27 13:18:50,973 INFO L290 TraceCheckUtils]: 107: Hoare triple {233364#true} assume !(0 == ~cond); {233364#true} is VALID [2022-04-27 13:18:50,973 INFO L290 TraceCheckUtils]: 106: Hoare triple {233364#true} ~cond := #in~cond; {233364#true} is VALID [2022-04-27 13:18:50,973 INFO L272 TraceCheckUtils]: 105: Hoare triple {233807#(< ~counter~0 49)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {233364#true} is VALID [2022-04-27 13:18:50,974 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {233364#true} {233807#(< ~counter~0 49)} #98#return; {233807#(< ~counter~0 49)} is VALID [2022-04-27 13:18:50,974 INFO L290 TraceCheckUtils]: 103: Hoare triple {233364#true} assume true; {233364#true} is VALID [2022-04-27 13:18:50,974 INFO L290 TraceCheckUtils]: 102: Hoare triple {233364#true} assume !(0 == ~cond); {233364#true} is VALID [2022-04-27 13:18:50,974 INFO L290 TraceCheckUtils]: 101: Hoare triple {233364#true} ~cond := #in~cond; {233364#true} is VALID [2022-04-27 13:18:50,974 INFO L272 TraceCheckUtils]: 100: Hoare triple {233807#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {233364#true} is VALID [2022-04-27 13:18:50,974 INFO L290 TraceCheckUtils]: 99: Hoare triple {233807#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {233807#(< ~counter~0 49)} is VALID [2022-04-27 13:18:50,975 INFO L290 TraceCheckUtils]: 98: Hoare triple {233880#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {233807#(< ~counter~0 49)} is VALID [2022-04-27 13:18:50,975 INFO L290 TraceCheckUtils]: 97: Hoare triple {233880#(< ~counter~0 48)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {233880#(< ~counter~0 48)} is VALID [2022-04-27 13:18:50,975 INFO L290 TraceCheckUtils]: 96: Hoare triple {233880#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {233880#(< ~counter~0 48)} is VALID [2022-04-27 13:18:50,976 INFO L290 TraceCheckUtils]: 95: Hoare triple {233890#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {233880#(< ~counter~0 48)} is VALID [2022-04-27 13:18:50,976 INFO L290 TraceCheckUtils]: 94: Hoare triple {233890#(< ~counter~0 47)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {233890#(< ~counter~0 47)} is VALID [2022-04-27 13:18:50,977 INFO L290 TraceCheckUtils]: 93: Hoare triple {233890#(< ~counter~0 47)} assume !!(#t~post6 < 50);havoc #t~post6; {233890#(< ~counter~0 47)} is VALID [2022-04-27 13:18:50,977 INFO L290 TraceCheckUtils]: 92: Hoare triple {233900#(< ~counter~0 46)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {233890#(< ~counter~0 47)} is VALID [2022-04-27 13:18:50,978 INFO L290 TraceCheckUtils]: 91: Hoare triple {233900#(< ~counter~0 46)} ~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; {233900#(< ~counter~0 46)} is VALID [2022-04-27 13:18:50,978 INFO L290 TraceCheckUtils]: 90: Hoare triple {233900#(< ~counter~0 46)} assume !(~c~0 >= ~b~0); {233900#(< ~counter~0 46)} is VALID [2022-04-27 13:18:50,978 INFO L290 TraceCheckUtils]: 89: Hoare triple {233900#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {233900#(< ~counter~0 46)} is VALID [2022-04-27 13:18:50,979 INFO L290 TraceCheckUtils]: 88: Hoare triple {233913#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {233900#(< ~counter~0 46)} is VALID [2022-04-27 13:18:50,979 INFO L290 TraceCheckUtils]: 87: Hoare triple {233913#(< ~counter~0 45)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {233913#(< ~counter~0 45)} is VALID [2022-04-27 13:18:50,979 INFO L290 TraceCheckUtils]: 86: Hoare triple {233913#(< ~counter~0 45)} assume !(~c~0 >= 2 * ~v~0); {233913#(< ~counter~0 45)} is VALID [2022-04-27 13:18:50,980 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {233364#true} {233913#(< ~counter~0 45)} #104#return; {233913#(< ~counter~0 45)} is VALID [2022-04-27 13:18:50,980 INFO L290 TraceCheckUtils]: 84: Hoare triple {233364#true} assume true; {233364#true} is VALID [2022-04-27 13:18:50,980 INFO L290 TraceCheckUtils]: 83: Hoare triple {233364#true} assume !(0 == ~cond); {233364#true} is VALID [2022-04-27 13:18:50,980 INFO L290 TraceCheckUtils]: 82: Hoare triple {233364#true} ~cond := #in~cond; {233364#true} is VALID [2022-04-27 13:18:50,980 INFO L272 TraceCheckUtils]: 81: Hoare triple {233913#(< ~counter~0 45)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {233364#true} is VALID [2022-04-27 13:18:50,980 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {233364#true} {233913#(< ~counter~0 45)} #102#return; {233913#(< ~counter~0 45)} is VALID [2022-04-27 13:18:50,980 INFO L290 TraceCheckUtils]: 79: Hoare triple {233364#true} assume true; {233364#true} is VALID [2022-04-27 13:18:50,980 INFO L290 TraceCheckUtils]: 78: Hoare triple {233364#true} assume !(0 == ~cond); {233364#true} is VALID [2022-04-27 13:18:50,980 INFO L290 TraceCheckUtils]: 77: Hoare triple {233364#true} ~cond := #in~cond; {233364#true} is VALID [2022-04-27 13:18:50,980 INFO L272 TraceCheckUtils]: 76: Hoare triple {233913#(< ~counter~0 45)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {233364#true} is VALID [2022-04-27 13:18:50,981 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {233364#true} {233913#(< ~counter~0 45)} #100#return; {233913#(< ~counter~0 45)} is VALID [2022-04-27 13:18:50,981 INFO L290 TraceCheckUtils]: 74: Hoare triple {233364#true} assume true; {233364#true} is VALID [2022-04-27 13:18:50,981 INFO L290 TraceCheckUtils]: 73: Hoare triple {233364#true} assume !(0 == ~cond); {233364#true} is VALID [2022-04-27 13:18:50,981 INFO L290 TraceCheckUtils]: 72: Hoare triple {233364#true} ~cond := #in~cond; {233364#true} is VALID [2022-04-27 13:18:50,981 INFO L272 TraceCheckUtils]: 71: Hoare triple {233913#(< ~counter~0 45)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {233364#true} is VALID [2022-04-27 13:18:50,982 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {233364#true} {233913#(< ~counter~0 45)} #98#return; {233913#(< ~counter~0 45)} is VALID [2022-04-27 13:18:50,982 INFO L290 TraceCheckUtils]: 69: Hoare triple {233364#true} assume true; {233364#true} is VALID [2022-04-27 13:18:50,982 INFO L290 TraceCheckUtils]: 68: Hoare triple {233364#true} assume !(0 == ~cond); {233364#true} is VALID [2022-04-27 13:18:50,982 INFO L290 TraceCheckUtils]: 67: Hoare triple {233364#true} ~cond := #in~cond; {233364#true} is VALID [2022-04-27 13:18:50,982 INFO L272 TraceCheckUtils]: 66: Hoare triple {233913#(< ~counter~0 45)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {233364#true} is VALID [2022-04-27 13:18:50,982 INFO L290 TraceCheckUtils]: 65: Hoare triple {233913#(< ~counter~0 45)} assume !!(#t~post8 < 50);havoc #t~post8; {233913#(< ~counter~0 45)} is VALID [2022-04-27 13:18:50,983 INFO L290 TraceCheckUtils]: 64: Hoare triple {233986#(< ~counter~0 44)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {233913#(< ~counter~0 45)} is VALID [2022-04-27 13:18:50,983 INFO L290 TraceCheckUtils]: 63: Hoare triple {233986#(< ~counter~0 44)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {233986#(< ~counter~0 44)} is VALID [2022-04-27 13:18:50,983 INFO L290 TraceCheckUtils]: 62: Hoare triple {233986#(< ~counter~0 44)} assume !!(#t~post7 < 50);havoc #t~post7; {233986#(< ~counter~0 44)} is VALID [2022-04-27 13:18:50,984 INFO L290 TraceCheckUtils]: 61: Hoare triple {233996#(< ~counter~0 43)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {233986#(< ~counter~0 44)} is VALID [2022-04-27 13:18:50,984 INFO L290 TraceCheckUtils]: 60: Hoare triple {233996#(< ~counter~0 43)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {233996#(< ~counter~0 43)} is VALID [2022-04-27 13:18:50,985 INFO L290 TraceCheckUtils]: 59: Hoare triple {233996#(< ~counter~0 43)} assume !!(#t~post6 < 50);havoc #t~post6; {233996#(< ~counter~0 43)} is VALID [2022-04-27 13:18:50,985 INFO L290 TraceCheckUtils]: 58: Hoare triple {234006#(< ~counter~0 42)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {233996#(< ~counter~0 43)} is VALID [2022-04-27 13:18:50,986 INFO L290 TraceCheckUtils]: 57: Hoare triple {234006#(< ~counter~0 42)} ~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; {234006#(< ~counter~0 42)} is VALID [2022-04-27 13:18:50,986 INFO L290 TraceCheckUtils]: 56: Hoare triple {234006#(< ~counter~0 42)} assume !(~c~0 >= ~b~0); {234006#(< ~counter~0 42)} is VALID [2022-04-27 13:18:50,986 INFO L290 TraceCheckUtils]: 55: Hoare triple {234006#(< ~counter~0 42)} assume !!(#t~post7 < 50);havoc #t~post7; {234006#(< ~counter~0 42)} is VALID [2022-04-27 13:18:50,987 INFO L290 TraceCheckUtils]: 54: Hoare triple {234019#(< ~counter~0 41)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {234006#(< ~counter~0 42)} is VALID [2022-04-27 13:18:50,987 INFO L290 TraceCheckUtils]: 53: Hoare triple {234019#(< ~counter~0 41)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {234019#(< ~counter~0 41)} is VALID [2022-04-27 13:18:50,987 INFO L290 TraceCheckUtils]: 52: Hoare triple {234019#(< ~counter~0 41)} assume !(~c~0 >= 2 * ~v~0); {234019#(< ~counter~0 41)} is VALID [2022-04-27 13:18:50,988 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {233364#true} {234019#(< ~counter~0 41)} #104#return; {234019#(< ~counter~0 41)} is VALID [2022-04-27 13:18:50,988 INFO L290 TraceCheckUtils]: 50: Hoare triple {233364#true} assume true; {233364#true} is VALID [2022-04-27 13:18:50,988 INFO L290 TraceCheckUtils]: 49: Hoare triple {233364#true} assume !(0 == ~cond); {233364#true} is VALID [2022-04-27 13:18:50,988 INFO L290 TraceCheckUtils]: 48: Hoare triple {233364#true} ~cond := #in~cond; {233364#true} is VALID [2022-04-27 13:18:50,988 INFO L272 TraceCheckUtils]: 47: Hoare triple {234019#(< ~counter~0 41)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {233364#true} is VALID [2022-04-27 13:18:50,988 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {233364#true} {234019#(< ~counter~0 41)} #102#return; {234019#(< ~counter~0 41)} is VALID [2022-04-27 13:18:50,989 INFO L290 TraceCheckUtils]: 45: Hoare triple {233364#true} assume true; {233364#true} is VALID [2022-04-27 13:18:50,989 INFO L290 TraceCheckUtils]: 44: Hoare triple {233364#true} assume !(0 == ~cond); {233364#true} is VALID [2022-04-27 13:18:50,989 INFO L290 TraceCheckUtils]: 43: Hoare triple {233364#true} ~cond := #in~cond; {233364#true} is VALID [2022-04-27 13:18:50,989 INFO L272 TraceCheckUtils]: 42: Hoare triple {234019#(< ~counter~0 41)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {233364#true} is VALID [2022-04-27 13:18:50,989 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {233364#true} {234019#(< ~counter~0 41)} #100#return; {234019#(< ~counter~0 41)} is VALID [2022-04-27 13:18:50,989 INFO L290 TraceCheckUtils]: 40: Hoare triple {233364#true} assume true; {233364#true} is VALID [2022-04-27 13:18:50,989 INFO L290 TraceCheckUtils]: 39: Hoare triple {233364#true} assume !(0 == ~cond); {233364#true} is VALID [2022-04-27 13:18:50,989 INFO L290 TraceCheckUtils]: 38: Hoare triple {233364#true} ~cond := #in~cond; {233364#true} is VALID [2022-04-27 13:18:50,989 INFO L272 TraceCheckUtils]: 37: Hoare triple {234019#(< ~counter~0 41)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {233364#true} is VALID [2022-04-27 13:18:50,990 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {233364#true} {234019#(< ~counter~0 41)} #98#return; {234019#(< ~counter~0 41)} is VALID [2022-04-27 13:18:50,990 INFO L290 TraceCheckUtils]: 35: Hoare triple {233364#true} assume true; {233364#true} is VALID [2022-04-27 13:18:50,990 INFO L290 TraceCheckUtils]: 34: Hoare triple {233364#true} assume !(0 == ~cond); {233364#true} is VALID [2022-04-27 13:18:50,990 INFO L290 TraceCheckUtils]: 33: Hoare triple {233364#true} ~cond := #in~cond; {233364#true} is VALID [2022-04-27 13:18:50,990 INFO L272 TraceCheckUtils]: 32: Hoare triple {234019#(< ~counter~0 41)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {233364#true} is VALID [2022-04-27 13:18:51,003 INFO L290 TraceCheckUtils]: 31: Hoare triple {234019#(< ~counter~0 41)} assume !!(#t~post8 < 50);havoc #t~post8; {234019#(< ~counter~0 41)} is VALID [2022-04-27 13:18:51,005 INFO L290 TraceCheckUtils]: 30: Hoare triple {234092#(< ~counter~0 40)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {234019#(< ~counter~0 41)} is VALID [2022-04-27 13:18:51,006 INFO L290 TraceCheckUtils]: 29: Hoare triple {234092#(< ~counter~0 40)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {234092#(< ~counter~0 40)} is VALID [2022-04-27 13:18:51,006 INFO L290 TraceCheckUtils]: 28: Hoare triple {234092#(< ~counter~0 40)} assume !!(#t~post7 < 50);havoc #t~post7; {234092#(< ~counter~0 40)} is VALID [2022-04-27 13:18:51,007 INFO L290 TraceCheckUtils]: 27: Hoare triple {234102#(< ~counter~0 39)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {234092#(< ~counter~0 40)} is VALID [2022-04-27 13:18:51,007 INFO L290 TraceCheckUtils]: 26: Hoare triple {234102#(< ~counter~0 39)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {234102#(< ~counter~0 39)} is VALID [2022-04-27 13:18:51,007 INFO L290 TraceCheckUtils]: 25: Hoare triple {234102#(< ~counter~0 39)} assume !!(#t~post6 < 50);havoc #t~post6; {234102#(< ~counter~0 39)} is VALID [2022-04-27 13:18:51,008 INFO L290 TraceCheckUtils]: 24: Hoare triple {234112#(< ~counter~0 38)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {234102#(< ~counter~0 39)} is VALID [2022-04-27 13:18:51,008 INFO L290 TraceCheckUtils]: 23: Hoare triple {234112#(< ~counter~0 38)} ~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; {234112#(< ~counter~0 38)} is VALID [2022-04-27 13:18:51,008 INFO L290 TraceCheckUtils]: 22: Hoare triple {234112#(< ~counter~0 38)} assume !(~c~0 >= ~b~0); {234112#(< ~counter~0 38)} is VALID [2022-04-27 13:18:51,009 INFO L290 TraceCheckUtils]: 21: Hoare triple {234112#(< ~counter~0 38)} assume !!(#t~post7 < 50);havoc #t~post7; {234112#(< ~counter~0 38)} is VALID [2022-04-27 13:18:51,009 INFO L290 TraceCheckUtils]: 20: Hoare triple {234125#(< ~counter~0 37)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {234112#(< ~counter~0 38)} is VALID [2022-04-27 13:18:51,010 INFO L290 TraceCheckUtils]: 19: Hoare triple {234125#(< ~counter~0 37)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {234125#(< ~counter~0 37)} is VALID [2022-04-27 13:18:51,010 INFO L290 TraceCheckUtils]: 18: Hoare triple {234125#(< ~counter~0 37)} assume !!(#t~post6 < 50);havoc #t~post6; {234125#(< ~counter~0 37)} is VALID [2022-04-27 13:18:51,011 INFO L290 TraceCheckUtils]: 17: Hoare triple {234135#(< ~counter~0 36)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {234125#(< ~counter~0 37)} is VALID [2022-04-27 13:18:51,011 INFO L290 TraceCheckUtils]: 16: Hoare triple {234135#(< ~counter~0 36)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {234135#(< ~counter~0 36)} is VALID [2022-04-27 13:18:51,011 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {233364#true} {234135#(< ~counter~0 36)} #96#return; {234135#(< ~counter~0 36)} is VALID [2022-04-27 13:18:51,011 INFO L290 TraceCheckUtils]: 14: Hoare triple {233364#true} assume true; {233364#true} is VALID [2022-04-27 13:18:51,011 INFO L290 TraceCheckUtils]: 13: Hoare triple {233364#true} assume !(0 == ~cond); {233364#true} is VALID [2022-04-27 13:18:51,012 INFO L290 TraceCheckUtils]: 12: Hoare triple {233364#true} ~cond := #in~cond; {233364#true} is VALID [2022-04-27 13:18:51,012 INFO L272 TraceCheckUtils]: 11: Hoare triple {234135#(< ~counter~0 36)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {233364#true} is VALID [2022-04-27 13:18:51,012 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {233364#true} {234135#(< ~counter~0 36)} #94#return; {234135#(< ~counter~0 36)} is VALID [2022-04-27 13:18:51,012 INFO L290 TraceCheckUtils]: 9: Hoare triple {233364#true} assume true; {233364#true} is VALID [2022-04-27 13:18:51,012 INFO L290 TraceCheckUtils]: 8: Hoare triple {233364#true} assume !(0 == ~cond); {233364#true} is VALID [2022-04-27 13:18:51,012 INFO L290 TraceCheckUtils]: 7: Hoare triple {233364#true} ~cond := #in~cond; {233364#true} is VALID [2022-04-27 13:18:51,012 INFO L272 TraceCheckUtils]: 6: Hoare triple {234135#(< ~counter~0 36)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {233364#true} is VALID [2022-04-27 13:18:51,012 INFO L290 TraceCheckUtils]: 5: Hoare triple {234135#(< ~counter~0 36)} 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; {234135#(< ~counter~0 36)} is VALID [2022-04-27 13:18:51,013 INFO L272 TraceCheckUtils]: 4: Hoare triple {234135#(< ~counter~0 36)} call #t~ret9 := main(); {234135#(< ~counter~0 36)} is VALID [2022-04-27 13:18:51,013 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {234135#(< ~counter~0 36)} {233364#true} #108#return; {234135#(< ~counter~0 36)} is VALID [2022-04-27 13:18:51,013 INFO L290 TraceCheckUtils]: 2: Hoare triple {234135#(< ~counter~0 36)} assume true; {234135#(< ~counter~0 36)} is VALID [2022-04-27 13:18:51,013 INFO L290 TraceCheckUtils]: 1: Hoare triple {233364#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; {234135#(< ~counter~0 36)} is VALID [2022-04-27 13:18:51,014 INFO L272 TraceCheckUtils]: 0: Hoare triple {233364#true} call ULTIMATE.init(); {233364#true} is VALID [2022-04-27 13:18:51,014 INFO L134 CoverageAnalysis]: Checked inductivity of 411 backedges. 24 proven. 119 refuted. 0 times theorem prover too weak. 268 trivial. 0 not checked. [2022-04-27 13:18:51,014 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:18:51,014 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1778104223] [2022-04-27 13:18:51,014 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:18:51,014 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [970480355] [2022-04-27 13:18:51,014 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [970480355] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:18:51,014 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:18:51,014 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 18] total 34 [2022-04-27 13:18:51,014 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [603222350] [2022-04-27 13:18:51,014 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:18:51,015 INFO L78 Accepts]: Start accepts. Automaton has has 34 states, 34 states have (on average 3.8529411764705883) internal successors, (131), 34 states have internal predecessors, (131), 10 states have call successors, (32), 7 states have call predecessors, (32), 6 states have return successors, (30), 8 states have call predecessors, (30), 9 states have call successors, (30) Word has length 132 [2022-04-27 13:18:51,015 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:18:51,015 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 34 states, 34 states have (on average 3.8529411764705883) internal successors, (131), 34 states have internal predecessors, (131), 10 states have call successors, (32), 7 states have call predecessors, (32), 6 states have return successors, (30), 8 states have call predecessors, (30), 9 states have call successors, (30) [2022-04-27 13:18:51,193 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 193 edges. 193 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:18:51,193 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 34 states [2022-04-27 13:18:51,193 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:18:51,194 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 34 interpolants. [2022-04-27 13:18:51,194 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=501, Invalid=621, Unknown=0, NotChecked=0, Total=1122 [2022-04-27 13:18:51,194 INFO L87 Difference]: Start difference. First operand 6950 states and 9637 transitions. Second operand has 34 states, 34 states have (on average 3.8529411764705883) internal successors, (131), 34 states have internal predecessors, (131), 10 states have call successors, (32), 7 states have call predecessors, (32), 6 states have return successors, (30), 8 states have call predecessors, (30), 9 states have call successors, (30) [2022-04-27 13:19:34,000 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:19:34,001 INFO L93 Difference]: Finished difference Result 12791 states and 18497 transitions. [2022-04-27 13:19:34,001 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 60 states. [2022-04-27 13:19:34,001 INFO L78 Accepts]: Start accepts. Automaton has has 34 states, 34 states have (on average 3.8529411764705883) internal successors, (131), 34 states have internal predecessors, (131), 10 states have call successors, (32), 7 states have call predecessors, (32), 6 states have return successors, (30), 8 states have call predecessors, (30), 9 states have call successors, (30) Word has length 132 [2022-04-27 13:19:34,001 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:19:34,001 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 34 states have (on average 3.8529411764705883) internal successors, (131), 34 states have internal predecessors, (131), 10 states have call successors, (32), 7 states have call predecessors, (32), 6 states have return successors, (30), 8 states have call predecessors, (30), 9 states have call successors, (30) [2022-04-27 13:19:34,006 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 809 transitions. [2022-04-27 13:19:34,007 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 34 states have (on average 3.8529411764705883) internal successors, (131), 34 states have internal predecessors, (131), 10 states have call successors, (32), 7 states have call predecessors, (32), 6 states have return successors, (30), 8 states have call predecessors, (30), 9 states have call successors, (30) [2022-04-27 13:19:34,012 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 809 transitions. [2022-04-27 13:19:34,012 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 60 states and 809 transitions. [2022-04-27 13:19:34,796 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 809 edges. 809 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:19:42,277 INFO L225 Difference]: With dead ends: 12791 [2022-04-27 13:19:42,277 INFO L226 Difference]: Without dead ends: 12786 [2022-04-27 13:19:42,280 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 290 GetRequests, 231 SyntacticMatches, 0 SemanticMatches, 59 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 545 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=1327, Invalid=2333, Unknown=0, NotChecked=0, Total=3660 [2022-04-27 13:19:42,281 INFO L413 NwaCegarLoop]: 149 mSDtfsCounter, 1128 mSDsluCounter, 787 mSDsCounter, 0 mSdLazyCounter, 644 mSolverCounterSat, 686 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1128 SdHoareTripleChecker+Valid, 936 SdHoareTripleChecker+Invalid, 1330 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 686 IncrementalHoareTripleChecker+Valid, 644 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.3s IncrementalHoareTripleChecker+Time [2022-04-27 13:19:42,281 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [1128 Valid, 936 Invalid, 1330 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [686 Valid, 644 Invalid, 0 Unknown, 0 Unchecked, 1.3s Time] [2022-04-27 13:19:42,286 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 12786 states.