/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/egcd-ll_unwindbound10.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 12:48:09,312 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 12:48:09,313 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 12:48:09,347 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 12:48:09,347 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 12:48:09,348 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 12:48:09,350 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 12:48:09,354 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 12:48:09,355 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 12:48:09,358 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 12:48:09,358 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 12:48:09,359 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 12:48:09,360 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 12:48:09,361 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 12:48:09,362 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 12:48:09,364 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 12:48:09,364 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 12:48:09,365 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 12:48:09,366 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 12:48:09,370 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 12:48:09,371 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 12:48:09,372 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 12:48:09,373 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 12:48:09,373 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 12:48:09,374 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 12:48:09,379 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 12:48:09,379 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 12:48:09,379 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 12:48:09,380 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 12:48:09,380 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 12:48:09,381 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 12:48:09,381 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 12:48:09,382 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 12:48:09,382 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 12:48:09,383 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 12:48:09,383 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 12:48:09,383 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 12:48:09,384 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 12:48:09,384 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 12:48:09,384 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 12:48:09,384 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 12:48:09,385 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 12:48:09,386 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 12:48:09,401 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 12:48:09,401 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 12:48:09,401 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-27 12:48:09,402 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-27 12:48:09,402 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 12:48:09,402 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 12:48:09,402 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 12:48:09,402 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 12:48:09,403 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 12:48:09,403 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 12:48:09,403 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 12:48:09,403 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 12:48:09,403 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 12:48:09,403 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 12:48:09,404 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 12:48:09,404 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 12:48:09,404 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 12:48:09,404 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 12:48:09,405 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 12:48:09,405 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 12:48:09,405 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 12:48:09,405 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 12:48:09,405 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 12:48:09,405 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 12:48:09,405 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 12:48:09,405 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 12:48:09,405 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 12:48:09,405 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 12:48:09,406 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 12:48:09,406 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 12:48:09,406 INFO L138 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2022-04-27 12:48:09,406 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-27 12:48:09,406 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 12:48:09,406 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 12:48:09,538 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 12:48:09,550 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 12:48:09,552 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 12:48:09,552 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 12:48:09,552 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 12:48:09,553 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_unwindbound10.c [2022-04-27 12:48:09,606 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c559c9f0e/a6db52aadba642d5943974add1f2f670/FLAG4e6caf63c [2022-04-27 12:48:09,990 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 12:48:09,991 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_unwindbound10.c [2022-04-27 12:48:09,997 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c559c9f0e/a6db52aadba642d5943974add1f2f670/FLAG4e6caf63c [2022-04-27 12:48:10,008 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c559c9f0e/a6db52aadba642d5943974add1f2f670 [2022-04-27 12:48:10,010 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 12:48:10,011 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-27 12:48:10,013 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 12:48:10,013 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 12:48:10,016 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 12:48:10,017 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 12:48:10" (1/1) ... [2022-04-27 12:48:10,017 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@17afb632 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:48:10, skipping insertion in model container [2022-04-27 12:48:10,017 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 12:48:10" (1/1) ... [2022-04-27 12:48:10,021 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 12:48:10,030 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 12:48:10,149 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_unwindbound10.c[489,502] [2022-04-27 12:48:10,162 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 12:48:10,167 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 12:48:10,189 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd-ll_unwindbound10.c[489,502] [2022-04-27 12:48:10,195 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 12:48:10,206 INFO L208 MainTranslator]: Completed translation [2022-04-27 12:48:10,206 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:48:10 WrapperNode [2022-04-27 12:48:10,206 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 12:48:10,207 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 12:48:10,207 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 12:48:10,207 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 12:48:10,214 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:48:10" (1/1) ... [2022-04-27 12:48:10,214 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:48:10" (1/1) ... [2022-04-27 12:48:10,220 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:48:10" (1/1) ... [2022-04-27 12:48:10,220 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:48:10" (1/1) ... [2022-04-27 12:48:10,228 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:48:10" (1/1) ... [2022-04-27 12:48:10,230 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:48:10" (1/1) ... [2022-04-27 12:48:10,231 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:48:10" (1/1) ... [2022-04-27 12:48:10,233 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 12:48:10,233 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 12:48:10,233 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 12:48:10,233 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 12:48:10,235 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:48:10" (1/1) ... [2022-04-27 12:48:10,244 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 12:48:10,253 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:48:10,266 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 12:48:10,280 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 12:48:10,294 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 12:48:10,294 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 12:48:10,294 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 12:48:10,295 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 12:48:10,296 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 12:48:10,296 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 12:48:10,297 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 12:48:10,297 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 12:48:10,297 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 12:48:10,297 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 12:48:10,297 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 12:48:10,297 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 12:48:10,297 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 12:48:10,297 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 12:48:10,297 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 12:48:10,297 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 12:48:10,297 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 12:48:10,297 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 12:48:10,298 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 12:48:10,298 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 12:48:10,338 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 12:48:10,339 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 12:48:10,497 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 12:48:10,509 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 12:48:10,509 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-27 12:48:10,511 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 12:48:10 BoogieIcfgContainer [2022-04-27 12:48:10,511 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 12:48:10,512 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 12:48:10,512 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 12:48:10,514 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 12:48:10,514 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 12:48:10" (1/3) ... [2022-04-27 12:48:10,515 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4f87f158 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 12:48:10, skipping insertion in model container [2022-04-27 12:48:10,515 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:48:10" (2/3) ... [2022-04-27 12:48:10,515 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@4f87f158 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 12:48:10, skipping insertion in model container [2022-04-27 12:48:10,515 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 12:48:10" (3/3) ... [2022-04-27 12:48:10,516 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd-ll_unwindbound10.c [2022-04-27 12:48:10,525 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 12:48:10,525 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 12:48:10,554 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 12:48:10,558 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@6418cbbb, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@1b39de66 [2022-04-27 12:48:10,558 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 12:48:10,564 INFO L276 IsEmpty]: Start isEmpty. Operand has 35 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 11 states have call successors, (11), 4 states have call predecessors, (11), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-27 12:48:10,569 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-27 12:48:10,569 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:48:10,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] [2022-04-27 12:48:10,570 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:48:10,573 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:48:10,573 INFO L85 PathProgramCache]: Analyzing trace with hash 1226702723, now seen corresponding path program 1 times [2022-04-27 12:48:10,578 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:48:10,579 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [612211759] [2022-04-27 12:48:10,579 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:48:10,579 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:48:10,643 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:48:10,689 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 12:48:10,699 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:48:10,714 INFO L290 TraceCheckUtils]: 0: Hoare triple {51#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {38#true} is VALID [2022-04-27 12:48:10,715 INFO L290 TraceCheckUtils]: 1: Hoare triple {38#true} assume true; {38#true} is VALID [2022-04-27 12:48:10,715 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {38#true} {38#true} #82#return; {38#true} is VALID [2022-04-27 12:48:10,716 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 12:48:10,717 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:48:10,722 INFO L290 TraceCheckUtils]: 0: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-04-27 12:48:10,722 INFO L290 TraceCheckUtils]: 1: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-04-27 12:48:10,722 INFO L290 TraceCheckUtils]: 2: Hoare triple {39#false} assume true; {39#false} is VALID [2022-04-27 12:48:10,723 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {39#false} {38#true} #64#return; {39#false} is VALID [2022-04-27 12:48:10,723 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-27 12:48:10,724 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:48:10,742 INFO L290 TraceCheckUtils]: 0: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-04-27 12:48:10,743 INFO L290 TraceCheckUtils]: 1: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-04-27 12:48:10,743 INFO L290 TraceCheckUtils]: 2: Hoare triple {39#false} assume true; {39#false} is VALID [2022-04-27 12:48:10,743 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {39#false} {39#false} #66#return; {39#false} is VALID [2022-04-27 12:48:10,744 INFO L272 TraceCheckUtils]: 0: Hoare triple {38#true} call ULTIMATE.init(); {51#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 12:48:10,744 INFO L290 TraceCheckUtils]: 1: Hoare triple {51#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {38#true} is VALID [2022-04-27 12:48:10,744 INFO L290 TraceCheckUtils]: 2: Hoare triple {38#true} assume true; {38#true} is VALID [2022-04-27 12:48:10,744 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38#true} {38#true} #82#return; {38#true} is VALID [2022-04-27 12:48:10,745 INFO L272 TraceCheckUtils]: 4: Hoare triple {38#true} call #t~ret7 := main(); {38#true} is VALID [2022-04-27 12:48:10,745 INFO L290 TraceCheckUtils]: 5: Hoare triple {38#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {38#true} is VALID [2022-04-27 12:48:10,745 INFO L272 TraceCheckUtils]: 6: Hoare triple {38#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {38#true} is VALID [2022-04-27 12:48:10,745 INFO L290 TraceCheckUtils]: 7: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-04-27 12:48:10,746 INFO L290 TraceCheckUtils]: 8: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-04-27 12:48:10,746 INFO L290 TraceCheckUtils]: 9: Hoare triple {39#false} assume true; {39#false} is VALID [2022-04-27 12:48:10,746 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {39#false} {38#true} #64#return; {39#false} is VALID [2022-04-27 12:48:10,746 INFO L272 TraceCheckUtils]: 11: Hoare triple {39#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {38#true} is VALID [2022-04-27 12:48:10,746 INFO L290 TraceCheckUtils]: 12: Hoare triple {38#true} ~cond := #in~cond; {38#true} is VALID [2022-04-27 12:48:10,747 INFO L290 TraceCheckUtils]: 13: Hoare triple {38#true} assume 0 == ~cond;assume false; {39#false} is VALID [2022-04-27 12:48:10,747 INFO L290 TraceCheckUtils]: 14: Hoare triple {39#false} assume true; {39#false} is VALID [2022-04-27 12:48:10,747 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {39#false} {39#false} #66#return; {39#false} is VALID [2022-04-27 12:48:10,747 INFO L290 TraceCheckUtils]: 16: Hoare triple {39#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {39#false} is VALID [2022-04-27 12:48:10,747 INFO L290 TraceCheckUtils]: 17: Hoare triple {39#false} assume !true; {39#false} is VALID [2022-04-27 12:48:10,747 INFO L272 TraceCheckUtils]: 18: Hoare triple {39#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {39#false} is VALID [2022-04-27 12:48:10,748 INFO L290 TraceCheckUtils]: 19: Hoare triple {39#false} ~cond := #in~cond; {39#false} is VALID [2022-04-27 12:48:10,748 INFO L290 TraceCheckUtils]: 20: Hoare triple {39#false} assume 0 == ~cond; {39#false} is VALID [2022-04-27 12:48:10,748 INFO L290 TraceCheckUtils]: 21: Hoare triple {39#false} assume !false; {39#false} is VALID [2022-04-27 12:48:10,748 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 12:48:10,749 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:48:10,749 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [612211759] [2022-04-27 12:48:10,749 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [612211759] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:48:10,749 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:48:10,750 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 12:48:10,751 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1934268161] [2022-04-27 12:48:10,751 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:48:10,754 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 12:48:10,755 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:48:10,757 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 12:48:10,776 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 12:48:10,776 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 12:48:10,776 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:48:10,789 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 12:48:10,790 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 12:48:10,791 INFO L87 Difference]: Start difference. First operand has 35 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 11 states have call successors, (11), 4 states have call predecessors, (11), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 12:48:10,915 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:10,915 INFO L93 Difference]: Finished difference Result 64 states and 97 transitions. [2022-04-27 12:48:10,915 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 12:48:10,915 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 12:48:10,915 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:48:10,916 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 12:48:10,932 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 97 transitions. [2022-04-27 12:48:10,933 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 12:48:10,944 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 97 transitions. [2022-04-27 12:48:10,944 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 97 transitions. [2022-04-27 12:48:11,049 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:48:11,059 INFO L225 Difference]: With dead ends: 64 [2022-04-27 12:48:11,060 INFO L226 Difference]: Without dead ends: 31 [2022-04-27 12:48:11,062 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 12:48:11,066 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 20 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 45 SdHoareTripleChecker+Invalid, 30 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 20 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:48:11,067 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 45 Invalid, 30 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 20 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:48:11,078 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2022-04-27 12:48:11,089 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 30. [2022-04-27 12:48:11,089 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:48:11,090 INFO L82 GeneralOperation]: Start isEquivalent. First operand 31 states. Second operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 12:48:11,090 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 12:48:11,091 INFO L87 Difference]: Start difference. First operand 31 states. Second operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 12:48:11,093 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:11,094 INFO L93 Difference]: Finished difference Result 31 states and 40 transitions. [2022-04-27 12:48:11,094 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 40 transitions. [2022-04-27 12:48:11,094 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:48:11,094 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:48:11,095 INFO L74 IsIncluded]: Start isIncluded. First operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 31 states. [2022-04-27 12:48:11,095 INFO L87 Difference]: Start difference. First operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 31 states. [2022-04-27 12:48:11,097 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:11,097 INFO L93 Difference]: Finished difference Result 31 states and 40 transitions. [2022-04-27 12:48:11,097 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 40 transitions. [2022-04-27 12:48:11,098 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:48:11,098 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:48:11,098 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:48:11,098 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:48:11,098 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 30 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 12:48:11,100 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 39 transitions. [2022-04-27 12:48:11,101 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 39 transitions. Word has length 22 [2022-04-27 12:48:11,101 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:48:11,101 INFO L495 AbstractCegarLoop]: Abstraction has 30 states and 39 transitions. [2022-04-27 12:48:11,101 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 12:48:11,101 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 39 transitions. [2022-04-27 12:48:11,102 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-27 12:48:11,102 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:48:11,102 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 12:48:11,102 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 12:48:11,102 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:48:11,111 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:48:11,111 INFO L85 PathProgramCache]: Analyzing trace with hash 1346542817, now seen corresponding path program 1 times [2022-04-27 12:48:11,111 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:48:11,112 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1030242083] [2022-04-27 12:48:11,112 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:48:11,112 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:48:11,153 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:48:11,215 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 12:48:11,226 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:48:11,233 INFO L290 TraceCheckUtils]: 0: Hoare triple {269#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {259#(= ~counter~0 0)} is VALID [2022-04-27 12:48:11,234 INFO L290 TraceCheckUtils]: 1: Hoare triple {259#(= ~counter~0 0)} assume true; {259#(= ~counter~0 0)} is VALID [2022-04-27 12:48:11,234 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {259#(= ~counter~0 0)} {254#true} #82#return; {259#(= ~counter~0 0)} is VALID [2022-04-27 12:48:11,234 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 12:48:11,236 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:48:11,239 INFO L290 TraceCheckUtils]: 0: Hoare triple {254#true} ~cond := #in~cond; {254#true} is VALID [2022-04-27 12:48:11,239 INFO L290 TraceCheckUtils]: 1: Hoare triple {254#true} assume !(0 == ~cond); {254#true} is VALID [2022-04-27 12:48:11,240 INFO L290 TraceCheckUtils]: 2: Hoare triple {254#true} assume true; {254#true} is VALID [2022-04-27 12:48:11,240 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {254#true} {259#(= ~counter~0 0)} #64#return; {259#(= ~counter~0 0)} is VALID [2022-04-27 12:48:11,240 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-27 12:48:11,242 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:48:11,245 INFO L290 TraceCheckUtils]: 0: Hoare triple {254#true} ~cond := #in~cond; {254#true} is VALID [2022-04-27 12:48:11,245 INFO L290 TraceCheckUtils]: 1: Hoare triple {254#true} assume !(0 == ~cond); {254#true} is VALID [2022-04-27 12:48:11,245 INFO L290 TraceCheckUtils]: 2: Hoare triple {254#true} assume true; {254#true} is VALID [2022-04-27 12:48:11,246 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {254#true} {259#(= ~counter~0 0)} #66#return; {259#(= ~counter~0 0)} is VALID [2022-04-27 12:48:11,246 INFO L272 TraceCheckUtils]: 0: Hoare triple {254#true} call ULTIMATE.init(); {269#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 12:48:11,247 INFO L290 TraceCheckUtils]: 1: Hoare triple {269#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {259#(= ~counter~0 0)} is VALID [2022-04-27 12:48:11,247 INFO L290 TraceCheckUtils]: 2: Hoare triple {259#(= ~counter~0 0)} assume true; {259#(= ~counter~0 0)} is VALID [2022-04-27 12:48:11,247 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {259#(= ~counter~0 0)} {254#true} #82#return; {259#(= ~counter~0 0)} is VALID [2022-04-27 12:48:11,248 INFO L272 TraceCheckUtils]: 4: Hoare triple {259#(= ~counter~0 0)} call #t~ret7 := main(); {259#(= ~counter~0 0)} is VALID [2022-04-27 12:48:11,248 INFO L290 TraceCheckUtils]: 5: Hoare triple {259#(= ~counter~0 0)} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {259#(= ~counter~0 0)} is VALID [2022-04-27 12:48:11,248 INFO L272 TraceCheckUtils]: 6: Hoare triple {259#(= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {254#true} is VALID [2022-04-27 12:48:11,248 INFO L290 TraceCheckUtils]: 7: Hoare triple {254#true} ~cond := #in~cond; {254#true} is VALID [2022-04-27 12:48:11,249 INFO L290 TraceCheckUtils]: 8: Hoare triple {254#true} assume !(0 == ~cond); {254#true} is VALID [2022-04-27 12:48:11,249 INFO L290 TraceCheckUtils]: 9: Hoare triple {254#true} assume true; {254#true} is VALID [2022-04-27 12:48:11,249 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {254#true} {259#(= ~counter~0 0)} #64#return; {259#(= ~counter~0 0)} is VALID [2022-04-27 12:48:11,249 INFO L272 TraceCheckUtils]: 11: Hoare triple {259#(= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {254#true} is VALID [2022-04-27 12:48:11,249 INFO L290 TraceCheckUtils]: 12: Hoare triple {254#true} ~cond := #in~cond; {254#true} is VALID [2022-04-27 12:48:11,250 INFO L290 TraceCheckUtils]: 13: Hoare triple {254#true} assume !(0 == ~cond); {254#true} is VALID [2022-04-27 12:48:11,250 INFO L290 TraceCheckUtils]: 14: Hoare triple {254#true} assume true; {254#true} is VALID [2022-04-27 12:48:11,252 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {254#true} {259#(= ~counter~0 0)} #66#return; {259#(= ~counter~0 0)} is VALID [2022-04-27 12:48:11,252 INFO L290 TraceCheckUtils]: 16: Hoare triple {259#(= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {259#(= ~counter~0 0)} is VALID [2022-04-27 12:48:11,252 INFO L290 TraceCheckUtils]: 17: Hoare triple {259#(= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {268#(= |main_#t~post6| 0)} is VALID [2022-04-27 12:48:11,253 INFO L290 TraceCheckUtils]: 18: Hoare triple {268#(= |main_#t~post6| 0)} assume !(#t~post6 < 10);havoc #t~post6; {255#false} is VALID [2022-04-27 12:48:11,253 INFO L272 TraceCheckUtils]: 19: Hoare triple {255#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {255#false} is VALID [2022-04-27 12:48:11,253 INFO L290 TraceCheckUtils]: 20: Hoare triple {255#false} ~cond := #in~cond; {255#false} is VALID [2022-04-27 12:48:11,253 INFO L290 TraceCheckUtils]: 21: Hoare triple {255#false} assume 0 == ~cond; {255#false} is VALID [2022-04-27 12:48:11,253 INFO L290 TraceCheckUtils]: 22: Hoare triple {255#false} assume !false; {255#false} is VALID [2022-04-27 12:48:11,254 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 12:48:11,254 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:48:11,254 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1030242083] [2022-04-27 12:48:11,254 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1030242083] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:48:11,254 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:48:11,254 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 12:48:11,254 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1069823102] [2022-04-27 12:48:11,255 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:48:11,256 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-27 12:48:11,256 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:48:11,256 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 12:48:11,269 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 12:48:11,269 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:48:11,269 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:48:11,270 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:48:11,270 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 12:48:11,270 INFO L87 Difference]: Start difference. First operand 30 states and 39 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 12:48:11,432 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:11,432 INFO L93 Difference]: Finished difference Result 42 states and 54 transitions. [2022-04-27 12:48:11,433 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 12:48:11,433 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-27 12:48:11,434 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:48:11,434 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 12:48:11,440 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 54 transitions. [2022-04-27 12:48:11,440 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 12:48:11,442 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 54 transitions. [2022-04-27 12:48:11,443 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 54 transitions. [2022-04-27 12:48:11,487 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 12:48:11,490 INFO L225 Difference]: With dead ends: 42 [2022-04-27 12:48:11,490 INFO L226 Difference]: Without dead ends: 32 [2022-04-27 12:48:11,493 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 8 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-27 12:48:11,495 INFO L413 NwaCegarLoop]: 35 mSDtfsCounter, 13 mSDsluCounter, 30 mSDsCounter, 0 mSdLazyCounter, 55 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 65 SdHoareTripleChecker+Invalid, 69 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 55 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:48:11,496 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [13 Valid, 65 Invalid, 69 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 55 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:48:11,497 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-27 12:48:11,502 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-27 12:48:11,502 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:48:11,503 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 12:48:11,503 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 12:48:11,504 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 12:48:11,508 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:11,508 INFO L93 Difference]: Finished difference Result 32 states and 41 transitions. [2022-04-27 12:48:11,509 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-27 12:48:11,513 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:48:11,514 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:48:11,515 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 32 states. [2022-04-27 12:48:11,516 INFO L87 Difference]: Start difference. First operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 32 states. [2022-04-27 12:48:11,525 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:11,526 INFO L93 Difference]: Finished difference Result 32 states and 41 transitions. [2022-04-27 12:48:11,526 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-27 12:48:11,526 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:48:11,526 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:48:11,526 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:48:11,526 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:48:11,527 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 12:48:11,537 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 41 transitions. [2022-04-27 12:48:11,537 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 41 transitions. Word has length 23 [2022-04-27 12:48:11,537 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:48:11,537 INFO L495 AbstractCegarLoop]: Abstraction has 32 states and 41 transitions. [2022-04-27 12:48:11,538 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 3 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 12:48:11,538 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-27 12:48:11,538 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-27 12:48:11,538 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:48:11,538 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 12:48:11,538 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-27 12:48:11,539 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:48:11,540 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:48:11,540 INFO L85 PathProgramCache]: Analyzing trace with hash 1348211113, now seen corresponding path program 1 times [2022-04-27 12:48:11,540 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:48:11,540 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [406129047] [2022-04-27 12:48:11,540 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:48:11,540 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:48:11,559 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:48:11,560 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1499087097] [2022-04-27 12:48:11,560 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:48:11,560 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:48:11,560 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:48:11,561 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 12:48:11,562 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 12:48:11,605 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:48:11,620 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 12:48:11,628 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:48:11,632 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:48:15,007 INFO L272 TraceCheckUtils]: 0: Hoare triple {452#true} call ULTIMATE.init(); {452#true} is VALID [2022-04-27 12:48:15,008 INFO L290 TraceCheckUtils]: 1: Hoare triple {452#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {452#true} is VALID [2022-04-27 12:48:15,008 INFO L290 TraceCheckUtils]: 2: Hoare triple {452#true} assume true; {452#true} is VALID [2022-04-27 12:48:15,008 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {452#true} {452#true} #82#return; {452#true} is VALID [2022-04-27 12:48:15,008 INFO L272 TraceCheckUtils]: 4: Hoare triple {452#true} call #t~ret7 := main(); {452#true} is VALID [2022-04-27 12:48:15,008 INFO L290 TraceCheckUtils]: 5: Hoare triple {452#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {452#true} is VALID [2022-04-27 12:48:15,008 INFO L272 TraceCheckUtils]: 6: Hoare triple {452#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {452#true} is VALID [2022-04-27 12:48:15,009 INFO L290 TraceCheckUtils]: 7: Hoare triple {452#true} ~cond := #in~cond; {452#true} is VALID [2022-04-27 12:48:15,009 INFO L290 TraceCheckUtils]: 8: Hoare triple {452#true} assume !(0 == ~cond); {452#true} is VALID [2022-04-27 12:48:15,009 INFO L290 TraceCheckUtils]: 9: Hoare triple {452#true} assume true; {452#true} is VALID [2022-04-27 12:48:15,009 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {452#true} {452#true} #64#return; {452#true} is VALID [2022-04-27 12:48:15,009 INFO L272 TraceCheckUtils]: 11: Hoare triple {452#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {452#true} is VALID [2022-04-27 12:48:15,009 INFO L290 TraceCheckUtils]: 12: Hoare triple {452#true} ~cond := #in~cond; {452#true} is VALID [2022-04-27 12:48:15,009 INFO L290 TraceCheckUtils]: 13: Hoare triple {452#true} assume !(0 == ~cond); {452#true} is VALID [2022-04-27 12:48:15,011 INFO L290 TraceCheckUtils]: 14: Hoare triple {452#true} assume true; {452#true} is VALID [2022-04-27 12:48:15,016 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {452#true} {452#true} #66#return; {452#true} is VALID [2022-04-27 12:48:15,017 INFO L290 TraceCheckUtils]: 16: Hoare triple {452#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {505#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-27 12:48:15,017 INFO L290 TraceCheckUtils]: 17: Hoare triple {505#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {505#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-27 12:48:15,018 INFO L290 TraceCheckUtils]: 18: Hoare triple {505#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {505#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} is VALID [2022-04-27 12:48:15,019 INFO L272 TraceCheckUtils]: 19: Hoare triple {505#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {515#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:48:15,019 INFO L290 TraceCheckUtils]: 20: Hoare triple {515#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {519#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:48:15,020 INFO L290 TraceCheckUtils]: 21: Hoare triple {519#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {453#false} is VALID [2022-04-27 12:48:15,020 INFO L290 TraceCheckUtils]: 22: Hoare triple {453#false} assume !false; {453#false} is VALID [2022-04-27 12:48:15,020 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 12:48:15,020 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:48:15,020 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:48:15,020 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [406129047] [2022-04-27 12:48:15,021 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:48:15,021 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1499087097] [2022-04-27 12:48:15,021 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1499087097] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:48:15,021 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:48:15,021 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 12:48:15,021 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1150204833] [2022-04-27 12:48:15,021 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:48:15,022 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 23 [2022-04-27 12:48:15,022 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:48:15,022 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 12:48:15,036 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 12:48:15,036 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:48:15,037 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:48:15,037 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:48:15,037 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 12:48:15,037 INFO L87 Difference]: Start difference. First operand 32 states and 41 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 12:48:15,220 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:15,220 INFO L93 Difference]: Finished difference Result 49 states and 66 transitions. [2022-04-27 12:48:15,220 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:48:15,220 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 23 [2022-04-27 12:48:15,220 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:48:15,221 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 12:48:15,222 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-04-27 12:48:15,223 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 12:48:15,225 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-04-27 12:48:15,225 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 64 transitions. [2022-04-27 12:48:15,273 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:48:15,276 INFO L225 Difference]: With dead ends: 49 [2022-04-27 12:48:15,276 INFO L226 Difference]: Without dead ends: 47 [2022-04-27 12:48:15,277 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-27 12:48:15,279 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 8 mSDsluCounter, 94 mSDsCounter, 0 mSdLazyCounter, 42 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 134 SdHoareTripleChecker+Invalid, 44 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 42 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:48:15,280 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [14 Valid, 134 Invalid, 44 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 42 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:48:15,281 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states. [2022-04-27 12:48:15,291 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 46. [2022-04-27 12:48:15,291 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:48:15,291 INFO L82 GeneralOperation]: Start isEquivalent. First operand 47 states. Second operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-27 12:48:15,291 INFO L74 IsIncluded]: Start isIncluded. First operand 47 states. Second operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-27 12:48:15,292 INFO L87 Difference]: Start difference. First operand 47 states. Second operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-27 12:48:15,293 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:15,294 INFO L93 Difference]: Finished difference Result 47 states and 64 transitions. [2022-04-27 12:48:15,294 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 64 transitions. [2022-04-27 12:48:15,294 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:48:15,294 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:48:15,294 INFO L74 IsIncluded]: Start isIncluded. First operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 47 states. [2022-04-27 12:48:15,295 INFO L87 Difference]: Start difference. First operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 47 states. [2022-04-27 12:48:15,296 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:15,296 INFO L93 Difference]: Finished difference Result 47 states and 64 transitions. [2022-04-27 12:48:15,296 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 64 transitions. [2022-04-27 12:48:15,297 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:48:15,297 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:48:15,297 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:48:15,297 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:48:15,297 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 26 states have internal predecessors, (31), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-27 12:48:15,299 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 63 transitions. [2022-04-27 12:48:15,299 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 63 transitions. Word has length 23 [2022-04-27 12:48:15,299 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:48:15,299 INFO L495 AbstractCegarLoop]: Abstraction has 46 states and 63 transitions. [2022-04-27 12:48:15,299 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 12:48:15,299 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 63 transitions. [2022-04-27 12:48:15,299 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-27 12:48:15,300 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:48:15,300 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:48:15,319 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 12:48:15,516 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:48:15,516 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:48:15,517 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:48:15,517 INFO L85 PathProgramCache]: Analyzing trace with hash -1060153012, now seen corresponding path program 1 times [2022-04-27 12:48:15,517 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:48:15,517 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1719758136] [2022-04-27 12:48:15,517 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:48:15,517 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:48:15,529 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:48:15,530 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2066344204] [2022-04-27 12:48:15,530 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:48:15,530 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:48:15,530 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:48:15,535 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 12:48:15,536 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 12:48:15,574 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:48:15,575 INFO L263 TraceCheckSpWp]: Trace formula consists of 108 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-27 12:48:15,582 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:48:15,584 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:48:15,797 INFO L272 TraceCheckUtils]: 0: Hoare triple {767#true} call ULTIMATE.init(); {767#true} is VALID [2022-04-27 12:48:15,798 INFO L290 TraceCheckUtils]: 1: Hoare triple {767#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {767#true} is VALID [2022-04-27 12:48:15,798 INFO L290 TraceCheckUtils]: 2: Hoare triple {767#true} assume true; {767#true} is VALID [2022-04-27 12:48:15,798 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {767#true} {767#true} #82#return; {767#true} is VALID [2022-04-27 12:48:15,798 INFO L272 TraceCheckUtils]: 4: Hoare triple {767#true} call #t~ret7 := main(); {767#true} is VALID [2022-04-27 12:48:15,799 INFO L290 TraceCheckUtils]: 5: Hoare triple {767#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {767#true} is VALID [2022-04-27 12:48:15,799 INFO L272 TraceCheckUtils]: 6: Hoare triple {767#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {767#true} is VALID [2022-04-27 12:48:15,799 INFO L290 TraceCheckUtils]: 7: Hoare triple {767#true} ~cond := #in~cond; {793#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:48:15,799 INFO L290 TraceCheckUtils]: 8: Hoare triple {793#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {797#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:48:15,800 INFO L290 TraceCheckUtils]: 9: Hoare triple {797#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {797#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:48:15,800 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {797#(not (= |assume_abort_if_not_#in~cond| 0))} {767#true} #64#return; {804#(<= 1 main_~x~0)} is VALID [2022-04-27 12:48:15,802 INFO L272 TraceCheckUtils]: 11: Hoare triple {804#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {767#true} is VALID [2022-04-27 12:48:15,802 INFO L290 TraceCheckUtils]: 12: Hoare triple {767#true} ~cond := #in~cond; {767#true} is VALID [2022-04-27 12:48:15,802 INFO L290 TraceCheckUtils]: 13: Hoare triple {767#true} assume !(0 == ~cond); {767#true} is VALID [2022-04-27 12:48:15,802 INFO L290 TraceCheckUtils]: 14: Hoare triple {767#true} assume true; {767#true} is VALID [2022-04-27 12:48:15,803 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {767#true} {804#(<= 1 main_~x~0)} #66#return; {804#(<= 1 main_~x~0)} is VALID [2022-04-27 12:48:15,803 INFO L290 TraceCheckUtils]: 16: Hoare triple {804#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {823#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:48:15,804 INFO L290 TraceCheckUtils]: 17: Hoare triple {823#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {823#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:48:15,805 INFO L290 TraceCheckUtils]: 18: Hoare triple {823#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {823#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:48:15,805 INFO L272 TraceCheckUtils]: 19: Hoare triple {823#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {767#true} is VALID [2022-04-27 12:48:15,805 INFO L290 TraceCheckUtils]: 20: Hoare triple {767#true} ~cond := #in~cond; {767#true} is VALID [2022-04-27 12:48:15,805 INFO L290 TraceCheckUtils]: 21: Hoare triple {767#true} assume !(0 == ~cond); {767#true} is VALID [2022-04-27 12:48:15,806 INFO L290 TraceCheckUtils]: 22: Hoare triple {767#true} assume true; {767#true} is VALID [2022-04-27 12:48:15,806 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {767#true} {823#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #68#return; {823#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:48:15,808 INFO L272 TraceCheckUtils]: 24: Hoare triple {823#(and (= main_~r~0 0) (<= 1 main_~x~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)); {848#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:48:15,808 INFO L290 TraceCheckUtils]: 25: Hoare triple {848#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {852#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:48:15,809 INFO L290 TraceCheckUtils]: 26: Hoare triple {852#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {768#false} is VALID [2022-04-27 12:48:15,810 INFO L290 TraceCheckUtils]: 27: Hoare triple {768#false} assume !false; {768#false} is VALID [2022-04-27 12:48:15,810 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 3 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-27 12:48:15,810 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:48:47,035 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:48:47,036 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1719758136] [2022-04-27 12:48:47,036 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:48:47,037 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2066344204] [2022-04-27 12:48:47,037 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2066344204] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 12:48:47,037 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 12:48:47,037 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8] total 8 [2022-04-27 12:48:47,037 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [908219868] [2022-04-27 12:48:47,038 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 12:48:47,038 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) Word has length 28 [2022-04-27 12:48:47,038 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:48:47,039 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 12:48:47,062 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:48:47,062 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-27 12:48:47,063 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:48:47,063 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-27 12:48:47,063 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-27 12:48:47,063 INFO L87 Difference]: Start difference. First operand 46 states and 63 transitions. Second operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 12:48:47,507 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:47,507 INFO L93 Difference]: Finished difference Result 53 states and 69 transitions. [2022-04-27 12:48:47,507 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-27 12:48:47,507 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) Word has length 28 [2022-04-27 12:48:47,508 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:48:47,508 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 12:48:47,509 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 64 transitions. [2022-04-27 12:48:47,509 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 12:48:47,510 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 64 transitions. [2022-04-27 12:48:47,510 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 64 transitions. [2022-04-27 12:48:47,570 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:48:47,571 INFO L225 Difference]: With dead ends: 53 [2022-04-27 12:48:47,572 INFO L226 Difference]: Without dead ends: 51 [2022-04-27 12:48:47,572 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 34 GetRequests, 24 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-27 12:48:47,572 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 21 mSDsluCounter, 145 mSDsCounter, 0 mSdLazyCounter, 130 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 185 SdHoareTripleChecker+Invalid, 132 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 130 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:48:47,573 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [32 Valid, 185 Invalid, 132 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 130 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:48:47,573 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2022-04-27 12:48:47,586 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 50. [2022-04-27 12:48:47,586 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:48:47,587 INFO L82 GeneralOperation]: Start isEquivalent. First operand 51 states. Second operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-27 12:48:47,587 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-27 12:48:47,587 INFO L87 Difference]: Start difference. First operand 51 states. Second operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-27 12:48:47,589 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:47,589 INFO L93 Difference]: Finished difference Result 51 states and 67 transitions. [2022-04-27 12:48:47,589 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 67 transitions. [2022-04-27 12:48:47,589 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:48:47,590 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:48:47,590 INFO L74 IsIncluded]: Start isIncluded. First operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 51 states. [2022-04-27 12:48:47,590 INFO L87 Difference]: Start difference. First operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 51 states. [2022-04-27 12:48:47,592 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:47,592 INFO L93 Difference]: Finished difference Result 51 states and 67 transitions. [2022-04-27 12:48:47,592 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 67 transitions. [2022-04-27 12:48:47,592 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:48:47,592 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:48:47,592 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:48:47,592 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:48:47,593 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 29 states have internal predecessors, (34), 17 states have call successors, (17), 6 states have call predecessors, (17), 5 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-27 12:48:47,594 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 66 transitions. [2022-04-27 12:48:47,594 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 66 transitions. Word has length 28 [2022-04-27 12:48:47,594 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:48:47,595 INFO L495 AbstractCegarLoop]: Abstraction has 50 states and 66 transitions. [2022-04-27 12:48:47,595 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 12:48:47,595 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 66 transitions. [2022-04-27 12:48:47,595 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-27 12:48:47,595 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:48:47,595 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] [2022-04-27 12:48:47,615 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-27 12:48:47,813 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,SelfDestructingSolverStorable3 [2022-04-27 12:48:47,813 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:48:47,813 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:48:47,814 INFO L85 PathProgramCache]: Analyzing trace with hash -560761015, now seen corresponding path program 1 times [2022-04-27 12:48:47,814 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:48:47,814 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1298393020] [2022-04-27 12:48:47,814 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:48:47,814 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:48:47,825 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:48:47,826 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [494066551] [2022-04-27 12:48:47,826 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:48:47,826 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:48:47,826 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:48:47,839 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 12:48:47,840 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 12:48:47,878 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:48:47,879 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-27 12:48:47,894 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:48:47,895 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:48:48,092 INFO L272 TraceCheckUtils]: 0: Hoare triple {1136#true} call ULTIMATE.init(); {1136#true} is VALID [2022-04-27 12:48:48,092 INFO L290 TraceCheckUtils]: 1: Hoare triple {1136#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1136#true} is VALID [2022-04-27 12:48:48,092 INFO L290 TraceCheckUtils]: 2: Hoare triple {1136#true} assume true; {1136#true} is VALID [2022-04-27 12:48:48,093 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1136#true} {1136#true} #82#return; {1136#true} is VALID [2022-04-27 12:48:48,093 INFO L272 TraceCheckUtils]: 4: Hoare triple {1136#true} call #t~ret7 := main(); {1136#true} is VALID [2022-04-27 12:48:48,093 INFO L290 TraceCheckUtils]: 5: Hoare triple {1136#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1136#true} is VALID [2022-04-27 12:48:48,093 INFO L272 TraceCheckUtils]: 6: Hoare triple {1136#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1136#true} is VALID [2022-04-27 12:48:48,093 INFO L290 TraceCheckUtils]: 7: Hoare triple {1136#true} ~cond := #in~cond; {1162#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:48:48,094 INFO L290 TraceCheckUtils]: 8: Hoare triple {1162#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1166#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:48:48,094 INFO L290 TraceCheckUtils]: 9: Hoare triple {1166#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1166#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:48:48,095 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1166#(not (= |assume_abort_if_not_#in~cond| 0))} {1136#true} #64#return; {1173#(<= 1 main_~x~0)} is VALID [2022-04-27 12:48:48,095 INFO L272 TraceCheckUtils]: 11: Hoare triple {1173#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1136#true} is VALID [2022-04-27 12:48:48,095 INFO L290 TraceCheckUtils]: 12: Hoare triple {1136#true} ~cond := #in~cond; {1136#true} is VALID [2022-04-27 12:48:48,095 INFO L290 TraceCheckUtils]: 13: Hoare triple {1136#true} assume !(0 == ~cond); {1136#true} is VALID [2022-04-27 12:48:48,095 INFO L290 TraceCheckUtils]: 14: Hoare triple {1136#true} assume true; {1136#true} is VALID [2022-04-27 12:48:48,112 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1136#true} {1173#(<= 1 main_~x~0)} #66#return; {1173#(<= 1 main_~x~0)} is VALID [2022-04-27 12:48:48,112 INFO L290 TraceCheckUtils]: 16: Hoare triple {1173#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1192#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:48:48,113 INFO L290 TraceCheckUtils]: 17: Hoare triple {1192#(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; {1192#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:48:48,113 INFO L290 TraceCheckUtils]: 18: Hoare triple {1192#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post6 < 10);havoc #t~post6; {1192#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:48:48,113 INFO L272 TraceCheckUtils]: 19: Hoare triple {1192#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {1136#true} is VALID [2022-04-27 12:48:48,113 INFO L290 TraceCheckUtils]: 20: Hoare triple {1136#true} ~cond := #in~cond; {1136#true} is VALID [2022-04-27 12:48:48,114 INFO L290 TraceCheckUtils]: 21: Hoare triple {1136#true} assume !(0 == ~cond); {1136#true} is VALID [2022-04-27 12:48:48,114 INFO L290 TraceCheckUtils]: 22: Hoare triple {1136#true} assume true; {1136#true} is VALID [2022-04-27 12:48:48,114 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1136#true} {1192#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #68#return; {1192#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:48:48,114 INFO L272 TraceCheckUtils]: 24: Hoare triple {1192#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1136#true} is VALID [2022-04-27 12:48:48,114 INFO L290 TraceCheckUtils]: 25: Hoare triple {1136#true} ~cond := #in~cond; {1136#true} is VALID [2022-04-27 12:48:48,115 INFO L290 TraceCheckUtils]: 26: Hoare triple {1136#true} assume !(0 == ~cond); {1136#true} is VALID [2022-04-27 12:48:48,115 INFO L290 TraceCheckUtils]: 27: Hoare triple {1136#true} assume true; {1136#true} is VALID [2022-04-27 12:48:48,115 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1136#true} {1192#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #70#return; {1192#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:48:48,116 INFO L272 TraceCheckUtils]: 29: Hoare triple {1192#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {1232#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:48:48,116 INFO L290 TraceCheckUtils]: 30: Hoare triple {1232#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1236#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:48:48,116 INFO L290 TraceCheckUtils]: 31: Hoare triple {1236#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1137#false} is VALID [2022-04-27 12:48:48,117 INFO L290 TraceCheckUtils]: 32: Hoare triple {1137#false} assume !false; {1137#false} is VALID [2022-04-27 12:48:48,117 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 3 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-27 12:48:48,117 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:48:48,270 INFO L290 TraceCheckUtils]: 32: Hoare triple {1137#false} assume !false; {1137#false} is VALID [2022-04-27 12:48:48,270 INFO L290 TraceCheckUtils]: 31: Hoare triple {1236#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1137#false} is VALID [2022-04-27 12:48:48,271 INFO L290 TraceCheckUtils]: 30: Hoare triple {1232#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1236#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:48:48,271 INFO L272 TraceCheckUtils]: 29: Hoare triple {1252#(= 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)); {1232#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:48:48,272 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1136#true} {1252#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #70#return; {1252#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:48:48,272 INFO L290 TraceCheckUtils]: 27: Hoare triple {1136#true} assume true; {1136#true} is VALID [2022-04-27 12:48:48,272 INFO L290 TraceCheckUtils]: 26: Hoare triple {1136#true} assume !(0 == ~cond); {1136#true} is VALID [2022-04-27 12:48:48,272 INFO L290 TraceCheckUtils]: 25: Hoare triple {1136#true} ~cond := #in~cond; {1136#true} is VALID [2022-04-27 12:48:48,272 INFO L272 TraceCheckUtils]: 24: Hoare triple {1252#(= 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)); {1136#true} is VALID [2022-04-27 12:48:48,273 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1136#true} {1252#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #68#return; {1252#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:48:48,273 INFO L290 TraceCheckUtils]: 22: Hoare triple {1136#true} assume true; {1136#true} is VALID [2022-04-27 12:48:48,273 INFO L290 TraceCheckUtils]: 21: Hoare triple {1136#true} assume !(0 == ~cond); {1136#true} is VALID [2022-04-27 12:48:48,273 INFO L290 TraceCheckUtils]: 20: Hoare triple {1136#true} ~cond := #in~cond; {1136#true} is VALID [2022-04-27 12:48:48,273 INFO L272 TraceCheckUtils]: 19: Hoare triple {1252#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {1136#true} is VALID [2022-04-27 12:48:48,274 INFO L290 TraceCheckUtils]: 18: Hoare triple {1252#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {1252#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:48:48,274 INFO L290 TraceCheckUtils]: 17: Hoare triple {1252#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1252#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:48:48,274 INFO L290 TraceCheckUtils]: 16: Hoare triple {1136#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1252#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:48:48,274 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1136#true} {1136#true} #66#return; {1136#true} is VALID [2022-04-27 12:48:48,275 INFO L290 TraceCheckUtils]: 14: Hoare triple {1136#true} assume true; {1136#true} is VALID [2022-04-27 12:48:48,275 INFO L290 TraceCheckUtils]: 13: Hoare triple {1136#true} assume !(0 == ~cond); {1136#true} is VALID [2022-04-27 12:48:48,275 INFO L290 TraceCheckUtils]: 12: Hoare triple {1136#true} ~cond := #in~cond; {1136#true} is VALID [2022-04-27 12:48:48,275 INFO L272 TraceCheckUtils]: 11: Hoare triple {1136#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1136#true} is VALID [2022-04-27 12:48:48,275 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1136#true} {1136#true} #64#return; {1136#true} is VALID [2022-04-27 12:48:48,275 INFO L290 TraceCheckUtils]: 9: Hoare triple {1136#true} assume true; {1136#true} is VALID [2022-04-27 12:48:48,275 INFO L290 TraceCheckUtils]: 8: Hoare triple {1136#true} assume !(0 == ~cond); {1136#true} is VALID [2022-04-27 12:48:48,275 INFO L290 TraceCheckUtils]: 7: Hoare triple {1136#true} ~cond := #in~cond; {1136#true} is VALID [2022-04-27 12:48:48,275 INFO L272 TraceCheckUtils]: 6: Hoare triple {1136#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1136#true} is VALID [2022-04-27 12:48:48,275 INFO L290 TraceCheckUtils]: 5: Hoare triple {1136#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1136#true} is VALID [2022-04-27 12:48:48,276 INFO L272 TraceCheckUtils]: 4: Hoare triple {1136#true} call #t~ret7 := main(); {1136#true} is VALID [2022-04-27 12:48:48,276 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1136#true} {1136#true} #82#return; {1136#true} is VALID [2022-04-27 12:48:48,276 INFO L290 TraceCheckUtils]: 2: Hoare triple {1136#true} assume true; {1136#true} is VALID [2022-04-27 12:48:48,276 INFO L290 TraceCheckUtils]: 1: Hoare triple {1136#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1136#true} is VALID [2022-04-27 12:48:48,276 INFO L272 TraceCheckUtils]: 0: Hoare triple {1136#true} call ULTIMATE.init(); {1136#true} is VALID [2022-04-27 12:48:48,276 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 12:48:48,276 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:48:48,276 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1298393020] [2022-04-27 12:48:48,276 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:48:48,276 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [494066551] [2022-04-27 12:48:48,277 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [494066551] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-27 12:48:48,277 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 12:48:48,277 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [8] total 9 [2022-04-27 12:48:48,277 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1313442679] [2022-04-27 12:48:48,277 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:48:48,277 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-27 12:48:48,278 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:48:48,278 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:48:48,294 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:48:48,295 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:48:48,295 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:48:48,295 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:48:48,295 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-27 12:48:48,295 INFO L87 Difference]: Start difference. First operand 50 states and 66 transitions. Second operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:48:48,533 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:48,534 INFO L93 Difference]: Finished difference Result 75 states and 107 transitions. [2022-04-27 12:48:48,534 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:48:48,534 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-27 12:48:48,534 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:48:48,534 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:48:48,536 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-04-27 12:48:48,536 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:48:48,537 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-04-27 12:48:48,537 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 64 transitions. [2022-04-27 12:48:48,583 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:48:48,585 INFO L225 Difference]: With dead ends: 75 [2022-04-27 12:48:48,585 INFO L226 Difference]: Without dead ends: 71 [2022-04-27 12:48:48,585 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 66 GetRequests, 57 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-27 12:48:48,586 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 9 mSDsluCounter, 87 mSDsCounter, 0 mSdLazyCounter, 51 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 128 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 51 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:48:48,586 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [13 Valid, 128 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 51 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:48:48,586 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-04-27 12:48:48,609 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 71. [2022-04-27 12:48:48,609 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:48:48,610 INFO L82 GeneralOperation]: Start isEquivalent. First operand 71 states. Second operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-27 12:48:48,610 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-27 12:48:48,610 INFO L87 Difference]: Start difference. First operand 71 states. Second operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-27 12:48:48,613 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:48,613 INFO L93 Difference]: Finished difference Result 71 states and 100 transitions. [2022-04-27 12:48:48,613 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 100 transitions. [2022-04-27 12:48:48,613 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:48:48,613 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:48:48,614 INFO L74 IsIncluded]: Start isIncluded. First operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) Second operand 71 states. [2022-04-27 12:48:48,614 INFO L87 Difference]: Start difference. First operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) Second operand 71 states. [2022-04-27 12:48:48,616 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:48,616 INFO L93 Difference]: Finished difference Result 71 states and 100 transitions. [2022-04-27 12:48:48,616 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 100 transitions. [2022-04-27 12:48:48,617 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:48:48,617 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:48:48,617 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:48:48,617 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:48:48,617 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 71 states, 36 states have (on average 1.3333333333333333) internal successors, (48), 40 states have internal predecessors, (48), 28 states have call successors, (28), 7 states have call predecessors, (28), 6 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-27 12:48:48,619 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 100 transitions. [2022-04-27 12:48:48,619 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 100 transitions. Word has length 33 [2022-04-27 12:48:48,620 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:48:48,620 INFO L495 AbstractCegarLoop]: Abstraction has 71 states and 100 transitions. [2022-04-27 12:48:48,620 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:48:48,620 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 100 transitions. [2022-04-27 12:48:48,620 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-27 12:48:48,620 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:48:48,620 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] [2022-04-27 12:48:48,639 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 12:48:48,835 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:48:48,836 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:48:48,836 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:48:48,836 INFO L85 PathProgramCache]: Analyzing trace with hash 201438379, now seen corresponding path program 1 times [2022-04-27 12:48:48,836 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:48:48,836 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [592419233] [2022-04-27 12:48:48,836 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:48:48,837 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:48:48,848 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:48:48,849 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1796310105] [2022-04-27 12:48:48,849 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:48:48,849 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:48:48,849 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:48:48,850 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 12:48:48,865 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 12:48:48,907 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:48:48,908 INFO L263 TraceCheckSpWp]: Trace formula consists of 128 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-27 12:48:48,916 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:48:48,917 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:48:49,013 INFO L272 TraceCheckUtils]: 0: Hoare triple {1712#true} call ULTIMATE.init(); {1712#true} is VALID [2022-04-27 12:48:49,014 INFO L290 TraceCheckUtils]: 1: Hoare triple {1712#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1712#true} is VALID [2022-04-27 12:48:49,014 INFO L290 TraceCheckUtils]: 2: Hoare triple {1712#true} assume true; {1712#true} is VALID [2022-04-27 12:48:49,014 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1712#true} {1712#true} #82#return; {1712#true} is VALID [2022-04-27 12:48:49,014 INFO L272 TraceCheckUtils]: 4: Hoare triple {1712#true} call #t~ret7 := main(); {1712#true} is VALID [2022-04-27 12:48:49,014 INFO L290 TraceCheckUtils]: 5: Hoare triple {1712#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1712#true} is VALID [2022-04-27 12:48:49,014 INFO L272 TraceCheckUtils]: 6: Hoare triple {1712#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1712#true} is VALID [2022-04-27 12:48:49,014 INFO L290 TraceCheckUtils]: 7: Hoare triple {1712#true} ~cond := #in~cond; {1712#true} is VALID [2022-04-27 12:48:49,015 INFO L290 TraceCheckUtils]: 8: Hoare triple {1712#true} assume !(0 == ~cond); {1712#true} is VALID [2022-04-27 12:48:49,015 INFO L290 TraceCheckUtils]: 9: Hoare triple {1712#true} assume true; {1712#true} is VALID [2022-04-27 12:48:49,015 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1712#true} {1712#true} #64#return; {1712#true} is VALID [2022-04-27 12:48:49,015 INFO L272 TraceCheckUtils]: 11: Hoare triple {1712#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1712#true} is VALID [2022-04-27 12:48:49,015 INFO L290 TraceCheckUtils]: 12: Hoare triple {1712#true} ~cond := #in~cond; {1712#true} is VALID [2022-04-27 12:48:49,015 INFO L290 TraceCheckUtils]: 13: Hoare triple {1712#true} assume !(0 == ~cond); {1712#true} is VALID [2022-04-27 12:48:49,015 INFO L290 TraceCheckUtils]: 14: Hoare triple {1712#true} assume true; {1712#true} is VALID [2022-04-27 12:48:49,015 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1712#true} {1712#true} #66#return; {1712#true} is VALID [2022-04-27 12:48:49,015 INFO L290 TraceCheckUtils]: 16: Hoare triple {1712#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1712#true} is VALID [2022-04-27 12:48:49,015 INFO L290 TraceCheckUtils]: 17: Hoare triple {1712#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1712#true} is VALID [2022-04-27 12:48:49,016 INFO L290 TraceCheckUtils]: 18: Hoare triple {1712#true} assume !!(#t~post6 < 10);havoc #t~post6; {1712#true} is VALID [2022-04-27 12:48:49,016 INFO L272 TraceCheckUtils]: 19: Hoare triple {1712#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {1712#true} is VALID [2022-04-27 12:48:49,016 INFO L290 TraceCheckUtils]: 20: Hoare triple {1712#true} ~cond := #in~cond; {1712#true} is VALID [2022-04-27 12:48:49,016 INFO L290 TraceCheckUtils]: 21: Hoare triple {1712#true} assume !(0 == ~cond); {1712#true} is VALID [2022-04-27 12:48:49,016 INFO L290 TraceCheckUtils]: 22: Hoare triple {1712#true} assume true; {1712#true} is VALID [2022-04-27 12:48:49,016 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1712#true} {1712#true} #68#return; {1712#true} is VALID [2022-04-27 12:48:49,016 INFO L272 TraceCheckUtils]: 24: Hoare triple {1712#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1712#true} is VALID [2022-04-27 12:48:49,016 INFO L290 TraceCheckUtils]: 25: Hoare triple {1712#true} ~cond := #in~cond; {1712#true} is VALID [2022-04-27 12:48:49,016 INFO L290 TraceCheckUtils]: 26: Hoare triple {1712#true} assume !(0 == ~cond); {1712#true} is VALID [2022-04-27 12:48:49,016 INFO L290 TraceCheckUtils]: 27: Hoare triple {1712#true} assume true; {1712#true} is VALID [2022-04-27 12:48:49,017 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1712#true} {1712#true} #70#return; {1712#true} is VALID [2022-04-27 12:48:49,017 INFO L272 TraceCheckUtils]: 29: Hoare triple {1712#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {1712#true} is VALID [2022-04-27 12:48:49,017 INFO L290 TraceCheckUtils]: 30: Hoare triple {1712#true} ~cond := #in~cond; {1712#true} is VALID [2022-04-27 12:48:49,017 INFO L290 TraceCheckUtils]: 31: Hoare triple {1712#true} assume !(0 == ~cond); {1712#true} is VALID [2022-04-27 12:48:49,017 INFO L290 TraceCheckUtils]: 32: Hoare triple {1712#true} assume true; {1712#true} is VALID [2022-04-27 12:48:49,017 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1712#true} {1712#true} #72#return; {1712#true} is VALID [2022-04-27 12:48:49,018 INFO L290 TraceCheckUtils]: 34: Hoare triple {1712#true} assume !(~a~0 != ~b~0); {1819#(= main_~b~0 main_~a~0)} is VALID [2022-04-27 12:48:49,018 INFO L272 TraceCheckUtils]: 35: Hoare triple {1819#(= main_~b~0 main_~a~0)} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {1823#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:48:49,019 INFO L290 TraceCheckUtils]: 36: Hoare triple {1823#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1827#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:48:49,019 INFO L290 TraceCheckUtils]: 37: Hoare triple {1827#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1713#false} is VALID [2022-04-27 12:48:49,019 INFO L290 TraceCheckUtils]: 38: Hoare triple {1713#false} assume !false; {1713#false} is VALID [2022-04-27 12:48:49,019 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 12:48:49,019 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:48:49,020 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:48:49,020 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [592419233] [2022-04-27 12:48:49,020 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:48:49,020 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1796310105] [2022-04-27 12:48:49,020 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1796310105] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:48:49,020 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:48:49,020 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 12:48:49,020 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [810891055] [2022-04-27 12:48:49,020 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:48:49,021 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 39 [2022-04-27 12:48:49,021 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:48:49,021 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-27 12:48:49,043 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:48:49,043 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:48:49,043 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:48:49,044 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:48:49,044 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 12:48:49,044 INFO L87 Difference]: Start difference. First operand 71 states and 100 transitions. Second operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-27 12:48:49,215 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:49,216 INFO L93 Difference]: Finished difference Result 87 states and 123 transitions. [2022-04-27 12:48:49,216 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:48:49,216 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 39 [2022-04-27 12:48:49,216 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:48:49,216 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-27 12:48:49,217 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 51 transitions. [2022-04-27 12:48:49,217 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-27 12:48:49,218 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 51 transitions. [2022-04-27 12:48:49,218 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 51 transitions. [2022-04-27 12:48:49,263 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:48:49,265 INFO L225 Difference]: With dead ends: 87 [2022-04-27 12:48:49,265 INFO L226 Difference]: Without dead ends: 85 [2022-04-27 12:48:49,266 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 12:48:49,267 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 5 mSDsluCounter, 100 mSDsCounter, 0 mSdLazyCounter, 34 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 144 SdHoareTripleChecker+Invalid, 34 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 34 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:48:49,267 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 144 Invalid, 34 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 34 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:48:49,268 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 85 states. [2022-04-27 12:48:49,295 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 85 to 78. [2022-04-27 12:48:49,296 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:48:49,296 INFO L82 GeneralOperation]: Start isEquivalent. First operand 85 states. Second operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-27 12:48:49,296 INFO L74 IsIncluded]: Start isIncluded. First operand 85 states. Second operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-27 12:48:49,297 INFO L87 Difference]: Start difference. First operand 85 states. Second operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-27 12:48:49,300 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:49,301 INFO L93 Difference]: Finished difference Result 85 states and 121 transitions. [2022-04-27 12:48:49,301 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 121 transitions. [2022-04-27 12:48:49,301 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:48:49,301 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:48:49,302 INFO L74 IsIncluded]: Start isIncluded. First operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) Second operand 85 states. [2022-04-27 12:48:49,302 INFO L87 Difference]: Start difference. First operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) Second operand 85 states. [2022-04-27 12:48:49,305 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:49,305 INFO L93 Difference]: Finished difference Result 85 states and 121 transitions. [2022-04-27 12:48:49,306 INFO L276 IsEmpty]: Start isEmpty. Operand 85 states and 121 transitions. [2022-04-27 12:48:49,306 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:48:49,306 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:48:49,306 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:48:49,306 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:48:49,307 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 78 states, 39 states have (on average 1.3076923076923077) internal successors, (51), 46 states have internal predecessors, (51), 31 states have call successors, (31), 8 states have call predecessors, (31), 7 states have return successors, (27), 23 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-27 12:48:49,309 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 109 transitions. [2022-04-27 12:48:49,310 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 109 transitions. Word has length 39 [2022-04-27 12:48:49,310 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:48:49,310 INFO L495 AbstractCegarLoop]: Abstraction has 78 states and 109 transitions. [2022-04-27 12:48:49,310 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-27 12:48:49,310 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 109 transitions. [2022-04-27 12:48:49,311 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-27 12:48:49,311 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:48:49,311 INFO L195 NwaCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:48:49,334 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 12:48:49,531 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:48:49,532 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:48:49,532 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:48:49,532 INFO L85 PathProgramCache]: Analyzing trace with hash -1085077998, now seen corresponding path program 1 times [2022-04-27 12:48:49,532 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:48:49,532 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [381926631] [2022-04-27 12:48:49,532 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:48:49,533 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:48:49,558 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:48:49,559 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1597470204] [2022-04-27 12:48:49,559 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:48:49,559 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:48:49,559 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:48:49,560 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 12:48:49,598 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 12:48:49,615 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:48:49,616 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 12:48:49,628 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:48:49,630 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:48:49,829 INFO L272 TraceCheckUtils]: 0: Hoare triple {2263#true} call ULTIMATE.init(); {2263#true} is VALID [2022-04-27 12:48:49,830 INFO L290 TraceCheckUtils]: 1: Hoare triple {2263#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2271#(<= ~counter~0 0)} is VALID [2022-04-27 12:48:49,830 INFO L290 TraceCheckUtils]: 2: Hoare triple {2271#(<= ~counter~0 0)} assume true; {2271#(<= ~counter~0 0)} is VALID [2022-04-27 12:48:49,830 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2271#(<= ~counter~0 0)} {2263#true} #82#return; {2271#(<= ~counter~0 0)} is VALID [2022-04-27 12:48:49,831 INFO L272 TraceCheckUtils]: 4: Hoare triple {2271#(<= ~counter~0 0)} call #t~ret7 := main(); {2271#(<= ~counter~0 0)} is VALID [2022-04-27 12:48:49,831 INFO L290 TraceCheckUtils]: 5: Hoare triple {2271#(<= ~counter~0 0)} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2271#(<= ~counter~0 0)} is VALID [2022-04-27 12:48:49,832 INFO L272 TraceCheckUtils]: 6: Hoare triple {2271#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2271#(<= ~counter~0 0)} is VALID [2022-04-27 12:48:49,832 INFO L290 TraceCheckUtils]: 7: Hoare triple {2271#(<= ~counter~0 0)} ~cond := #in~cond; {2271#(<= ~counter~0 0)} is VALID [2022-04-27 12:48:49,832 INFO L290 TraceCheckUtils]: 8: Hoare triple {2271#(<= ~counter~0 0)} assume !(0 == ~cond); {2271#(<= ~counter~0 0)} is VALID [2022-04-27 12:48:49,833 INFO L290 TraceCheckUtils]: 9: Hoare triple {2271#(<= ~counter~0 0)} assume true; {2271#(<= ~counter~0 0)} is VALID [2022-04-27 12:48:49,833 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2271#(<= ~counter~0 0)} {2271#(<= ~counter~0 0)} #64#return; {2271#(<= ~counter~0 0)} is VALID [2022-04-27 12:48:49,834 INFO L272 TraceCheckUtils]: 11: Hoare triple {2271#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2271#(<= ~counter~0 0)} is VALID [2022-04-27 12:48:49,834 INFO L290 TraceCheckUtils]: 12: Hoare triple {2271#(<= ~counter~0 0)} ~cond := #in~cond; {2271#(<= ~counter~0 0)} is VALID [2022-04-27 12:48:49,834 INFO L290 TraceCheckUtils]: 13: Hoare triple {2271#(<= ~counter~0 0)} assume !(0 == ~cond); {2271#(<= ~counter~0 0)} is VALID [2022-04-27 12:48:49,835 INFO L290 TraceCheckUtils]: 14: Hoare triple {2271#(<= ~counter~0 0)} assume true; {2271#(<= ~counter~0 0)} is VALID [2022-04-27 12:48:49,835 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2271#(<= ~counter~0 0)} {2271#(<= ~counter~0 0)} #66#return; {2271#(<= ~counter~0 0)} is VALID [2022-04-27 12:48:49,835 INFO L290 TraceCheckUtils]: 16: Hoare triple {2271#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2271#(<= ~counter~0 0)} is VALID [2022-04-27 12:48:49,836 INFO L290 TraceCheckUtils]: 17: Hoare triple {2271#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2320#(<= ~counter~0 1)} is VALID [2022-04-27 12:48:49,836 INFO L290 TraceCheckUtils]: 18: Hoare triple {2320#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {2320#(<= ~counter~0 1)} is VALID [2022-04-27 12:48:49,837 INFO L272 TraceCheckUtils]: 19: Hoare triple {2320#(<= ~counter~0 1)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {2320#(<= ~counter~0 1)} is VALID [2022-04-27 12:48:49,837 INFO L290 TraceCheckUtils]: 20: Hoare triple {2320#(<= ~counter~0 1)} ~cond := #in~cond; {2320#(<= ~counter~0 1)} is VALID [2022-04-27 12:48:49,843 INFO L290 TraceCheckUtils]: 21: Hoare triple {2320#(<= ~counter~0 1)} assume !(0 == ~cond); {2320#(<= ~counter~0 1)} is VALID [2022-04-27 12:48:49,844 INFO L290 TraceCheckUtils]: 22: Hoare triple {2320#(<= ~counter~0 1)} assume true; {2320#(<= ~counter~0 1)} is VALID [2022-04-27 12:48:49,845 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2320#(<= ~counter~0 1)} {2320#(<= ~counter~0 1)} #68#return; {2320#(<= ~counter~0 1)} is VALID [2022-04-27 12:48:49,846 INFO L272 TraceCheckUtils]: 24: Hoare triple {2320#(<= ~counter~0 1)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2320#(<= ~counter~0 1)} is VALID [2022-04-27 12:48:49,846 INFO L290 TraceCheckUtils]: 25: Hoare triple {2320#(<= ~counter~0 1)} ~cond := #in~cond; {2320#(<= ~counter~0 1)} is VALID [2022-04-27 12:48:49,846 INFO L290 TraceCheckUtils]: 26: Hoare triple {2320#(<= ~counter~0 1)} assume !(0 == ~cond); {2320#(<= ~counter~0 1)} is VALID [2022-04-27 12:48:49,847 INFO L290 TraceCheckUtils]: 27: Hoare triple {2320#(<= ~counter~0 1)} assume true; {2320#(<= ~counter~0 1)} is VALID [2022-04-27 12:48:49,848 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2320#(<= ~counter~0 1)} {2320#(<= ~counter~0 1)} #70#return; {2320#(<= ~counter~0 1)} is VALID [2022-04-27 12:48:49,848 INFO L272 TraceCheckUtils]: 29: Hoare triple {2320#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2320#(<= ~counter~0 1)} is VALID [2022-04-27 12:48:49,849 INFO L290 TraceCheckUtils]: 30: Hoare triple {2320#(<= ~counter~0 1)} ~cond := #in~cond; {2320#(<= ~counter~0 1)} is VALID [2022-04-27 12:48:49,849 INFO L290 TraceCheckUtils]: 31: Hoare triple {2320#(<= ~counter~0 1)} assume !(0 == ~cond); {2320#(<= ~counter~0 1)} is VALID [2022-04-27 12:48:49,849 INFO L290 TraceCheckUtils]: 32: Hoare triple {2320#(<= ~counter~0 1)} assume true; {2320#(<= ~counter~0 1)} is VALID [2022-04-27 12:48:49,850 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2320#(<= ~counter~0 1)} {2320#(<= ~counter~0 1)} #72#return; {2320#(<= ~counter~0 1)} is VALID [2022-04-27 12:48:49,850 INFO L290 TraceCheckUtils]: 34: Hoare triple {2320#(<= ~counter~0 1)} assume !!(~a~0 != ~b~0); {2320#(<= ~counter~0 1)} is VALID [2022-04-27 12:48:49,851 INFO L290 TraceCheckUtils]: 35: Hoare triple {2320#(<= ~counter~0 1)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {2320#(<= ~counter~0 1)} is VALID [2022-04-27 12:48:49,851 INFO L290 TraceCheckUtils]: 36: Hoare triple {2320#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2378#(<= |main_#t~post6| 1)} is VALID [2022-04-27 12:48:49,852 INFO L290 TraceCheckUtils]: 37: Hoare triple {2378#(<= |main_#t~post6| 1)} assume !(#t~post6 < 10);havoc #t~post6; {2264#false} is VALID [2022-04-27 12:48:49,852 INFO L272 TraceCheckUtils]: 38: Hoare triple {2264#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {2264#false} is VALID [2022-04-27 12:48:49,852 INFO L290 TraceCheckUtils]: 39: Hoare triple {2264#false} ~cond := #in~cond; {2264#false} is VALID [2022-04-27 12:48:49,852 INFO L290 TraceCheckUtils]: 40: Hoare triple {2264#false} assume 0 == ~cond; {2264#false} is VALID [2022-04-27 12:48:49,852 INFO L290 TraceCheckUtils]: 41: Hoare triple {2264#false} assume !false; {2264#false} is VALID [2022-04-27 12:48:49,852 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 6 proven. 2 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-27 12:48:49,852 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:48:50,073 INFO L290 TraceCheckUtils]: 41: Hoare triple {2264#false} assume !false; {2264#false} is VALID [2022-04-27 12:48:50,074 INFO L290 TraceCheckUtils]: 40: Hoare triple {2264#false} assume 0 == ~cond; {2264#false} is VALID [2022-04-27 12:48:50,074 INFO L290 TraceCheckUtils]: 39: Hoare triple {2264#false} ~cond := #in~cond; {2264#false} is VALID [2022-04-27 12:48:50,074 INFO L272 TraceCheckUtils]: 38: Hoare triple {2264#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {2264#false} is VALID [2022-04-27 12:48:50,074 INFO L290 TraceCheckUtils]: 37: Hoare triple {2406#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {2264#false} is VALID [2022-04-27 12:48:50,075 INFO L290 TraceCheckUtils]: 36: Hoare triple {2410#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2406#(< |main_#t~post6| 10)} is VALID [2022-04-27 12:48:50,075 INFO L290 TraceCheckUtils]: 35: Hoare triple {2410#(< ~counter~0 10)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {2410#(< ~counter~0 10)} is VALID [2022-04-27 12:48:50,075 INFO L290 TraceCheckUtils]: 34: Hoare triple {2410#(< ~counter~0 10)} assume !!(~a~0 != ~b~0); {2410#(< ~counter~0 10)} is VALID [2022-04-27 12:48:50,076 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2263#true} {2410#(< ~counter~0 10)} #72#return; {2410#(< ~counter~0 10)} is VALID [2022-04-27 12:48:50,076 INFO L290 TraceCheckUtils]: 32: Hoare triple {2263#true} assume true; {2263#true} is VALID [2022-04-27 12:48:50,076 INFO L290 TraceCheckUtils]: 31: Hoare triple {2263#true} assume !(0 == ~cond); {2263#true} is VALID [2022-04-27 12:48:50,077 INFO L290 TraceCheckUtils]: 30: Hoare triple {2263#true} ~cond := #in~cond; {2263#true} is VALID [2022-04-27 12:48:50,077 INFO L272 TraceCheckUtils]: 29: Hoare triple {2410#(< ~counter~0 10)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2263#true} is VALID [2022-04-27 12:48:50,077 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2263#true} {2410#(< ~counter~0 10)} #70#return; {2410#(< ~counter~0 10)} is VALID [2022-04-27 12:48:50,077 INFO L290 TraceCheckUtils]: 27: Hoare triple {2263#true} assume true; {2263#true} is VALID [2022-04-27 12:48:50,078 INFO L290 TraceCheckUtils]: 26: Hoare triple {2263#true} assume !(0 == ~cond); {2263#true} is VALID [2022-04-27 12:48:50,078 INFO L290 TraceCheckUtils]: 25: Hoare triple {2263#true} ~cond := #in~cond; {2263#true} is VALID [2022-04-27 12:48:50,078 INFO L272 TraceCheckUtils]: 24: Hoare triple {2410#(< ~counter~0 10)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2263#true} is VALID [2022-04-27 12:48:50,078 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2263#true} {2410#(< ~counter~0 10)} #68#return; {2410#(< ~counter~0 10)} is VALID [2022-04-27 12:48:50,079 INFO L290 TraceCheckUtils]: 22: Hoare triple {2263#true} assume true; {2263#true} is VALID [2022-04-27 12:48:50,079 INFO L290 TraceCheckUtils]: 21: Hoare triple {2263#true} assume !(0 == ~cond); {2263#true} is VALID [2022-04-27 12:48:50,079 INFO L290 TraceCheckUtils]: 20: Hoare triple {2263#true} ~cond := #in~cond; {2263#true} is VALID [2022-04-27 12:48:50,079 INFO L272 TraceCheckUtils]: 19: Hoare triple {2410#(< ~counter~0 10)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {2263#true} is VALID [2022-04-27 12:48:50,079 INFO L290 TraceCheckUtils]: 18: Hoare triple {2410#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {2410#(< ~counter~0 10)} is VALID [2022-04-27 12:48:50,080 INFO L290 TraceCheckUtils]: 17: Hoare triple {2468#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2410#(< ~counter~0 10)} is VALID [2022-04-27 12:48:50,080 INFO L290 TraceCheckUtils]: 16: Hoare triple {2468#(< ~counter~0 9)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2468#(< ~counter~0 9)} is VALID [2022-04-27 12:48:50,081 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2263#true} {2468#(< ~counter~0 9)} #66#return; {2468#(< ~counter~0 9)} is VALID [2022-04-27 12:48:50,081 INFO L290 TraceCheckUtils]: 14: Hoare triple {2263#true} assume true; {2263#true} is VALID [2022-04-27 12:48:50,081 INFO L290 TraceCheckUtils]: 13: Hoare triple {2263#true} assume !(0 == ~cond); {2263#true} is VALID [2022-04-27 12:48:50,081 INFO L290 TraceCheckUtils]: 12: Hoare triple {2263#true} ~cond := #in~cond; {2263#true} is VALID [2022-04-27 12:48:50,081 INFO L272 TraceCheckUtils]: 11: Hoare triple {2468#(< ~counter~0 9)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2263#true} is VALID [2022-04-27 12:48:50,082 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2263#true} {2468#(< ~counter~0 9)} #64#return; {2468#(< ~counter~0 9)} is VALID [2022-04-27 12:48:50,082 INFO L290 TraceCheckUtils]: 9: Hoare triple {2263#true} assume true; {2263#true} is VALID [2022-04-27 12:48:50,082 INFO L290 TraceCheckUtils]: 8: Hoare triple {2263#true} assume !(0 == ~cond); {2263#true} is VALID [2022-04-27 12:48:50,082 INFO L290 TraceCheckUtils]: 7: Hoare triple {2263#true} ~cond := #in~cond; {2263#true} is VALID [2022-04-27 12:48:50,082 INFO L272 TraceCheckUtils]: 6: Hoare triple {2468#(< ~counter~0 9)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2263#true} is VALID [2022-04-27 12:48:50,083 INFO L290 TraceCheckUtils]: 5: Hoare triple {2468#(< ~counter~0 9)} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2468#(< ~counter~0 9)} is VALID [2022-04-27 12:48:50,083 INFO L272 TraceCheckUtils]: 4: Hoare triple {2468#(< ~counter~0 9)} call #t~ret7 := main(); {2468#(< ~counter~0 9)} is VALID [2022-04-27 12:48:50,084 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2468#(< ~counter~0 9)} {2263#true} #82#return; {2468#(< ~counter~0 9)} is VALID [2022-04-27 12:48:50,084 INFO L290 TraceCheckUtils]: 2: Hoare triple {2468#(< ~counter~0 9)} assume true; {2468#(< ~counter~0 9)} is VALID [2022-04-27 12:48:50,084 INFO L290 TraceCheckUtils]: 1: Hoare triple {2263#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2468#(< ~counter~0 9)} is VALID [2022-04-27 12:48:50,085 INFO L272 TraceCheckUtils]: 0: Hoare triple {2263#true} call ULTIMATE.init(); {2263#true} is VALID [2022-04-27 12:48:50,085 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 6 proven. 2 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-27 12:48:50,085 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:48:50,085 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [381926631] [2022-04-27 12:48:50,085 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:48:50,085 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1597470204] [2022-04-27 12:48:50,085 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1597470204] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:48:50,085 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:48:50,085 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-27 12:48:50,086 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [144443014] [2022-04-27 12:48:50,086 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:48:50,086 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (14), 5 states have call predecessors, (14), 4 states have return successors, (12), 4 states have call predecessors, (12), 5 states have call successors, (12) Word has length 42 [2022-04-27 12:48:50,086 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:48:50,087 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (14), 5 states have call predecessors, (14), 4 states have return successors, (12), 4 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-27 12:48:50,134 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:48:50,135 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-27 12:48:50,135 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:48:50,135 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-27 12:48:50,135 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-27 12:48:50,136 INFO L87 Difference]: Start difference. First operand 78 states and 109 transitions. Second operand has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (14), 5 states have call predecessors, (14), 4 states have return successors, (12), 4 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-27 12:48:50,583 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:50,583 INFO L93 Difference]: Finished difference Result 222 states and 290 transitions. [2022-04-27 12:48:50,583 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-27 12:48:50,584 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (14), 5 states have call predecessors, (14), 4 states have return successors, (12), 4 states have call predecessors, (12), 5 states have call successors, (12) Word has length 42 [2022-04-27 12:48:50,584 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:48:50,584 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (14), 5 states have call predecessors, (14), 4 states have return successors, (12), 4 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-27 12:48:50,586 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 124 transitions. [2022-04-27 12:48:50,587 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (14), 5 states have call predecessors, (14), 4 states have return successors, (12), 4 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-27 12:48:50,589 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 124 transitions. [2022-04-27 12:48:50,589 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 124 transitions. [2022-04-27 12:48:50,691 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 12:48:50,695 INFO L225 Difference]: With dead ends: 222 [2022-04-27 12:48:50,695 INFO L226 Difference]: Without dead ends: 200 [2022-04-27 12:48:50,696 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 86 GetRequests, 77 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=40, Invalid=70, Unknown=0, NotChecked=0, Total=110 [2022-04-27 12:48:50,696 INFO L413 NwaCegarLoop]: 55 mSDtfsCounter, 62 mSDsluCounter, 167 mSDsCounter, 0 mSdLazyCounter, 51 mSolverCounterSat, 22 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 62 SdHoareTripleChecker+Valid, 222 SdHoareTripleChecker+Invalid, 73 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 22 IncrementalHoareTripleChecker+Valid, 51 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:48:50,697 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [62 Valid, 222 Invalid, 73 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [22 Valid, 51 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:48:50,697 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 200 states. [2022-04-27 12:48:50,789 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 200 to 194. [2022-04-27 12:48:50,789 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:48:50,790 INFO L82 GeneralOperation]: Start isEquivalent. First operand 200 states. Second operand has 194 states, 109 states have (on average 1.2201834862385321) internal successors, (133), 120 states have internal predecessors, (133), 63 states have call successors, (63), 23 states have call predecessors, (63), 21 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-27 12:48:50,790 INFO L74 IsIncluded]: Start isIncluded. First operand 200 states. Second operand has 194 states, 109 states have (on average 1.2201834862385321) internal successors, (133), 120 states have internal predecessors, (133), 63 states have call successors, (63), 23 states have call predecessors, (63), 21 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-27 12:48:50,791 INFO L87 Difference]: Start difference. First operand 200 states. Second operand has 194 states, 109 states have (on average 1.2201834862385321) internal successors, (133), 120 states have internal predecessors, (133), 63 states have call successors, (63), 23 states have call predecessors, (63), 21 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-27 12:48:50,798 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:50,798 INFO L93 Difference]: Finished difference Result 200 states and 254 transitions. [2022-04-27 12:48:50,798 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 254 transitions. [2022-04-27 12:48:50,799 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:48:50,799 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:48:50,800 INFO L74 IsIncluded]: Start isIncluded. First operand has 194 states, 109 states have (on average 1.2201834862385321) internal successors, (133), 120 states have internal predecessors, (133), 63 states have call successors, (63), 23 states have call predecessors, (63), 21 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) Second operand 200 states. [2022-04-27 12:48:50,800 INFO L87 Difference]: Start difference. First operand has 194 states, 109 states have (on average 1.2201834862385321) internal successors, (133), 120 states have internal predecessors, (133), 63 states have call successors, (63), 23 states have call predecessors, (63), 21 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) Second operand 200 states. [2022-04-27 12:48:50,807 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:50,807 INFO L93 Difference]: Finished difference Result 200 states and 254 transitions. [2022-04-27 12:48:50,807 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 254 transitions. [2022-04-27 12:48:50,808 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:48:50,808 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:48:50,808 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:48:50,808 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:48:50,809 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 194 states, 109 states have (on average 1.2201834862385321) internal successors, (133), 120 states have internal predecessors, (133), 63 states have call successors, (63), 23 states have call predecessors, (63), 21 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-27 12:48:50,816 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 194 states to 194 states and 251 transitions. [2022-04-27 12:48:50,816 INFO L78 Accepts]: Start accepts. Automaton has 194 states and 251 transitions. Word has length 42 [2022-04-27 12:48:50,816 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:48:50,816 INFO L495 AbstractCegarLoop]: Abstraction has 194 states and 251 transitions. [2022-04-27 12:48:50,816 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (14), 5 states have call predecessors, (14), 4 states have return successors, (12), 4 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-27 12:48:50,816 INFO L276 IsEmpty]: Start isEmpty. Operand 194 states and 251 transitions. [2022-04-27 12:48:50,817 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-27 12:48:50,817 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:48:50,817 INFO L195 NwaCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:48:50,841 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 12:48:51,039 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:48:51,039 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:48:51,040 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:48:51,040 INFO L85 PathProgramCache]: Analyzing trace with hash -1083409702, now seen corresponding path program 1 times [2022-04-27 12:48:51,040 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:48:51,040 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1728419120] [2022-04-27 12:48:51,040 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:48:51,040 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:48:51,059 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:48:51,059 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1294240972] [2022-04-27 12:48:51,059 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:48:51,059 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:48:51,059 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:48:51,060 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 12:48:51,069 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 12:48:51,105 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:48:51,106 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-27 12:48:51,113 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:48:51,114 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:48:52,958 INFO L272 TraceCheckUtils]: 0: Hoare triple {3552#true} call ULTIMATE.init(); {3552#true} is VALID [2022-04-27 12:48:52,958 INFO L290 TraceCheckUtils]: 1: Hoare triple {3552#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3552#true} is VALID [2022-04-27 12:48:52,958 INFO L290 TraceCheckUtils]: 2: Hoare triple {3552#true} assume true; {3552#true} is VALID [2022-04-27 12:48:52,958 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3552#true} {3552#true} #82#return; {3552#true} is VALID [2022-04-27 12:48:52,958 INFO L272 TraceCheckUtils]: 4: Hoare triple {3552#true} call #t~ret7 := main(); {3552#true} is VALID [2022-04-27 12:48:52,959 INFO L290 TraceCheckUtils]: 5: Hoare triple {3552#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3552#true} is VALID [2022-04-27 12:48:52,959 INFO L272 TraceCheckUtils]: 6: Hoare triple {3552#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3552#true} is VALID [2022-04-27 12:48:52,959 INFO L290 TraceCheckUtils]: 7: Hoare triple {3552#true} ~cond := #in~cond; {3552#true} is VALID [2022-04-27 12:48:52,959 INFO L290 TraceCheckUtils]: 8: Hoare triple {3552#true} assume !(0 == ~cond); {3552#true} is VALID [2022-04-27 12:48:52,959 INFO L290 TraceCheckUtils]: 9: Hoare triple {3552#true} assume true; {3552#true} is VALID [2022-04-27 12:48:52,959 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3552#true} {3552#true} #64#return; {3552#true} is VALID [2022-04-27 12:48:52,959 INFO L272 TraceCheckUtils]: 11: Hoare triple {3552#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3552#true} is VALID [2022-04-27 12:48:52,959 INFO L290 TraceCheckUtils]: 12: Hoare triple {3552#true} ~cond := #in~cond; {3552#true} is VALID [2022-04-27 12:48:52,959 INFO L290 TraceCheckUtils]: 13: Hoare triple {3552#true} assume !(0 == ~cond); {3552#true} is VALID [2022-04-27 12:48:52,959 INFO L290 TraceCheckUtils]: 14: Hoare triple {3552#true} assume true; {3552#true} is VALID [2022-04-27 12:48:52,959 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3552#true} {3552#true} #66#return; {3552#true} is VALID [2022-04-27 12:48:52,960 INFO L290 TraceCheckUtils]: 16: Hoare triple {3552#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:48:52,960 INFO L290 TraceCheckUtils]: 17: Hoare triple {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:48:52,961 INFO L290 TraceCheckUtils]: 18: Hoare triple {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:48:52,961 INFO L272 TraceCheckUtils]: 19: Hoare triple {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {3552#true} is VALID [2022-04-27 12:48:52,961 INFO L290 TraceCheckUtils]: 20: Hoare triple {3552#true} ~cond := #in~cond; {3552#true} is VALID [2022-04-27 12:48:52,961 INFO L290 TraceCheckUtils]: 21: Hoare triple {3552#true} assume !(0 == ~cond); {3552#true} is VALID [2022-04-27 12:48:52,961 INFO L290 TraceCheckUtils]: 22: Hoare triple {3552#true} assume true; {3552#true} is VALID [2022-04-27 12:48:52,962 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3552#true} {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #68#return; {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:48:52,962 INFO L272 TraceCheckUtils]: 24: Hoare triple {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3552#true} is VALID [2022-04-27 12:48:52,962 INFO L290 TraceCheckUtils]: 25: Hoare triple {3552#true} ~cond := #in~cond; {3552#true} is VALID [2022-04-27 12:48:52,962 INFO L290 TraceCheckUtils]: 26: Hoare triple {3552#true} assume !(0 == ~cond); {3552#true} is VALID [2022-04-27 12:48:52,963 INFO L290 TraceCheckUtils]: 27: Hoare triple {3552#true} assume true; {3552#true} is VALID [2022-04-27 12:48:52,963 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3552#true} {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #70#return; {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:48:52,963 INFO L272 TraceCheckUtils]: 29: Hoare triple {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3552#true} is VALID [2022-04-27 12:48:52,964 INFO L290 TraceCheckUtils]: 30: Hoare triple {3552#true} ~cond := #in~cond; {3552#true} is VALID [2022-04-27 12:48:52,964 INFO L290 TraceCheckUtils]: 31: Hoare triple {3552#true} assume !(0 == ~cond); {3552#true} is VALID [2022-04-27 12:48:52,964 INFO L290 TraceCheckUtils]: 32: Hoare triple {3552#true} assume true; {3552#true} is VALID [2022-04-27 12:48:52,964 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {3552#true} {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #72#return; {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:48:52,965 INFO L290 TraceCheckUtils]: 34: Hoare triple {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:48:52,965 INFO L290 TraceCheckUtils]: 35: Hoare triple {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:48:52,966 INFO L290 TraceCheckUtils]: 36: Hoare triple {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:48:52,966 INFO L290 TraceCheckUtils]: 37: Hoare triple {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:48:52,967 INFO L272 TraceCheckUtils]: 38: Hoare triple {3605#(and (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {3672#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:48:52,967 INFO L290 TraceCheckUtils]: 39: Hoare triple {3672#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3676#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:48:52,968 INFO L290 TraceCheckUtils]: 40: Hoare triple {3676#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3553#false} is VALID [2022-04-27 12:48:52,968 INFO L290 TraceCheckUtils]: 41: Hoare triple {3553#false} assume !false; {3553#false} is VALID [2022-04-27 12:48:52,968 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-27 12:48:52,968 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:48:52,968 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:48:52,968 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1728419120] [2022-04-27 12:48:52,969 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:48:52,969 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1294240972] [2022-04-27 12:48:52,969 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1294240972] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:48:52,969 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:48:52,969 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 12:48:52,969 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2123248424] [2022-04-27 12:48:52,969 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:48:52,970 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 42 [2022-04-27 12:48:52,970 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:48:52,970 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 12:48:52,996 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:48:52,996 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:48:52,996 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:48:52,997 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:48:52,997 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 12:48:52,997 INFO L87 Difference]: Start difference. First operand 194 states and 251 transitions. Second operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 12:48:53,247 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:53,247 INFO L93 Difference]: Finished difference Result 208 states and 264 transitions. [2022-04-27 12:48:53,247 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:48:53,248 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 42 [2022-04-27 12:48:53,248 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:48:53,248 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 12:48:53,249 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 62 transitions. [2022-04-27 12:48:53,249 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 12:48:53,250 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 62 transitions. [2022-04-27 12:48:53,250 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 62 transitions. [2022-04-27 12:48:53,299 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 12:48:53,303 INFO L225 Difference]: With dead ends: 208 [2022-04-27 12:48:53,303 INFO L226 Difference]: Without dead ends: 203 [2022-04-27 12:48:53,304 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 37 SyntacticMatches, 1 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-27 12:48:53,304 INFO L413 NwaCegarLoop]: 39 mSDtfsCounter, 7 mSDsluCounter, 93 mSDsCounter, 0 mSdLazyCounter, 38 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 132 SdHoareTripleChecker+Invalid, 39 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 38 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:48:53,304 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [9 Valid, 132 Invalid, 39 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 38 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:48:53,305 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 203 states. [2022-04-27 12:48:53,394 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 203 to 203. [2022-04-27 12:48:53,395 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:48:53,395 INFO L82 GeneralOperation]: Start isEquivalent. First operand 203 states. Second operand has 203 states, 118 states have (on average 1.2033898305084745) internal successors, (142), 129 states have internal predecessors, (142), 60 states have call successors, (60), 26 states have call predecessors, (60), 24 states have return successors, (52), 47 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-27 12:48:53,396 INFO L74 IsIncluded]: Start isIncluded. First operand 203 states. Second operand has 203 states, 118 states have (on average 1.2033898305084745) internal successors, (142), 129 states have internal predecessors, (142), 60 states have call successors, (60), 26 states have call predecessors, (60), 24 states have return successors, (52), 47 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-27 12:48:53,396 INFO L87 Difference]: Start difference. First operand 203 states. Second operand has 203 states, 118 states have (on average 1.2033898305084745) internal successors, (142), 129 states have internal predecessors, (142), 60 states have call successors, (60), 26 states have call predecessors, (60), 24 states have return successors, (52), 47 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-27 12:48:53,403 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:53,403 INFO L93 Difference]: Finished difference Result 203 states and 254 transitions. [2022-04-27 12:48:53,403 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 254 transitions. [2022-04-27 12:48:53,404 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:48:53,404 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:48:53,405 INFO L74 IsIncluded]: Start isIncluded. First operand has 203 states, 118 states have (on average 1.2033898305084745) internal successors, (142), 129 states have internal predecessors, (142), 60 states have call successors, (60), 26 states have call predecessors, (60), 24 states have return successors, (52), 47 states have call predecessors, (52), 52 states have call successors, (52) Second operand 203 states. [2022-04-27 12:48:53,405 INFO L87 Difference]: Start difference. First operand has 203 states, 118 states have (on average 1.2033898305084745) internal successors, (142), 129 states have internal predecessors, (142), 60 states have call successors, (60), 26 states have call predecessors, (60), 24 states have return successors, (52), 47 states have call predecessors, (52), 52 states have call successors, (52) Second operand 203 states. [2022-04-27 12:48:53,412 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:48:53,412 INFO L93 Difference]: Finished difference Result 203 states and 254 transitions. [2022-04-27 12:48:53,412 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 254 transitions. [2022-04-27 12:48:53,413 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:48:53,413 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:48:53,413 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:48:53,413 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:48:53,414 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 203 states, 118 states have (on average 1.2033898305084745) internal successors, (142), 129 states have internal predecessors, (142), 60 states have call successors, (60), 26 states have call predecessors, (60), 24 states have return successors, (52), 47 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-27 12:48:53,420 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 203 states to 203 states and 254 transitions. [2022-04-27 12:48:53,420 INFO L78 Accepts]: Start accepts. Automaton has 203 states and 254 transitions. Word has length 42 [2022-04-27 12:48:53,420 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:48:53,421 INFO L495 AbstractCegarLoop]: Abstraction has 203 states and 254 transitions. [2022-04-27 12:48:53,421 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 12:48:53,421 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 254 transitions. [2022-04-27 12:48:53,421 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-27 12:48:53,421 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:48:53,421 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:48:53,458 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 12:48:53,655 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:48:53,656 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:48:53,656 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:48:53,656 INFO L85 PathProgramCache]: Analyzing trace with hash -1376219446, now seen corresponding path program 1 times [2022-04-27 12:48:53,656 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:48:53,656 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1668573793] [2022-04-27 12:48:53,657 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:48:53,657 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:48:53,668 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:48:53,668 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1892442396] [2022-04-27 12:48:53,668 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:48:53,669 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:48:53,669 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:48:53,670 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 12:48:53,671 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 12:48:53,710 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:48:53,711 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-27 12:48:53,720 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:48:53,721 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:48:53,863 INFO L272 TraceCheckUtils]: 0: Hoare triple {4700#true} call ULTIMATE.init(); {4700#true} is VALID [2022-04-27 12:48:53,863 INFO L290 TraceCheckUtils]: 1: Hoare triple {4700#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4700#true} is VALID [2022-04-27 12:48:53,863 INFO L290 TraceCheckUtils]: 2: Hoare triple {4700#true} assume true; {4700#true} is VALID [2022-04-27 12:48:53,863 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4700#true} {4700#true} #82#return; {4700#true} is VALID [2022-04-27 12:48:53,864 INFO L272 TraceCheckUtils]: 4: Hoare triple {4700#true} call #t~ret7 := main(); {4700#true} is VALID [2022-04-27 12:48:53,864 INFO L290 TraceCheckUtils]: 5: Hoare triple {4700#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4700#true} is VALID [2022-04-27 12:48:53,864 INFO L272 TraceCheckUtils]: 6: Hoare triple {4700#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4700#true} is VALID [2022-04-27 12:48:53,864 INFO L290 TraceCheckUtils]: 7: Hoare triple {4700#true} ~cond := #in~cond; {4700#true} is VALID [2022-04-27 12:48:53,864 INFO L290 TraceCheckUtils]: 8: Hoare triple {4700#true} assume !(0 == ~cond); {4700#true} is VALID [2022-04-27 12:48:53,864 INFO L290 TraceCheckUtils]: 9: Hoare triple {4700#true} assume true; {4700#true} is VALID [2022-04-27 12:48:53,864 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4700#true} {4700#true} #64#return; {4700#true} is VALID [2022-04-27 12:48:53,864 INFO L272 TraceCheckUtils]: 11: Hoare triple {4700#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4700#true} is VALID [2022-04-27 12:48:53,864 INFO L290 TraceCheckUtils]: 12: Hoare triple {4700#true} ~cond := #in~cond; {4700#true} is VALID [2022-04-27 12:48:53,864 INFO L290 TraceCheckUtils]: 13: Hoare triple {4700#true} assume !(0 == ~cond); {4700#true} is VALID [2022-04-27 12:48:53,864 INFO L290 TraceCheckUtils]: 14: Hoare triple {4700#true} assume true; {4700#true} is VALID [2022-04-27 12:48:53,865 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4700#true} {4700#true} #66#return; {4700#true} is VALID [2022-04-27 12:48:53,865 INFO L290 TraceCheckUtils]: 16: Hoare triple {4700#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4700#true} is VALID [2022-04-27 12:48:53,865 INFO L290 TraceCheckUtils]: 17: Hoare triple {4700#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4700#true} is VALID [2022-04-27 12:48:53,865 INFO L290 TraceCheckUtils]: 18: Hoare triple {4700#true} assume !!(#t~post6 < 10);havoc #t~post6; {4700#true} is VALID [2022-04-27 12:48:53,865 INFO L272 TraceCheckUtils]: 19: Hoare triple {4700#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {4700#true} is VALID [2022-04-27 12:48:53,865 INFO L290 TraceCheckUtils]: 20: Hoare triple {4700#true} ~cond := #in~cond; {4700#true} is VALID [2022-04-27 12:48:53,865 INFO L290 TraceCheckUtils]: 21: Hoare triple {4700#true} assume !(0 == ~cond); {4700#true} is VALID [2022-04-27 12:48:53,865 INFO L290 TraceCheckUtils]: 22: Hoare triple {4700#true} assume true; {4700#true} is VALID [2022-04-27 12:48:53,865 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4700#true} {4700#true} #68#return; {4700#true} is VALID [2022-04-27 12:48:53,865 INFO L272 TraceCheckUtils]: 24: Hoare triple {4700#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4700#true} is VALID [2022-04-27 12:48:53,866 INFO L290 TraceCheckUtils]: 25: Hoare triple {4700#true} ~cond := #in~cond; {4780#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:48:53,866 INFO L290 TraceCheckUtils]: 26: Hoare triple {4780#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {4784#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:48:53,866 INFO L290 TraceCheckUtils]: 27: Hoare triple {4784#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4784#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:48:53,867 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4784#(not (= |__VERIFIER_assert_#in~cond| 0))} {4700#true} #70#return; {4791#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:48:53,867 INFO L272 TraceCheckUtils]: 29: Hoare triple {4791#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4700#true} is VALID [2022-04-27 12:48:53,868 INFO L290 TraceCheckUtils]: 30: Hoare triple {4700#true} ~cond := #in~cond; {4700#true} is VALID [2022-04-27 12:48:53,868 INFO L290 TraceCheckUtils]: 31: Hoare triple {4700#true} assume !(0 == ~cond); {4700#true} is VALID [2022-04-27 12:48:53,868 INFO L290 TraceCheckUtils]: 32: Hoare triple {4700#true} assume true; {4700#true} is VALID [2022-04-27 12:48:53,869 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {4700#true} {4791#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #72#return; {4791#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:48:53,869 INFO L290 TraceCheckUtils]: 34: Hoare triple {4791#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~a~0 != ~b~0); {4810#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:48:53,869 INFO L272 TraceCheckUtils]: 35: Hoare triple {4810#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {4700#true} is VALID [2022-04-27 12:48:53,869 INFO L290 TraceCheckUtils]: 36: Hoare triple {4700#true} ~cond := #in~cond; {4700#true} is VALID [2022-04-27 12:48:53,869 INFO L290 TraceCheckUtils]: 37: Hoare triple {4700#true} assume !(0 == ~cond); {4700#true} is VALID [2022-04-27 12:48:53,870 INFO L290 TraceCheckUtils]: 38: Hoare triple {4700#true} assume true; {4700#true} is VALID [2022-04-27 12:48:53,870 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {4700#true} {4810#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #74#return; {4810#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:48:53,871 INFO L272 TraceCheckUtils]: 40: Hoare triple {4810#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~p~0 * ~x~0 + ~r~0 * ~y~0 - ~b~0 then 1 else 0)); {4829#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:48:53,872 INFO L290 TraceCheckUtils]: 41: Hoare triple {4829#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4833#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:48:53,872 INFO L290 TraceCheckUtils]: 42: Hoare triple {4833#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4701#false} is VALID [2022-04-27 12:48:53,872 INFO L290 TraceCheckUtils]: 43: Hoare triple {4701#false} assume !false; {4701#false} is VALID [2022-04-27 12:48:53,872 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 10 proven. 7 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-27 12:48:53,872 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:49:11,231 INFO L290 TraceCheckUtils]: 43: Hoare triple {4701#false} assume !false; {4701#false} is VALID [2022-04-27 12:49:11,232 INFO L290 TraceCheckUtils]: 42: Hoare triple {4833#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4701#false} is VALID [2022-04-27 12:49:11,232 INFO L290 TraceCheckUtils]: 41: Hoare triple {4829#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4833#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:49:11,233 INFO L272 TraceCheckUtils]: 40: Hoare triple {4810#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~p~0 * ~x~0 + ~r~0 * ~y~0 - ~b~0 then 1 else 0)); {4829#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:49:11,233 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {4700#true} {4810#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #74#return; {4810#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:49:11,234 INFO L290 TraceCheckUtils]: 38: Hoare triple {4700#true} assume true; {4700#true} is VALID [2022-04-27 12:49:11,234 INFO L290 TraceCheckUtils]: 37: Hoare triple {4700#true} assume !(0 == ~cond); {4700#true} is VALID [2022-04-27 12:49:11,234 INFO L290 TraceCheckUtils]: 36: Hoare triple {4700#true} ~cond := #in~cond; {4700#true} is VALID [2022-04-27 12:49:11,234 INFO L272 TraceCheckUtils]: 35: Hoare triple {4810#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {4700#true} is VALID [2022-04-27 12:49:11,234 INFO L290 TraceCheckUtils]: 34: Hoare triple {4791#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~a~0 != ~b~0); {4810#(= main_~b~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:49:11,235 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {4700#true} {4791#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #72#return; {4791#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:49:11,235 INFO L290 TraceCheckUtils]: 32: Hoare triple {4700#true} assume true; {4700#true} is VALID [2022-04-27 12:49:11,235 INFO L290 TraceCheckUtils]: 31: Hoare triple {4700#true} assume !(0 == ~cond); {4700#true} is VALID [2022-04-27 12:49:11,235 INFO L290 TraceCheckUtils]: 30: Hoare triple {4700#true} ~cond := #in~cond; {4700#true} is VALID [2022-04-27 12:49:11,235 INFO L272 TraceCheckUtils]: 29: Hoare triple {4791#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4700#true} is VALID [2022-04-27 12:49:11,236 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4784#(not (= |__VERIFIER_assert_#in~cond| 0))} {4700#true} #70#return; {4791#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:49:11,236 INFO L290 TraceCheckUtils]: 27: Hoare triple {4784#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4784#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:49:11,237 INFO L290 TraceCheckUtils]: 26: Hoare triple {4894#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {4784#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:49:11,237 INFO L290 TraceCheckUtils]: 25: Hoare triple {4700#true} ~cond := #in~cond; {4894#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 12:49:11,237 INFO L272 TraceCheckUtils]: 24: Hoare triple {4700#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4700#true} is VALID [2022-04-27 12:49:11,237 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4700#true} {4700#true} #68#return; {4700#true} is VALID [2022-04-27 12:49:11,238 INFO L290 TraceCheckUtils]: 22: Hoare triple {4700#true} assume true; {4700#true} is VALID [2022-04-27 12:49:11,238 INFO L290 TraceCheckUtils]: 21: Hoare triple {4700#true} assume !(0 == ~cond); {4700#true} is VALID [2022-04-27 12:49:11,238 INFO L290 TraceCheckUtils]: 20: Hoare triple {4700#true} ~cond := #in~cond; {4700#true} is VALID [2022-04-27 12:49:11,238 INFO L272 TraceCheckUtils]: 19: Hoare triple {4700#true} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {4700#true} is VALID [2022-04-27 12:49:11,238 INFO L290 TraceCheckUtils]: 18: Hoare triple {4700#true} assume !!(#t~post6 < 10);havoc #t~post6; {4700#true} is VALID [2022-04-27 12:49:11,238 INFO L290 TraceCheckUtils]: 17: Hoare triple {4700#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4700#true} is VALID [2022-04-27 12:49:11,238 INFO L290 TraceCheckUtils]: 16: Hoare triple {4700#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4700#true} is VALID [2022-04-27 12:49:11,238 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4700#true} {4700#true} #66#return; {4700#true} is VALID [2022-04-27 12:49:11,238 INFO L290 TraceCheckUtils]: 14: Hoare triple {4700#true} assume true; {4700#true} is VALID [2022-04-27 12:49:11,238 INFO L290 TraceCheckUtils]: 13: Hoare triple {4700#true} assume !(0 == ~cond); {4700#true} is VALID [2022-04-27 12:49:11,238 INFO L290 TraceCheckUtils]: 12: Hoare triple {4700#true} ~cond := #in~cond; {4700#true} is VALID [2022-04-27 12:49:11,238 INFO L272 TraceCheckUtils]: 11: Hoare triple {4700#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4700#true} is VALID [2022-04-27 12:49:11,238 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4700#true} {4700#true} #64#return; {4700#true} is VALID [2022-04-27 12:49:11,239 INFO L290 TraceCheckUtils]: 9: Hoare triple {4700#true} assume true; {4700#true} is VALID [2022-04-27 12:49:11,239 INFO L290 TraceCheckUtils]: 8: Hoare triple {4700#true} assume !(0 == ~cond); {4700#true} is VALID [2022-04-27 12:49:11,239 INFO L290 TraceCheckUtils]: 7: Hoare triple {4700#true} ~cond := #in~cond; {4700#true} is VALID [2022-04-27 12:49:11,239 INFO L272 TraceCheckUtils]: 6: Hoare triple {4700#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4700#true} is VALID [2022-04-27 12:49:11,239 INFO L290 TraceCheckUtils]: 5: Hoare triple {4700#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4700#true} is VALID [2022-04-27 12:49:11,239 INFO L272 TraceCheckUtils]: 4: Hoare triple {4700#true} call #t~ret7 := main(); {4700#true} is VALID [2022-04-27 12:49:11,239 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4700#true} {4700#true} #82#return; {4700#true} is VALID [2022-04-27 12:49:11,239 INFO L290 TraceCheckUtils]: 2: Hoare triple {4700#true} assume true; {4700#true} is VALID [2022-04-27 12:49:11,239 INFO L290 TraceCheckUtils]: 1: Hoare triple {4700#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4700#true} is VALID [2022-04-27 12:49:11,239 INFO L272 TraceCheckUtils]: 0: Hoare triple {4700#true} call ULTIMATE.init(); {4700#true} is VALID [2022-04-27 12:49:11,239 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 10 proven. 7 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-27 12:49:11,240 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:49:11,240 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1668573793] [2022-04-27 12:49:11,240 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:49:11,240 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1892442396] [2022-04-27 12:49:11,240 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1892442396] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:49:11,240 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:49:11,240 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-27 12:49:11,240 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [613720879] [2022-04-27 12:49:11,240 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:49:11,241 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) Word has length 44 [2022-04-27 12:49:11,241 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:49:11,241 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-27 12:49:11,269 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:49:11,270 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 12:49:11,270 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:49:11,270 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 12:49:11,270 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-27 12:49:11,270 INFO L87 Difference]: Start difference. First operand 203 states and 254 transitions. Second operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-27 12:49:11,982 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:49:11,982 INFO L93 Difference]: Finished difference Result 232 states and 290 transitions. [2022-04-27 12:49:11,983 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 12:49:11,983 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) Word has length 44 [2022-04-27 12:49:11,983 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:49:11,983 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-27 12:49:11,985 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 60 transitions. [2022-04-27 12:49:11,985 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-27 12:49:11,986 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 60 transitions. [2022-04-27 12:49:11,986 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 60 transitions. [2022-04-27 12:49:12,034 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:49:12,038 INFO L225 Difference]: With dead ends: 232 [2022-04-27 12:49:12,038 INFO L226 Difference]: Without dead ends: 216 [2022-04-27 12:49:12,039 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 90 GetRequests, 79 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-27 12:49:12,039 INFO L413 NwaCegarLoop]: 29 mSDtfsCounter, 15 mSDsluCounter, 112 mSDsCounter, 0 mSdLazyCounter, 165 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 141 SdHoareTripleChecker+Invalid, 177 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 165 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-27 12:49:12,039 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [18 Valid, 141 Invalid, 177 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 165 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-27 12:49:12,040 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 216 states. [2022-04-27 12:49:12,111 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 216 to 214. [2022-04-27 12:49:12,111 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:49:12,111 INFO L82 GeneralOperation]: Start isEquivalent. First operand 216 states. Second operand has 214 states, 128 states have (on average 1.1640625) internal successors, (149), 139 states have internal predecessors, (149), 59 states have call successors, (59), 27 states have call predecessors, (59), 26 states have return successors, (54), 47 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-27 12:49:12,112 INFO L74 IsIncluded]: Start isIncluded. First operand 216 states. Second operand has 214 states, 128 states have (on average 1.1640625) internal successors, (149), 139 states have internal predecessors, (149), 59 states have call successors, (59), 27 states have call predecessors, (59), 26 states have return successors, (54), 47 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-27 12:49:12,112 INFO L87 Difference]: Start difference. First operand 216 states. Second operand has 214 states, 128 states have (on average 1.1640625) internal successors, (149), 139 states have internal predecessors, (149), 59 states have call successors, (59), 27 states have call predecessors, (59), 26 states have return successors, (54), 47 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-27 12:49:12,118 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:49:12,118 INFO L93 Difference]: Finished difference Result 216 states and 265 transitions. [2022-04-27 12:49:12,118 INFO L276 IsEmpty]: Start isEmpty. Operand 216 states and 265 transitions. [2022-04-27 12:49:12,119 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:49:12,119 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:49:12,120 INFO L74 IsIncluded]: Start isIncluded. First operand has 214 states, 128 states have (on average 1.1640625) internal successors, (149), 139 states have internal predecessors, (149), 59 states have call successors, (59), 27 states have call predecessors, (59), 26 states have return successors, (54), 47 states have call predecessors, (54), 54 states have call successors, (54) Second operand 216 states. [2022-04-27 12:49:12,120 INFO L87 Difference]: Start difference. First operand has 214 states, 128 states have (on average 1.1640625) internal successors, (149), 139 states have internal predecessors, (149), 59 states have call successors, (59), 27 states have call predecessors, (59), 26 states have return successors, (54), 47 states have call predecessors, (54), 54 states have call successors, (54) Second operand 216 states. [2022-04-27 12:49:12,127 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:49:12,127 INFO L93 Difference]: Finished difference Result 216 states and 265 transitions. [2022-04-27 12:49:12,127 INFO L276 IsEmpty]: Start isEmpty. Operand 216 states and 265 transitions. [2022-04-27 12:49:12,128 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:49:12,128 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:49:12,128 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:49:12,128 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:49:12,129 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 214 states, 128 states have (on average 1.1640625) internal successors, (149), 139 states have internal predecessors, (149), 59 states have call successors, (59), 27 states have call predecessors, (59), 26 states have return successors, (54), 47 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-27 12:49:12,134 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 214 states to 214 states and 262 transitions. [2022-04-27 12:49:12,135 INFO L78 Accepts]: Start accepts. Automaton has 214 states and 262 transitions. Word has length 44 [2022-04-27 12:49:12,135 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:49:12,135 INFO L495 AbstractCegarLoop]: Abstraction has 214 states and 262 transitions. [2022-04-27 12:49:12,135 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-27 12:49:12,135 INFO L276 IsEmpty]: Start isEmpty. Operand 214 states and 262 transitions. [2022-04-27 12:49:12,135 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-27 12:49:12,136 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:49:12,136 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:49:12,153 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 12:49:12,350 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:49:12,351 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:49:12,351 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:49:12,351 INFO L85 PathProgramCache]: Analyzing trace with hash -1137310021, now seen corresponding path program 2 times [2022-04-27 12:49:12,351 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:49:12,351 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1752302300] [2022-04-27 12:49:12,351 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:49:12,351 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:49:12,360 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:49:12,360 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [918177457] [2022-04-27 12:49:12,360 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 12:49:12,360 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:49:12,361 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:49:12,361 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 12:49:12,362 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 12:49:12,403 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 12:49:12,403 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 12:49:12,404 INFO L263 TraceCheckSpWp]: Trace formula consists of 148 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-27 12:49:12,419 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:49:12,423 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:49:12,718 INFO L272 TraceCheckUtils]: 0: Hoare triple {6070#true} call ULTIMATE.init(); {6070#true} is VALID [2022-04-27 12:49:12,718 INFO L290 TraceCheckUtils]: 1: Hoare triple {6070#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6070#true} is VALID [2022-04-27 12:49:12,719 INFO L290 TraceCheckUtils]: 2: Hoare triple {6070#true} assume true; {6070#true} is VALID [2022-04-27 12:49:12,719 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6070#true} {6070#true} #82#return; {6070#true} is VALID [2022-04-27 12:49:12,719 INFO L272 TraceCheckUtils]: 4: Hoare triple {6070#true} call #t~ret7 := main(); {6070#true} is VALID [2022-04-27 12:49:12,719 INFO L290 TraceCheckUtils]: 5: Hoare triple {6070#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6070#true} is VALID [2022-04-27 12:49:12,719 INFO L272 TraceCheckUtils]: 6: Hoare triple {6070#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6070#true} is VALID [2022-04-27 12:49:12,719 INFO L290 TraceCheckUtils]: 7: Hoare triple {6070#true} ~cond := #in~cond; {6070#true} is VALID [2022-04-27 12:49:12,719 INFO L290 TraceCheckUtils]: 8: Hoare triple {6070#true} assume !(0 == ~cond); {6070#true} is VALID [2022-04-27 12:49:12,719 INFO L290 TraceCheckUtils]: 9: Hoare triple {6070#true} assume true; {6070#true} is VALID [2022-04-27 12:49:12,719 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6070#true} {6070#true} #64#return; {6070#true} is VALID [2022-04-27 12:49:12,719 INFO L272 TraceCheckUtils]: 11: Hoare triple {6070#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6070#true} is VALID [2022-04-27 12:49:12,719 INFO L290 TraceCheckUtils]: 12: Hoare triple {6070#true} ~cond := #in~cond; {6070#true} is VALID [2022-04-27 12:49:12,719 INFO L290 TraceCheckUtils]: 13: Hoare triple {6070#true} assume !(0 == ~cond); {6070#true} is VALID [2022-04-27 12:49:12,719 INFO L290 TraceCheckUtils]: 14: Hoare triple {6070#true} assume true; {6070#true} is VALID [2022-04-27 12:49:12,719 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {6070#true} {6070#true} #66#return; {6070#true} is VALID [2022-04-27 12:49:12,720 INFO L290 TraceCheckUtils]: 16: Hoare triple {6070#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {6123#(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 12:49:12,720 INFO L290 TraceCheckUtils]: 17: Hoare triple {6123#(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; {6123#(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 12:49:12,721 INFO L290 TraceCheckUtils]: 18: Hoare triple {6123#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {6123#(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 12:49:12,721 INFO L272 TraceCheckUtils]: 19: Hoare triple {6123#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {6070#true} is VALID [2022-04-27 12:49:12,721 INFO L290 TraceCheckUtils]: 20: Hoare triple {6070#true} ~cond := #in~cond; {6070#true} is VALID [2022-04-27 12:49:12,721 INFO L290 TraceCheckUtils]: 21: Hoare triple {6070#true} assume !(0 == ~cond); {6070#true} is VALID [2022-04-27 12:49:12,721 INFO L290 TraceCheckUtils]: 22: Hoare triple {6070#true} assume true; {6070#true} is VALID [2022-04-27 12:49:12,722 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6070#true} {6123#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #68#return; {6123#(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 12:49:12,722 INFO L272 TraceCheckUtils]: 24: Hoare triple {6123#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6070#true} is VALID [2022-04-27 12:49:12,722 INFO L290 TraceCheckUtils]: 25: Hoare triple {6070#true} ~cond := #in~cond; {6070#true} is VALID [2022-04-27 12:49:12,722 INFO L290 TraceCheckUtils]: 26: Hoare triple {6070#true} assume !(0 == ~cond); {6070#true} is VALID [2022-04-27 12:49:12,723 INFO L290 TraceCheckUtils]: 27: Hoare triple {6070#true} assume true; {6070#true} is VALID [2022-04-27 12:49:12,723 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {6070#true} {6123#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #70#return; {6123#(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 12:49:12,723 INFO L272 TraceCheckUtils]: 29: Hoare triple {6123#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6070#true} is VALID [2022-04-27 12:49:12,724 INFO L290 TraceCheckUtils]: 30: Hoare triple {6070#true} ~cond := #in~cond; {6070#true} is VALID [2022-04-27 12:49:12,724 INFO L290 TraceCheckUtils]: 31: Hoare triple {6070#true} assume !(0 == ~cond); {6070#true} is VALID [2022-04-27 12:49:12,724 INFO L290 TraceCheckUtils]: 32: Hoare triple {6070#true} assume true; {6070#true} is VALID [2022-04-27 12:49:12,724 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {6070#true} {6123#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #72#return; {6123#(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 12:49:12,725 INFO L290 TraceCheckUtils]: 34: Hoare triple {6123#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {6123#(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 12:49:12,725 INFO L290 TraceCheckUtils]: 35: Hoare triple {6123#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {6181#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0))} is VALID [2022-04-27 12:49:12,726 INFO L290 TraceCheckUtils]: 36: Hoare triple {6181#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6181#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0))} is VALID [2022-04-27 12:49:12,726 INFO L290 TraceCheckUtils]: 37: Hoare triple {6181#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0))} assume !!(#t~post6 < 10);havoc #t~post6; {6181#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0))} is VALID [2022-04-27 12:49:12,726 INFO L272 TraceCheckUtils]: 38: Hoare triple {6181#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {6070#true} is VALID [2022-04-27 12:49:12,726 INFO L290 TraceCheckUtils]: 39: Hoare triple {6070#true} ~cond := #in~cond; {6070#true} is VALID [2022-04-27 12:49:12,726 INFO L290 TraceCheckUtils]: 40: Hoare triple {6070#true} assume !(0 == ~cond); {6070#true} is VALID [2022-04-27 12:49:12,726 INFO L290 TraceCheckUtils]: 41: Hoare triple {6070#true} assume true; {6070#true} is VALID [2022-04-27 12:49:12,727 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {6070#true} {6181#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0))} #68#return; {6181#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0))} is VALID [2022-04-27 12:49:12,728 INFO L272 TraceCheckUtils]: 43: Hoare triple {6181#(and (= (+ (* (- 1) main_~p~0) 1) 0) (= main_~y~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (- 1) main_~r~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6206#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:49:12,728 INFO L290 TraceCheckUtils]: 44: Hoare triple {6206#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6210#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:49:12,729 INFO L290 TraceCheckUtils]: 45: Hoare triple {6210#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6071#false} is VALID [2022-04-27 12:49:12,729 INFO L290 TraceCheckUtils]: 46: Hoare triple {6071#false} assume !false; {6071#false} is VALID [2022-04-27 12:49:12,729 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 8 proven. 4 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-27 12:49:12,729 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:49:12,929 INFO L290 TraceCheckUtils]: 46: Hoare triple {6071#false} assume !false; {6071#false} is VALID [2022-04-27 12:49:12,930 INFO L290 TraceCheckUtils]: 45: Hoare triple {6210#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6071#false} is VALID [2022-04-27 12:49:12,930 INFO L290 TraceCheckUtils]: 44: Hoare triple {6206#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6210#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:49:12,931 INFO L272 TraceCheckUtils]: 43: Hoare triple {6226#(= 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)); {6206#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:49:12,932 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {6070#true} {6226#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #68#return; {6226#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:49:12,932 INFO L290 TraceCheckUtils]: 41: Hoare triple {6070#true} assume true; {6070#true} is VALID [2022-04-27 12:49:12,932 INFO L290 TraceCheckUtils]: 40: Hoare triple {6070#true} assume !(0 == ~cond); {6070#true} is VALID [2022-04-27 12:49:12,932 INFO L290 TraceCheckUtils]: 39: Hoare triple {6070#true} ~cond := #in~cond; {6070#true} is VALID [2022-04-27 12:49:12,932 INFO L272 TraceCheckUtils]: 38: Hoare triple {6226#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {6070#true} is VALID [2022-04-27 12:49:12,932 INFO L290 TraceCheckUtils]: 37: Hoare triple {6226#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {6226#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:49:12,933 INFO L290 TraceCheckUtils]: 36: Hoare triple {6226#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6226#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:49:13,401 INFO L290 TraceCheckUtils]: 35: Hoare triple {6251#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {6226#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:49:13,402 INFO L290 TraceCheckUtils]: 34: Hoare triple {6251#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} assume !!(~a~0 != ~b~0); {6251#(= (+ 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 12:49:13,402 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {6070#true} {6251#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #72#return; {6251#(= (+ 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 12:49:13,403 INFO L290 TraceCheckUtils]: 32: Hoare triple {6070#true} assume true; {6070#true} is VALID [2022-04-27 12:49:13,403 INFO L290 TraceCheckUtils]: 31: Hoare triple {6070#true} assume !(0 == ~cond); {6070#true} is VALID [2022-04-27 12:49:13,403 INFO L290 TraceCheckUtils]: 30: Hoare triple {6070#true} ~cond := #in~cond; {6070#true} is VALID [2022-04-27 12:49:13,403 INFO L272 TraceCheckUtils]: 29: Hoare triple {6251#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6070#true} is VALID [2022-04-27 12:49:13,403 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {6070#true} {6251#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #70#return; {6251#(= (+ 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 12:49:13,404 INFO L290 TraceCheckUtils]: 27: Hoare triple {6070#true} assume true; {6070#true} is VALID [2022-04-27 12:49:13,404 INFO L290 TraceCheckUtils]: 26: Hoare triple {6070#true} assume !(0 == ~cond); {6070#true} is VALID [2022-04-27 12:49:13,404 INFO L290 TraceCheckUtils]: 25: Hoare triple {6070#true} ~cond := #in~cond; {6070#true} is VALID [2022-04-27 12:49:13,404 INFO L272 TraceCheckUtils]: 24: Hoare triple {6251#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6070#true} is VALID [2022-04-27 12:49:13,404 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6070#true} {6251#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} #68#return; {6251#(= (+ 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 12:49:13,404 INFO L290 TraceCheckUtils]: 22: Hoare triple {6070#true} assume true; {6070#true} is VALID [2022-04-27 12:49:13,404 INFO L290 TraceCheckUtils]: 21: Hoare triple {6070#true} assume !(0 == ~cond); {6070#true} is VALID [2022-04-27 12:49:13,404 INFO L290 TraceCheckUtils]: 20: Hoare triple {6070#true} ~cond := #in~cond; {6070#true} is VALID [2022-04-27 12:49:13,405 INFO L272 TraceCheckUtils]: 19: Hoare triple {6251#(= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {6070#true} is VALID [2022-04-27 12:49:13,408 INFO L290 TraceCheckUtils]: 18: Hoare triple {6251#(= (+ 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 < 10);havoc #t~post6; {6251#(= (+ 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 12:49:13,409 INFO L290 TraceCheckUtils]: 17: Hoare triple {6251#(= (+ 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; {6251#(= (+ 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 12:49:13,409 INFO L290 TraceCheckUtils]: 16: Hoare triple {6070#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {6251#(= (+ 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 12:49:13,410 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {6070#true} {6070#true} #66#return; {6070#true} is VALID [2022-04-27 12:49:13,410 INFO L290 TraceCheckUtils]: 14: Hoare triple {6070#true} assume true; {6070#true} is VALID [2022-04-27 12:49:13,410 INFO L290 TraceCheckUtils]: 13: Hoare triple {6070#true} assume !(0 == ~cond); {6070#true} is VALID [2022-04-27 12:49:13,410 INFO L290 TraceCheckUtils]: 12: Hoare triple {6070#true} ~cond := #in~cond; {6070#true} is VALID [2022-04-27 12:49:13,410 INFO L272 TraceCheckUtils]: 11: Hoare triple {6070#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6070#true} is VALID [2022-04-27 12:49:13,410 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6070#true} {6070#true} #64#return; {6070#true} is VALID [2022-04-27 12:49:13,410 INFO L290 TraceCheckUtils]: 9: Hoare triple {6070#true} assume true; {6070#true} is VALID [2022-04-27 12:49:13,410 INFO L290 TraceCheckUtils]: 8: Hoare triple {6070#true} assume !(0 == ~cond); {6070#true} is VALID [2022-04-27 12:49:13,410 INFO L290 TraceCheckUtils]: 7: Hoare triple {6070#true} ~cond := #in~cond; {6070#true} is VALID [2022-04-27 12:49:13,410 INFO L272 TraceCheckUtils]: 6: Hoare triple {6070#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6070#true} is VALID [2022-04-27 12:49:13,410 INFO L290 TraceCheckUtils]: 5: Hoare triple {6070#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6070#true} is VALID [2022-04-27 12:49:13,410 INFO L272 TraceCheckUtils]: 4: Hoare triple {6070#true} call #t~ret7 := main(); {6070#true} is VALID [2022-04-27 12:49:13,410 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6070#true} {6070#true} #82#return; {6070#true} is VALID [2022-04-27 12:49:13,410 INFO L290 TraceCheckUtils]: 2: Hoare triple {6070#true} assume true; {6070#true} is VALID [2022-04-27 12:49:13,410 INFO L290 TraceCheckUtils]: 1: Hoare triple {6070#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6070#true} is VALID [2022-04-27 12:49:13,411 INFO L272 TraceCheckUtils]: 0: Hoare triple {6070#true} call ULTIMATE.init(); {6070#true} is VALID [2022-04-27 12:49:13,411 INFO L134 CoverageAnalysis]: Checked inductivity of 40 backedges. 8 proven. 4 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-27 12:49:13,411 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:49:13,411 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1752302300] [2022-04-27 12:49:13,411 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:49:13,411 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [918177457] [2022-04-27 12:49:13,411 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [918177457] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:49:13,411 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:49:13,411 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 8 [2022-04-27 12:49:13,411 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1545700702] [2022-04-27 12:49:13,412 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:49:13,412 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) Word has length 47 [2022-04-27 12:49:13,412 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:49:13,412 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-27 12:49:13,520 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:49:13,520 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-27 12:49:13,520 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:49:13,520 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-27 12:49:13,520 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-04-27 12:49:13,521 INFO L87 Difference]: Start difference. First operand 214 states and 262 transitions. Second operand has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-27 12:49:14,860 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:49:14,861 INFO L93 Difference]: Finished difference Result 253 states and 314 transitions. [2022-04-27 12:49:14,861 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-27 12:49:14,861 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) Word has length 47 [2022-04-27 12:49:14,861 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:49:14,861 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-27 12:49:14,862 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 75 transitions. [2022-04-27 12:49:14,862 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-27 12:49:14,863 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 75 transitions. [2022-04-27 12:49:14,863 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 75 transitions. [2022-04-27 12:49:15,052 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 12:49:15,056 INFO L225 Difference]: With dead ends: 253 [2022-04-27 12:49:15,056 INFO L226 Difference]: Without dead ends: 229 [2022-04-27 12:49:15,057 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 96 GetRequests, 86 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=31, Invalid=79, Unknown=0, NotChecked=0, Total=110 [2022-04-27 12:49:15,057 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 14 mSDsluCounter, 108 mSDsCounter, 0 mSdLazyCounter, 158 mSolverCounterSat, 34 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 152 SdHoareTripleChecker+Invalid, 192 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 34 IncrementalHoareTripleChecker+Valid, 158 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-27 12:49:15,058 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [14 Valid, 152 Invalid, 192 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [34 Valid, 158 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-27 12:49:15,058 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 229 states. [2022-04-27 12:49:15,122 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 229 to 210. [2022-04-27 12:49:15,123 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:49:15,123 INFO L82 GeneralOperation]: Start isEquivalent. First operand 229 states. Second operand has 210 states, 134 states have (on average 1.126865671641791) internal successors, (151), 142 states have internal predecessors, (151), 47 states have call successors, (47), 29 states have call predecessors, (47), 28 states have return successors, (42), 38 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-27 12:49:15,123 INFO L74 IsIncluded]: Start isIncluded. First operand 229 states. Second operand has 210 states, 134 states have (on average 1.126865671641791) internal successors, (151), 142 states have internal predecessors, (151), 47 states have call successors, (47), 29 states have call predecessors, (47), 28 states have return successors, (42), 38 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-27 12:49:15,124 INFO L87 Difference]: Start difference. First operand 229 states. Second operand has 210 states, 134 states have (on average 1.126865671641791) internal successors, (151), 142 states have internal predecessors, (151), 47 states have call successors, (47), 29 states have call predecessors, (47), 28 states have return successors, (42), 38 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-27 12:49:15,128 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:49:15,128 INFO L93 Difference]: Finished difference Result 229 states and 273 transitions. [2022-04-27 12:49:15,128 INFO L276 IsEmpty]: Start isEmpty. Operand 229 states and 273 transitions. [2022-04-27 12:49:15,129 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:49:15,129 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:49:15,129 INFO L74 IsIncluded]: Start isIncluded. First operand has 210 states, 134 states have (on average 1.126865671641791) internal successors, (151), 142 states have internal predecessors, (151), 47 states have call successors, (47), 29 states have call predecessors, (47), 28 states have return successors, (42), 38 states have call predecessors, (42), 42 states have call successors, (42) Second operand 229 states. [2022-04-27 12:49:15,130 INFO L87 Difference]: Start difference. First operand has 210 states, 134 states have (on average 1.126865671641791) internal successors, (151), 142 states have internal predecessors, (151), 47 states have call successors, (47), 29 states have call predecessors, (47), 28 states have return successors, (42), 38 states have call predecessors, (42), 42 states have call successors, (42) Second operand 229 states. [2022-04-27 12:49:15,134 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:49:15,134 INFO L93 Difference]: Finished difference Result 229 states and 273 transitions. [2022-04-27 12:49:15,134 INFO L276 IsEmpty]: Start isEmpty. Operand 229 states and 273 transitions. [2022-04-27 12:49:15,135 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:49:15,135 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:49:15,135 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:49:15,135 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:49:15,135 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 210 states, 134 states have (on average 1.126865671641791) internal successors, (151), 142 states have internal predecessors, (151), 47 states have call successors, (47), 29 states have call predecessors, (47), 28 states have return successors, (42), 38 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-27 12:49:15,139 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 210 states to 210 states and 240 transitions. [2022-04-27 12:49:15,140 INFO L78 Accepts]: Start accepts. Automaton has 210 states and 240 transitions. Word has length 47 [2022-04-27 12:49:15,140 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:49:15,140 INFO L495 AbstractCegarLoop]: Abstraction has 210 states and 240 transitions. [2022-04-27 12:49:15,140 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-27 12:49:15,140 INFO L276 IsEmpty]: Start isEmpty. Operand 210 states and 240 transitions. [2022-04-27 12:49:15,141 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-04-27 12:49:15,141 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:49:15,141 INFO L195 NwaCegarLoop]: trace histogram [7, 6, 6, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:49:15,170 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-27 12:49:15,355 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,SelfDestructingSolverStorable9 [2022-04-27 12:49:15,355 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:49:15,355 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:49:15,355 INFO L85 PathProgramCache]: Analyzing trace with hash 1997533323, now seen corresponding path program 1 times [2022-04-27 12:49:15,356 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:49:15,356 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1561862273] [2022-04-27 12:49:15,356 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:49:15,356 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:49:15,365 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:49:15,365 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [810383993] [2022-04-27 12:49:15,365 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:49:15,365 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:49:15,365 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:49:15,371 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 12:49:15,383 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 12:49:15,422 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:49:15,423 INFO L263 TraceCheckSpWp]: Trace formula consists of 179 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-27 12:49:15,432 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:49:15,434 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:49:15,790 INFO L272 TraceCheckUtils]: 0: Hoare triple {7497#true} call ULTIMATE.init(); {7497#true} is VALID [2022-04-27 12:49:15,791 INFO L290 TraceCheckUtils]: 1: Hoare triple {7497#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {7497#true} is VALID [2022-04-27 12:49:15,791 INFO L290 TraceCheckUtils]: 2: Hoare triple {7497#true} assume true; {7497#true} is VALID [2022-04-27 12:49:15,791 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7497#true} {7497#true} #82#return; {7497#true} is VALID [2022-04-27 12:49:15,791 INFO L272 TraceCheckUtils]: 4: Hoare triple {7497#true} call #t~ret7 := main(); {7497#true} is VALID [2022-04-27 12:49:15,791 INFO L290 TraceCheckUtils]: 5: Hoare triple {7497#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7497#true} is VALID [2022-04-27 12:49:15,791 INFO L272 TraceCheckUtils]: 6: Hoare triple {7497#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7497#true} is VALID [2022-04-27 12:49:15,791 INFO L290 TraceCheckUtils]: 7: Hoare triple {7497#true} ~cond := #in~cond; {7497#true} is VALID [2022-04-27 12:49:15,791 INFO L290 TraceCheckUtils]: 8: Hoare triple {7497#true} assume !(0 == ~cond); {7497#true} is VALID [2022-04-27 12:49:15,791 INFO L290 TraceCheckUtils]: 9: Hoare triple {7497#true} assume true; {7497#true} is VALID [2022-04-27 12:49:15,791 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7497#true} {7497#true} #64#return; {7497#true} is VALID [2022-04-27 12:49:15,791 INFO L272 TraceCheckUtils]: 11: Hoare triple {7497#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7497#true} is VALID [2022-04-27 12:49:15,791 INFO L290 TraceCheckUtils]: 12: Hoare triple {7497#true} ~cond := #in~cond; {7497#true} is VALID [2022-04-27 12:49:15,791 INFO L290 TraceCheckUtils]: 13: Hoare triple {7497#true} assume !(0 == ~cond); {7497#true} is VALID [2022-04-27 12:49:15,791 INFO L290 TraceCheckUtils]: 14: Hoare triple {7497#true} assume true; {7497#true} is VALID [2022-04-27 12:49:15,791 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7497#true} {7497#true} #66#return; {7497#true} is VALID [2022-04-27 12:49:15,792 INFO L290 TraceCheckUtils]: 16: Hoare triple {7497#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7550#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:49:15,792 INFO L290 TraceCheckUtils]: 17: Hoare triple {7550#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7550#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:49:15,793 INFO L290 TraceCheckUtils]: 18: Hoare triple {7550#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {7550#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:49:15,793 INFO L272 TraceCheckUtils]: 19: Hoare triple {7550#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {7497#true} is VALID [2022-04-27 12:49:15,793 INFO L290 TraceCheckUtils]: 20: Hoare triple {7497#true} ~cond := #in~cond; {7497#true} is VALID [2022-04-27 12:49:15,793 INFO L290 TraceCheckUtils]: 21: Hoare triple {7497#true} assume !(0 == ~cond); {7497#true} is VALID [2022-04-27 12:49:15,793 INFO L290 TraceCheckUtils]: 22: Hoare triple {7497#true} assume true; {7497#true} is VALID [2022-04-27 12:49:15,794 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7497#true} {7550#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #68#return; {7550#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:49:15,794 INFO L272 TraceCheckUtils]: 24: Hoare triple {7550#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7497#true} is VALID [2022-04-27 12:49:15,794 INFO L290 TraceCheckUtils]: 25: Hoare triple {7497#true} ~cond := #in~cond; {7497#true} is VALID [2022-04-27 12:49:15,794 INFO L290 TraceCheckUtils]: 26: Hoare triple {7497#true} assume !(0 == ~cond); {7497#true} is VALID [2022-04-27 12:49:15,794 INFO L290 TraceCheckUtils]: 27: Hoare triple {7497#true} assume true; {7497#true} is VALID [2022-04-27 12:49:15,795 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {7497#true} {7550#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #70#return; {7550#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:49:15,795 INFO L272 TraceCheckUtils]: 29: Hoare triple {7550#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7497#true} is VALID [2022-04-27 12:49:15,795 INFO L290 TraceCheckUtils]: 30: Hoare triple {7497#true} ~cond := #in~cond; {7497#true} is VALID [2022-04-27 12:49:15,795 INFO L290 TraceCheckUtils]: 31: Hoare triple {7497#true} assume !(0 == ~cond); {7497#true} is VALID [2022-04-27 12:49:15,795 INFO L290 TraceCheckUtils]: 32: Hoare triple {7497#true} assume true; {7497#true} is VALID [2022-04-27 12:49:15,796 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {7497#true} {7550#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} #72#return; {7550#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:49:15,796 INFO L290 TraceCheckUtils]: 34: Hoare triple {7550#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(~a~0 != ~b~0); {7550#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:49:15,797 INFO L290 TraceCheckUtils]: 35: Hoare triple {7550#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {7608#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-27 12:49:15,797 INFO L290 TraceCheckUtils]: 36: Hoare triple {7608#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7608#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-27 12:49:15,798 INFO L290 TraceCheckUtils]: 37: Hoare triple {7608#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} assume !!(#t~post6 < 10);havoc #t~post6; {7608#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-27 12:49:15,798 INFO L272 TraceCheckUtils]: 38: Hoare triple {7608#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {7497#true} is VALID [2022-04-27 12:49:15,798 INFO L290 TraceCheckUtils]: 39: Hoare triple {7497#true} ~cond := #in~cond; {7497#true} is VALID [2022-04-27 12:49:15,798 INFO L290 TraceCheckUtils]: 40: Hoare triple {7497#true} assume !(0 == ~cond); {7497#true} is VALID [2022-04-27 12:49:15,798 INFO L290 TraceCheckUtils]: 41: Hoare triple {7497#true} assume true; {7497#true} is VALID [2022-04-27 12:49:15,799 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {7497#true} {7608#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} #68#return; {7608#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-27 12:49:15,799 INFO L272 TraceCheckUtils]: 43: Hoare triple {7608#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7497#true} is VALID [2022-04-27 12:49:15,799 INFO L290 TraceCheckUtils]: 44: Hoare triple {7497#true} ~cond := #in~cond; {7497#true} is VALID [2022-04-27 12:49:15,799 INFO L290 TraceCheckUtils]: 45: Hoare triple {7497#true} assume !(0 == ~cond); {7497#true} is VALID [2022-04-27 12:49:15,799 INFO L290 TraceCheckUtils]: 46: Hoare triple {7497#true} assume true; {7497#true} is VALID [2022-04-27 12:49:15,799 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {7497#true} {7608#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} #70#return; {7608#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-27 12:49:15,800 INFO L272 TraceCheckUtils]: 48: Hoare triple {7608#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7497#true} is VALID [2022-04-27 12:49:15,800 INFO L290 TraceCheckUtils]: 49: Hoare triple {7497#true} ~cond := #in~cond; {7497#true} is VALID [2022-04-27 12:49:15,800 INFO L290 TraceCheckUtils]: 50: Hoare triple {7497#true} assume !(0 == ~cond); {7497#true} is VALID [2022-04-27 12:49:15,800 INFO L290 TraceCheckUtils]: 51: Hoare triple {7497#true} assume true; {7497#true} is VALID [2022-04-27 12:49:15,800 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {7497#true} {7608#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} #72#return; {7608#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-27 12:49:15,801 INFO L290 TraceCheckUtils]: 53: Hoare triple {7608#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} assume !!(~a~0 != ~b~0); {7608#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} is VALID [2022-04-27 12:49:15,801 INFO L290 TraceCheckUtils]: 54: Hoare triple {7608#(and (= main_~s~0 1) (= main_~p~0 (+ (* (- 1) main_~q~0) 1)) (= main_~r~0 (* (- 1) main_~s~0)) (= main_~q~0 0))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {7666#(and (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (- 1) main_~r~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} is VALID [2022-04-27 12:49:15,802 INFO L290 TraceCheckUtils]: 55: Hoare triple {7666#(and (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (- 1) main_~r~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7666#(and (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (- 1) main_~r~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} is VALID [2022-04-27 12:49:15,802 INFO L290 TraceCheckUtils]: 56: Hoare triple {7666#(and (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (- 1) main_~r~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {7666#(and (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (- 1) main_~r~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} is VALID [2022-04-27 12:49:15,803 INFO L272 TraceCheckUtils]: 57: Hoare triple {7666#(and (= (+ (* (- 1) main_~r~0) 1) main_~s~0) (= (- 1) main_~r~0) (= main_~q~0 (* (- 1) main_~p~0)) (= main_~p~0 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {7676#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:49:15,803 INFO L290 TraceCheckUtils]: 58: Hoare triple {7676#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7680#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:49:15,804 INFO L290 TraceCheckUtils]: 59: Hoare triple {7680#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7498#false} is VALID [2022-04-27 12:49:15,804 INFO L290 TraceCheckUtils]: 60: Hoare triple {7498#false} assume !false; {7498#false} is VALID [2022-04-27 12:49:15,804 INFO L134 CoverageAnalysis]: Checked inductivity of 89 backedges. 12 proven. 13 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2022-04-27 12:49:15,804 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:49:16,038 INFO L290 TraceCheckUtils]: 60: Hoare triple {7498#false} assume !false; {7498#false} is VALID [2022-04-27 12:49:16,039 INFO L290 TraceCheckUtils]: 59: Hoare triple {7680#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7498#false} is VALID [2022-04-27 12:49:16,039 INFO L290 TraceCheckUtils]: 58: Hoare triple {7676#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7680#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:49:16,040 INFO L272 TraceCheckUtils]: 57: Hoare triple {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {7676#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:49:16,040 INFO L290 TraceCheckUtils]: 56: Hoare triple {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !!(#t~post6 < 10);havoc #t~post6; {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:49:16,041 INFO L290 TraceCheckUtils]: 55: Hoare triple {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:49:16,044 INFO L290 TraceCheckUtils]: 54: Hoare triple {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !(~a~0 > ~b~0);~b~0 := ~b~0 - ~a~0;~q~0 := ~q~0 - ~p~0;~s~0 := ~s~0 - ~r~0; {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:49:16,044 INFO L290 TraceCheckUtils]: 53: Hoare triple {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !!(~a~0 != ~b~0); {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:49:16,045 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {7497#true} {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #72#return; {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:49:16,045 INFO L290 TraceCheckUtils]: 51: Hoare triple {7497#true} assume true; {7497#true} is VALID [2022-04-27 12:49:16,045 INFO L290 TraceCheckUtils]: 50: Hoare triple {7497#true} assume !(0 == ~cond); {7497#true} is VALID [2022-04-27 12:49:16,045 INFO L290 TraceCheckUtils]: 49: Hoare triple {7497#true} ~cond := #in~cond; {7497#true} is VALID [2022-04-27 12:49:16,045 INFO L272 TraceCheckUtils]: 48: Hoare triple {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7497#true} is VALID [2022-04-27 12:49:16,046 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {7497#true} {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #70#return; {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:49:16,046 INFO L290 TraceCheckUtils]: 46: Hoare triple {7497#true} assume true; {7497#true} is VALID [2022-04-27 12:49:16,046 INFO L290 TraceCheckUtils]: 45: Hoare triple {7497#true} assume !(0 == ~cond); {7497#true} is VALID [2022-04-27 12:49:16,046 INFO L290 TraceCheckUtils]: 44: Hoare triple {7497#true} ~cond := #in~cond; {7497#true} is VALID [2022-04-27 12:49:16,046 INFO L272 TraceCheckUtils]: 43: Hoare triple {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7497#true} is VALID [2022-04-27 12:49:16,046 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {7497#true} {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #68#return; {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:49:16,046 INFO L290 TraceCheckUtils]: 41: Hoare triple {7497#true} assume true; {7497#true} is VALID [2022-04-27 12:49:16,046 INFO L290 TraceCheckUtils]: 40: Hoare triple {7497#true} assume !(0 == ~cond); {7497#true} is VALID [2022-04-27 12:49:16,047 INFO L290 TraceCheckUtils]: 39: Hoare triple {7497#true} ~cond := #in~cond; {7497#true} is VALID [2022-04-27 12:49:16,047 INFO L272 TraceCheckUtils]: 38: Hoare triple {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {7497#true} is VALID [2022-04-27 12:49:16,047 INFO L290 TraceCheckUtils]: 37: Hoare triple {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !!(#t~post6 < 10);havoc #t~post6; {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:49:16,047 INFO L290 TraceCheckUtils]: 36: Hoare triple {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:49:16,050 INFO L290 TraceCheckUtils]: 35: Hoare triple {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:49:16,050 INFO L290 TraceCheckUtils]: 34: Hoare triple {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !!(~a~0 != ~b~0); {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:49:16,051 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {7497#true} {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #72#return; {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:49:16,051 INFO L290 TraceCheckUtils]: 32: Hoare triple {7497#true} assume true; {7497#true} is VALID [2022-04-27 12:49:16,051 INFO L290 TraceCheckUtils]: 31: Hoare triple {7497#true} assume !(0 == ~cond); {7497#true} is VALID [2022-04-27 12:49:16,051 INFO L290 TraceCheckUtils]: 30: Hoare triple {7497#true} ~cond := #in~cond; {7497#true} is VALID [2022-04-27 12:49:16,051 INFO L272 TraceCheckUtils]: 29: Hoare triple {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7497#true} is VALID [2022-04-27 12:49:16,051 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {7497#true} {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #70#return; {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:49:16,051 INFO L290 TraceCheckUtils]: 27: Hoare triple {7497#true} assume true; {7497#true} is VALID [2022-04-27 12:49:16,052 INFO L290 TraceCheckUtils]: 26: Hoare triple {7497#true} assume !(0 == ~cond); {7497#true} is VALID [2022-04-27 12:49:16,052 INFO L290 TraceCheckUtils]: 25: Hoare triple {7497#true} ~cond := #in~cond; {7497#true} is VALID [2022-04-27 12:49:16,052 INFO L272 TraceCheckUtils]: 24: Hoare triple {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7497#true} is VALID [2022-04-27 12:49:16,052 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7497#true} {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #68#return; {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:49:16,052 INFO L290 TraceCheckUtils]: 22: Hoare triple {7497#true} assume true; {7497#true} is VALID [2022-04-27 12:49:16,052 INFO L290 TraceCheckUtils]: 21: Hoare triple {7497#true} assume !(0 == ~cond); {7497#true} is VALID [2022-04-27 12:49:16,052 INFO L290 TraceCheckUtils]: 20: Hoare triple {7497#true} ~cond := #in~cond; {7497#true} is VALID [2022-04-27 12:49:16,052 INFO L272 TraceCheckUtils]: 19: Hoare triple {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {7497#true} is VALID [2022-04-27 12:49:16,053 INFO L290 TraceCheckUtils]: 18: Hoare triple {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} assume !!(#t~post6 < 10);havoc #t~post6; {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:49:16,053 INFO L290 TraceCheckUtils]: 17: Hoare triple {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:49:16,053 INFO L290 TraceCheckUtils]: 16: Hoare triple {7497#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7696#(= (* main_~p~0 main_~s~0) (+ (* main_~q~0 main_~r~0) 1))} is VALID [2022-04-27 12:49:16,053 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7497#true} {7497#true} #66#return; {7497#true} is VALID [2022-04-27 12:49:16,054 INFO L290 TraceCheckUtils]: 14: Hoare triple {7497#true} assume true; {7497#true} is VALID [2022-04-27 12:49:16,054 INFO L290 TraceCheckUtils]: 13: Hoare triple {7497#true} assume !(0 == ~cond); {7497#true} is VALID [2022-04-27 12:49:16,054 INFO L290 TraceCheckUtils]: 12: Hoare triple {7497#true} ~cond := #in~cond; {7497#true} is VALID [2022-04-27 12:49:16,054 INFO L272 TraceCheckUtils]: 11: Hoare triple {7497#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7497#true} is VALID [2022-04-27 12:49:16,054 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7497#true} {7497#true} #64#return; {7497#true} is VALID [2022-04-27 12:49:16,054 INFO L290 TraceCheckUtils]: 9: Hoare triple {7497#true} assume true; {7497#true} is VALID [2022-04-27 12:49:16,054 INFO L290 TraceCheckUtils]: 8: Hoare triple {7497#true} assume !(0 == ~cond); {7497#true} is VALID [2022-04-27 12:49:16,054 INFO L290 TraceCheckUtils]: 7: Hoare triple {7497#true} ~cond := #in~cond; {7497#true} is VALID [2022-04-27 12:49:16,054 INFO L272 TraceCheckUtils]: 6: Hoare triple {7497#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7497#true} is VALID [2022-04-27 12:49:16,054 INFO L290 TraceCheckUtils]: 5: Hoare triple {7497#true} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7497#true} is VALID [2022-04-27 12:49:16,054 INFO L272 TraceCheckUtils]: 4: Hoare triple {7497#true} call #t~ret7 := main(); {7497#true} is VALID [2022-04-27 12:49:16,054 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7497#true} {7497#true} #82#return; {7497#true} is VALID [2022-04-27 12:49:16,054 INFO L290 TraceCheckUtils]: 2: Hoare triple {7497#true} assume true; {7497#true} is VALID [2022-04-27 12:49:16,054 INFO L290 TraceCheckUtils]: 1: Hoare triple {7497#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {7497#true} is VALID [2022-04-27 12:49:16,054 INFO L272 TraceCheckUtils]: 0: Hoare triple {7497#true} call ULTIMATE.init(); {7497#true} is VALID [2022-04-27 12:49:16,055 INFO L134 CoverageAnalysis]: Checked inductivity of 89 backedges. 12 proven. 0 refuted. 0 times theorem prover too weak. 77 trivial. 0 not checked. [2022-04-27 12:49:16,055 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:49:16,055 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1561862273] [2022-04-27 12:49:16,055 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:49:16,055 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [810383993] [2022-04-27 12:49:16,055 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [810383993] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-27 12:49:16,055 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 12:49:16,055 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [7] total 8 [2022-04-27 12:49:16,055 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [567075364] [2022-04-27 12:49:16,055 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:49:16,056 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 61 [2022-04-27 12:49:16,056 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:49:16,056 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 12:49:16,080 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:49:16,081 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:49:16,081 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:49:16,081 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:49:16,081 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-04-27 12:49:16,081 INFO L87 Difference]: Start difference. First operand 210 states and 240 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 12:49:16,282 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:49:16,283 INFO L93 Difference]: Finished difference Result 216 states and 245 transitions. [2022-04-27 12:49:16,283 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:49:16,283 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 61 [2022-04-27 12:49:16,283 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:49:16,283 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 12:49:16,284 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 42 transitions. [2022-04-27 12:49:16,284 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 12:49:16,284 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 42 transitions. [2022-04-27 12:49:16,285 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 42 transitions. [2022-04-27 12:49:16,318 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:49:16,321 INFO L225 Difference]: With dead ends: 216 [2022-04-27 12:49:16,321 INFO L226 Difference]: Without dead ends: 192 [2022-04-27 12:49:16,321 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 122 GetRequests, 112 SyntacticMatches, 3 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=20, Invalid=52, Unknown=0, NotChecked=0, Total=72 [2022-04-27 12:49:16,322 INFO L413 NwaCegarLoop]: 32 mSDtfsCounter, 7 mSDsluCounter, 69 mSDsCounter, 0 mSdLazyCounter, 32 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 101 SdHoareTripleChecker+Invalid, 33 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 32 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:49:16,322 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [9 Valid, 101 Invalid, 33 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 32 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:49:16,322 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 192 states. [2022-04-27 12:49:16,377 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 192 to 189. [2022-04-27 12:49:16,378 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:49:16,378 INFO L82 GeneralOperation]: Start isEquivalent. First operand 192 states. Second operand has 189 states, 125 states have (on average 1.112) internal successors, (139), 129 states have internal predecessors, (139), 38 states have call successors, (38), 26 states have call predecessors, (38), 25 states have return successors, (35), 33 states have call predecessors, (35), 35 states have call successors, (35) [2022-04-27 12:49:16,378 INFO L74 IsIncluded]: Start isIncluded. First operand 192 states. Second operand has 189 states, 125 states have (on average 1.112) internal successors, (139), 129 states have internal predecessors, (139), 38 states have call successors, (38), 26 states have call predecessors, (38), 25 states have return successors, (35), 33 states have call predecessors, (35), 35 states have call successors, (35) [2022-04-27 12:49:16,379 INFO L87 Difference]: Start difference. First operand 192 states. Second operand has 189 states, 125 states have (on average 1.112) internal successors, (139), 129 states have internal predecessors, (139), 38 states have call successors, (38), 26 states have call predecessors, (38), 25 states have return successors, (35), 33 states have call predecessors, (35), 35 states have call successors, (35) [2022-04-27 12:49:16,382 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:49:16,382 INFO L93 Difference]: Finished difference Result 192 states and 216 transitions. [2022-04-27 12:49:16,382 INFO L276 IsEmpty]: Start isEmpty. Operand 192 states and 216 transitions. [2022-04-27 12:49:16,382 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:49:16,382 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:49:16,383 INFO L74 IsIncluded]: Start isIncluded. First operand has 189 states, 125 states have (on average 1.112) internal successors, (139), 129 states have internal predecessors, (139), 38 states have call successors, (38), 26 states have call predecessors, (38), 25 states have return successors, (35), 33 states have call predecessors, (35), 35 states have call successors, (35) Second operand 192 states. [2022-04-27 12:49:16,383 INFO L87 Difference]: Start difference. First operand has 189 states, 125 states have (on average 1.112) internal successors, (139), 129 states have internal predecessors, (139), 38 states have call successors, (38), 26 states have call predecessors, (38), 25 states have return successors, (35), 33 states have call predecessors, (35), 35 states have call successors, (35) Second operand 192 states. [2022-04-27 12:49:16,386 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:49:16,386 INFO L93 Difference]: Finished difference Result 192 states and 216 transitions. [2022-04-27 12:49:16,386 INFO L276 IsEmpty]: Start isEmpty. Operand 192 states and 216 transitions. [2022-04-27 12:49:16,387 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:49:16,387 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:49:16,387 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:49:16,387 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:49:16,387 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 189 states, 125 states have (on average 1.112) internal successors, (139), 129 states have internal predecessors, (139), 38 states have call successors, (38), 26 states have call predecessors, (38), 25 states have return successors, (35), 33 states have call predecessors, (35), 35 states have call successors, (35) [2022-04-27 12:49:16,390 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 189 states to 189 states and 212 transitions. [2022-04-27 12:49:16,391 INFO L78 Accepts]: Start accepts. Automaton has 189 states and 212 transitions. Word has length 61 [2022-04-27 12:49:16,391 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:49:16,392 INFO L495 AbstractCegarLoop]: Abstraction has 189 states and 212 transitions. [2022-04-27 12:49:16,392 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 12:49:16,392 INFO L276 IsEmpty]: Start isEmpty. Operand 189 states and 212 transitions. [2022-04-27 12:49:16,394 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 100 [2022-04-27 12:49:16,394 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:49:16,395 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:49:16,414 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 12:49:16,602 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10,10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:49:16,602 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:49:16,602 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:49:16,602 INFO L85 PathProgramCache]: Analyzing trace with hash -1449122399, now seen corresponding path program 2 times [2022-04-27 12:49:16,603 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:49:16,603 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1837691290] [2022-04-27 12:49:16,603 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:49:16,603 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:49:16,613 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:49:16,614 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [986846756] [2022-04-27 12:49:16,614 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 12:49:16,614 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:49:16,614 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:49:16,615 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 12:49:16,625 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 12:49:16,680 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 12:49:16,680 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 12:49:16,681 INFO L263 TraceCheckSpWp]: Trace formula consists of 259 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-27 12:49:16,697 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:49:16,699 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:49:17,108 INFO L272 TraceCheckUtils]: 0: Hoare triple {8832#true} call ULTIMATE.init(); {8832#true} is VALID [2022-04-27 12:49:17,109 INFO L290 TraceCheckUtils]: 1: Hoare triple {8832#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {8840#(<= ~counter~0 0)} is VALID [2022-04-27 12:49:17,109 INFO L290 TraceCheckUtils]: 2: Hoare triple {8840#(<= ~counter~0 0)} assume true; {8840#(<= ~counter~0 0)} is VALID [2022-04-27 12:49:17,112 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8840#(<= ~counter~0 0)} {8832#true} #82#return; {8840#(<= ~counter~0 0)} is VALID [2022-04-27 12:49:17,112 INFO L272 TraceCheckUtils]: 4: Hoare triple {8840#(<= ~counter~0 0)} call #t~ret7 := main(); {8840#(<= ~counter~0 0)} is VALID [2022-04-27 12:49:17,112 INFO L290 TraceCheckUtils]: 5: Hoare triple {8840#(<= ~counter~0 0)} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8840#(<= ~counter~0 0)} is VALID [2022-04-27 12:49:17,113 INFO L272 TraceCheckUtils]: 6: Hoare triple {8840#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8840#(<= ~counter~0 0)} is VALID [2022-04-27 12:49:17,113 INFO L290 TraceCheckUtils]: 7: Hoare triple {8840#(<= ~counter~0 0)} ~cond := #in~cond; {8840#(<= ~counter~0 0)} is VALID [2022-04-27 12:49:17,113 INFO L290 TraceCheckUtils]: 8: Hoare triple {8840#(<= ~counter~0 0)} assume !(0 == ~cond); {8840#(<= ~counter~0 0)} is VALID [2022-04-27 12:49:17,114 INFO L290 TraceCheckUtils]: 9: Hoare triple {8840#(<= ~counter~0 0)} assume true; {8840#(<= ~counter~0 0)} is VALID [2022-04-27 12:49:17,114 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8840#(<= ~counter~0 0)} {8840#(<= ~counter~0 0)} #64#return; {8840#(<= ~counter~0 0)} is VALID [2022-04-27 12:49:17,114 INFO L272 TraceCheckUtils]: 11: Hoare triple {8840#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8840#(<= ~counter~0 0)} is VALID [2022-04-27 12:49:17,115 INFO L290 TraceCheckUtils]: 12: Hoare triple {8840#(<= ~counter~0 0)} ~cond := #in~cond; {8840#(<= ~counter~0 0)} is VALID [2022-04-27 12:49:17,115 INFO L290 TraceCheckUtils]: 13: Hoare triple {8840#(<= ~counter~0 0)} assume !(0 == ~cond); {8840#(<= ~counter~0 0)} is VALID [2022-04-27 12:49:17,115 INFO L290 TraceCheckUtils]: 14: Hoare triple {8840#(<= ~counter~0 0)} assume true; {8840#(<= ~counter~0 0)} is VALID [2022-04-27 12:49:17,115 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8840#(<= ~counter~0 0)} {8840#(<= ~counter~0 0)} #66#return; {8840#(<= ~counter~0 0)} is VALID [2022-04-27 12:49:17,116 INFO L290 TraceCheckUtils]: 16: Hoare triple {8840#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8840#(<= ~counter~0 0)} is VALID [2022-04-27 12:49:17,116 INFO L290 TraceCheckUtils]: 17: Hoare triple {8840#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8889#(<= ~counter~0 1)} is VALID [2022-04-27 12:49:17,117 INFO L290 TraceCheckUtils]: 18: Hoare triple {8889#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {8889#(<= ~counter~0 1)} is VALID [2022-04-27 12:49:17,117 INFO L272 TraceCheckUtils]: 19: Hoare triple {8889#(<= ~counter~0 1)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {8889#(<= ~counter~0 1)} is VALID [2022-04-27 12:49:17,117 INFO L290 TraceCheckUtils]: 20: Hoare triple {8889#(<= ~counter~0 1)} ~cond := #in~cond; {8889#(<= ~counter~0 1)} is VALID [2022-04-27 12:49:17,118 INFO L290 TraceCheckUtils]: 21: Hoare triple {8889#(<= ~counter~0 1)} assume !(0 == ~cond); {8889#(<= ~counter~0 1)} is VALID [2022-04-27 12:49:17,118 INFO L290 TraceCheckUtils]: 22: Hoare triple {8889#(<= ~counter~0 1)} assume true; {8889#(<= ~counter~0 1)} is VALID [2022-04-27 12:49:17,118 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {8889#(<= ~counter~0 1)} {8889#(<= ~counter~0 1)} #68#return; {8889#(<= ~counter~0 1)} is VALID [2022-04-27 12:49:17,119 INFO L272 TraceCheckUtils]: 24: Hoare triple {8889#(<= ~counter~0 1)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8889#(<= ~counter~0 1)} is VALID [2022-04-27 12:49:17,119 INFO L290 TraceCheckUtils]: 25: Hoare triple {8889#(<= ~counter~0 1)} ~cond := #in~cond; {8889#(<= ~counter~0 1)} is VALID [2022-04-27 12:49:17,120 INFO L290 TraceCheckUtils]: 26: Hoare triple {8889#(<= ~counter~0 1)} assume !(0 == ~cond); {8889#(<= ~counter~0 1)} is VALID [2022-04-27 12:49:17,126 INFO L290 TraceCheckUtils]: 27: Hoare triple {8889#(<= ~counter~0 1)} assume true; {8889#(<= ~counter~0 1)} is VALID [2022-04-27 12:49:17,127 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {8889#(<= ~counter~0 1)} {8889#(<= ~counter~0 1)} #70#return; {8889#(<= ~counter~0 1)} is VALID [2022-04-27 12:49:17,128 INFO L272 TraceCheckUtils]: 29: Hoare triple {8889#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8889#(<= ~counter~0 1)} is VALID [2022-04-27 12:49:17,128 INFO L290 TraceCheckUtils]: 30: Hoare triple {8889#(<= ~counter~0 1)} ~cond := #in~cond; {8889#(<= ~counter~0 1)} is VALID [2022-04-27 12:49:17,128 INFO L290 TraceCheckUtils]: 31: Hoare triple {8889#(<= ~counter~0 1)} assume !(0 == ~cond); {8889#(<= ~counter~0 1)} is VALID [2022-04-27 12:49:17,129 INFO L290 TraceCheckUtils]: 32: Hoare triple {8889#(<= ~counter~0 1)} assume true; {8889#(<= ~counter~0 1)} is VALID [2022-04-27 12:49:17,129 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {8889#(<= ~counter~0 1)} {8889#(<= ~counter~0 1)} #72#return; {8889#(<= ~counter~0 1)} is VALID [2022-04-27 12:49:17,129 INFO L290 TraceCheckUtils]: 34: Hoare triple {8889#(<= ~counter~0 1)} assume !!(~a~0 != ~b~0); {8889#(<= ~counter~0 1)} is VALID [2022-04-27 12:49:17,130 INFO L290 TraceCheckUtils]: 35: Hoare triple {8889#(<= ~counter~0 1)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {8889#(<= ~counter~0 1)} is VALID [2022-04-27 12:49:17,130 INFO L290 TraceCheckUtils]: 36: Hoare triple {8889#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8947#(<= ~counter~0 2)} is VALID [2022-04-27 12:49:17,131 INFO L290 TraceCheckUtils]: 37: Hoare triple {8947#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {8947#(<= ~counter~0 2)} is VALID [2022-04-27 12:49:17,131 INFO L272 TraceCheckUtils]: 38: Hoare triple {8947#(<= ~counter~0 2)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {8947#(<= ~counter~0 2)} is VALID [2022-04-27 12:49:17,132 INFO L290 TraceCheckUtils]: 39: Hoare triple {8947#(<= ~counter~0 2)} ~cond := #in~cond; {8947#(<= ~counter~0 2)} is VALID [2022-04-27 12:49:17,132 INFO L290 TraceCheckUtils]: 40: Hoare triple {8947#(<= ~counter~0 2)} assume !(0 == ~cond); {8947#(<= ~counter~0 2)} is VALID [2022-04-27 12:49:17,132 INFO L290 TraceCheckUtils]: 41: Hoare triple {8947#(<= ~counter~0 2)} assume true; {8947#(<= ~counter~0 2)} is VALID [2022-04-27 12:49:17,133 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {8947#(<= ~counter~0 2)} {8947#(<= ~counter~0 2)} #68#return; {8947#(<= ~counter~0 2)} is VALID [2022-04-27 12:49:17,134 INFO L272 TraceCheckUtils]: 43: Hoare triple {8947#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8947#(<= ~counter~0 2)} is VALID [2022-04-27 12:49:17,134 INFO L290 TraceCheckUtils]: 44: Hoare triple {8947#(<= ~counter~0 2)} ~cond := #in~cond; {8947#(<= ~counter~0 2)} is VALID [2022-04-27 12:49:17,134 INFO L290 TraceCheckUtils]: 45: Hoare triple {8947#(<= ~counter~0 2)} assume !(0 == ~cond); {8947#(<= ~counter~0 2)} is VALID [2022-04-27 12:49:17,135 INFO L290 TraceCheckUtils]: 46: Hoare triple {8947#(<= ~counter~0 2)} assume true; {8947#(<= ~counter~0 2)} is VALID [2022-04-27 12:49:17,135 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {8947#(<= ~counter~0 2)} {8947#(<= ~counter~0 2)} #70#return; {8947#(<= ~counter~0 2)} is VALID [2022-04-27 12:49:17,136 INFO L272 TraceCheckUtils]: 48: Hoare triple {8947#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8947#(<= ~counter~0 2)} is VALID [2022-04-27 12:49:17,136 INFO L290 TraceCheckUtils]: 49: Hoare triple {8947#(<= ~counter~0 2)} ~cond := #in~cond; {8947#(<= ~counter~0 2)} is VALID [2022-04-27 12:49:17,137 INFO L290 TraceCheckUtils]: 50: Hoare triple {8947#(<= ~counter~0 2)} assume !(0 == ~cond); {8947#(<= ~counter~0 2)} is VALID [2022-04-27 12:49:17,137 INFO L290 TraceCheckUtils]: 51: Hoare triple {8947#(<= ~counter~0 2)} assume true; {8947#(<= ~counter~0 2)} is VALID [2022-04-27 12:49:17,138 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {8947#(<= ~counter~0 2)} {8947#(<= ~counter~0 2)} #72#return; {8947#(<= ~counter~0 2)} is VALID [2022-04-27 12:49:17,138 INFO L290 TraceCheckUtils]: 53: Hoare triple {8947#(<= ~counter~0 2)} assume !!(~a~0 != ~b~0); {8947#(<= ~counter~0 2)} is VALID [2022-04-27 12:49:17,138 INFO L290 TraceCheckUtils]: 54: Hoare triple {8947#(<= ~counter~0 2)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {8947#(<= ~counter~0 2)} is VALID [2022-04-27 12:49:17,139 INFO L290 TraceCheckUtils]: 55: Hoare triple {8947#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9005#(<= ~counter~0 3)} is VALID [2022-04-27 12:49:17,139 INFO L290 TraceCheckUtils]: 56: Hoare triple {9005#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {9005#(<= ~counter~0 3)} is VALID [2022-04-27 12:49:17,140 INFO L272 TraceCheckUtils]: 57: Hoare triple {9005#(<= ~counter~0 3)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {9005#(<= ~counter~0 3)} is VALID [2022-04-27 12:49:17,140 INFO L290 TraceCheckUtils]: 58: Hoare triple {9005#(<= ~counter~0 3)} ~cond := #in~cond; {9005#(<= ~counter~0 3)} is VALID [2022-04-27 12:49:17,140 INFO L290 TraceCheckUtils]: 59: Hoare triple {9005#(<= ~counter~0 3)} assume !(0 == ~cond); {9005#(<= ~counter~0 3)} is VALID [2022-04-27 12:49:17,141 INFO L290 TraceCheckUtils]: 60: Hoare triple {9005#(<= ~counter~0 3)} assume true; {9005#(<= ~counter~0 3)} is VALID [2022-04-27 12:49:17,141 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {9005#(<= ~counter~0 3)} {9005#(<= ~counter~0 3)} #68#return; {9005#(<= ~counter~0 3)} is VALID [2022-04-27 12:49:17,142 INFO L272 TraceCheckUtils]: 62: Hoare triple {9005#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9005#(<= ~counter~0 3)} is VALID [2022-04-27 12:49:17,142 INFO L290 TraceCheckUtils]: 63: Hoare triple {9005#(<= ~counter~0 3)} ~cond := #in~cond; {9005#(<= ~counter~0 3)} is VALID [2022-04-27 12:49:17,142 INFO L290 TraceCheckUtils]: 64: Hoare triple {9005#(<= ~counter~0 3)} assume !(0 == ~cond); {9005#(<= ~counter~0 3)} is VALID [2022-04-27 12:49:17,143 INFO L290 TraceCheckUtils]: 65: Hoare triple {9005#(<= ~counter~0 3)} assume true; {9005#(<= ~counter~0 3)} is VALID [2022-04-27 12:49:17,143 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {9005#(<= ~counter~0 3)} {9005#(<= ~counter~0 3)} #70#return; {9005#(<= ~counter~0 3)} is VALID [2022-04-27 12:49:17,144 INFO L272 TraceCheckUtils]: 67: Hoare triple {9005#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {9005#(<= ~counter~0 3)} is VALID [2022-04-27 12:49:17,144 INFO L290 TraceCheckUtils]: 68: Hoare triple {9005#(<= ~counter~0 3)} ~cond := #in~cond; {9005#(<= ~counter~0 3)} is VALID [2022-04-27 12:49:17,144 INFO L290 TraceCheckUtils]: 69: Hoare triple {9005#(<= ~counter~0 3)} assume !(0 == ~cond); {9005#(<= ~counter~0 3)} is VALID [2022-04-27 12:49:17,145 INFO L290 TraceCheckUtils]: 70: Hoare triple {9005#(<= ~counter~0 3)} assume true; {9005#(<= ~counter~0 3)} is VALID [2022-04-27 12:49:17,145 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {9005#(<= ~counter~0 3)} {9005#(<= ~counter~0 3)} #72#return; {9005#(<= ~counter~0 3)} is VALID [2022-04-27 12:49:17,146 INFO L290 TraceCheckUtils]: 72: Hoare triple {9005#(<= ~counter~0 3)} assume !!(~a~0 != ~b~0); {9005#(<= ~counter~0 3)} is VALID [2022-04-27 12:49:17,146 INFO L290 TraceCheckUtils]: 73: Hoare triple {9005#(<= ~counter~0 3)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {9005#(<= ~counter~0 3)} is VALID [2022-04-27 12:49:17,146 INFO L290 TraceCheckUtils]: 74: Hoare triple {9005#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9063#(<= ~counter~0 4)} is VALID [2022-04-27 12:49:17,147 INFO L290 TraceCheckUtils]: 75: Hoare triple {9063#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {9063#(<= ~counter~0 4)} is VALID [2022-04-27 12:49:17,147 INFO L272 TraceCheckUtils]: 76: Hoare triple {9063#(<= ~counter~0 4)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {9063#(<= ~counter~0 4)} is VALID [2022-04-27 12:49:17,148 INFO L290 TraceCheckUtils]: 77: Hoare triple {9063#(<= ~counter~0 4)} ~cond := #in~cond; {9063#(<= ~counter~0 4)} is VALID [2022-04-27 12:49:17,148 INFO L290 TraceCheckUtils]: 78: Hoare triple {9063#(<= ~counter~0 4)} assume !(0 == ~cond); {9063#(<= ~counter~0 4)} is VALID [2022-04-27 12:49:17,148 INFO L290 TraceCheckUtils]: 79: Hoare triple {9063#(<= ~counter~0 4)} assume true; {9063#(<= ~counter~0 4)} is VALID [2022-04-27 12:49:17,149 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {9063#(<= ~counter~0 4)} {9063#(<= ~counter~0 4)} #68#return; {9063#(<= ~counter~0 4)} is VALID [2022-04-27 12:49:17,149 INFO L272 TraceCheckUtils]: 81: Hoare triple {9063#(<= ~counter~0 4)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9063#(<= ~counter~0 4)} is VALID [2022-04-27 12:49:17,150 INFO L290 TraceCheckUtils]: 82: Hoare triple {9063#(<= ~counter~0 4)} ~cond := #in~cond; {9063#(<= ~counter~0 4)} is VALID [2022-04-27 12:49:17,150 INFO L290 TraceCheckUtils]: 83: Hoare triple {9063#(<= ~counter~0 4)} assume !(0 == ~cond); {9063#(<= ~counter~0 4)} is VALID [2022-04-27 12:49:17,150 INFO L290 TraceCheckUtils]: 84: Hoare triple {9063#(<= ~counter~0 4)} assume true; {9063#(<= ~counter~0 4)} is VALID [2022-04-27 12:49:17,151 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {9063#(<= ~counter~0 4)} {9063#(<= ~counter~0 4)} #70#return; {9063#(<= ~counter~0 4)} is VALID [2022-04-27 12:49:17,151 INFO L272 TraceCheckUtils]: 86: Hoare triple {9063#(<= ~counter~0 4)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {9063#(<= ~counter~0 4)} is VALID [2022-04-27 12:49:17,152 INFO L290 TraceCheckUtils]: 87: Hoare triple {9063#(<= ~counter~0 4)} ~cond := #in~cond; {9063#(<= ~counter~0 4)} is VALID [2022-04-27 12:49:17,152 INFO L290 TraceCheckUtils]: 88: Hoare triple {9063#(<= ~counter~0 4)} assume !(0 == ~cond); {9063#(<= ~counter~0 4)} is VALID [2022-04-27 12:49:17,152 INFO L290 TraceCheckUtils]: 89: Hoare triple {9063#(<= ~counter~0 4)} assume true; {9063#(<= ~counter~0 4)} is VALID [2022-04-27 12:49:17,153 INFO L284 TraceCheckUtils]: 90: Hoare quadruple {9063#(<= ~counter~0 4)} {9063#(<= ~counter~0 4)} #72#return; {9063#(<= ~counter~0 4)} is VALID [2022-04-27 12:49:17,153 INFO L290 TraceCheckUtils]: 91: Hoare triple {9063#(<= ~counter~0 4)} assume !!(~a~0 != ~b~0); {9063#(<= ~counter~0 4)} is VALID [2022-04-27 12:49:17,153 INFO L290 TraceCheckUtils]: 92: Hoare triple {9063#(<= ~counter~0 4)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {9063#(<= ~counter~0 4)} is VALID [2022-04-27 12:49:17,154 INFO L290 TraceCheckUtils]: 93: Hoare triple {9063#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9121#(<= |main_#t~post6| 4)} is VALID [2022-04-27 12:49:17,154 INFO L290 TraceCheckUtils]: 94: Hoare triple {9121#(<= |main_#t~post6| 4)} assume !(#t~post6 < 10);havoc #t~post6; {8833#false} is VALID [2022-04-27 12:49:17,154 INFO L272 TraceCheckUtils]: 95: Hoare triple {8833#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {8833#false} is VALID [2022-04-27 12:49:17,154 INFO L290 TraceCheckUtils]: 96: Hoare triple {8833#false} ~cond := #in~cond; {8833#false} is VALID [2022-04-27 12:49:17,154 INFO L290 TraceCheckUtils]: 97: Hoare triple {8833#false} assume 0 == ~cond; {8833#false} is VALID [2022-04-27 12:49:17,154 INFO L290 TraceCheckUtils]: 98: Hoare triple {8833#false} assume !false; {8833#false} is VALID [2022-04-27 12:49:17,155 INFO L134 CoverageAnalysis]: Checked inductivity of 342 backedges. 24 proven. 266 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-27 12:49:17,155 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:49:17,569 INFO L290 TraceCheckUtils]: 98: Hoare triple {8833#false} assume !false; {8833#false} is VALID [2022-04-27 12:49:17,569 INFO L290 TraceCheckUtils]: 97: Hoare triple {8833#false} assume 0 == ~cond; {8833#false} is VALID [2022-04-27 12:49:17,569 INFO L290 TraceCheckUtils]: 96: Hoare triple {8833#false} ~cond := #in~cond; {8833#false} is VALID [2022-04-27 12:49:17,569 INFO L272 TraceCheckUtils]: 95: Hoare triple {8833#false} call __VERIFIER_assert((if 0 == ~a~0 - ~b~0 then 1 else 0)); {8833#false} is VALID [2022-04-27 12:49:17,569 INFO L290 TraceCheckUtils]: 94: Hoare triple {9149#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {8833#false} is VALID [2022-04-27 12:49:17,570 INFO L290 TraceCheckUtils]: 93: Hoare triple {9153#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9149#(< |main_#t~post6| 10)} is VALID [2022-04-27 12:49:17,570 INFO L290 TraceCheckUtils]: 92: Hoare triple {9153#(< ~counter~0 10)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {9153#(< ~counter~0 10)} is VALID [2022-04-27 12:49:17,570 INFO L290 TraceCheckUtils]: 91: Hoare triple {9153#(< ~counter~0 10)} assume !!(~a~0 != ~b~0); {9153#(< ~counter~0 10)} is VALID [2022-04-27 12:49:17,571 INFO L284 TraceCheckUtils]: 90: Hoare quadruple {8832#true} {9153#(< ~counter~0 10)} #72#return; {9153#(< ~counter~0 10)} is VALID [2022-04-27 12:49:17,571 INFO L290 TraceCheckUtils]: 89: Hoare triple {8832#true} assume true; {8832#true} is VALID [2022-04-27 12:49:17,571 INFO L290 TraceCheckUtils]: 88: Hoare triple {8832#true} assume !(0 == ~cond); {8832#true} is VALID [2022-04-27 12:49:17,571 INFO L290 TraceCheckUtils]: 87: Hoare triple {8832#true} ~cond := #in~cond; {8832#true} is VALID [2022-04-27 12:49:17,571 INFO L272 TraceCheckUtils]: 86: Hoare triple {9153#(< ~counter~0 10)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8832#true} is VALID [2022-04-27 12:49:17,571 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {8832#true} {9153#(< ~counter~0 10)} #70#return; {9153#(< ~counter~0 10)} is VALID [2022-04-27 12:49:17,572 INFO L290 TraceCheckUtils]: 84: Hoare triple {8832#true} assume true; {8832#true} is VALID [2022-04-27 12:49:17,572 INFO L290 TraceCheckUtils]: 83: Hoare triple {8832#true} assume !(0 == ~cond); {8832#true} is VALID [2022-04-27 12:49:17,572 INFO L290 TraceCheckUtils]: 82: Hoare triple {8832#true} ~cond := #in~cond; {8832#true} is VALID [2022-04-27 12:49:17,572 INFO L272 TraceCheckUtils]: 81: Hoare triple {9153#(< ~counter~0 10)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8832#true} is VALID [2022-04-27 12:49:17,572 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {8832#true} {9153#(< ~counter~0 10)} #68#return; {9153#(< ~counter~0 10)} is VALID [2022-04-27 12:49:17,572 INFO L290 TraceCheckUtils]: 79: Hoare triple {8832#true} assume true; {8832#true} is VALID [2022-04-27 12:49:17,572 INFO L290 TraceCheckUtils]: 78: Hoare triple {8832#true} assume !(0 == ~cond); {8832#true} is VALID [2022-04-27 12:49:17,572 INFO L290 TraceCheckUtils]: 77: Hoare triple {8832#true} ~cond := #in~cond; {8832#true} is VALID [2022-04-27 12:49:17,572 INFO L272 TraceCheckUtils]: 76: Hoare triple {9153#(< ~counter~0 10)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {8832#true} is VALID [2022-04-27 12:49:17,573 INFO L290 TraceCheckUtils]: 75: Hoare triple {9153#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {9153#(< ~counter~0 10)} is VALID [2022-04-27 12:49:17,573 INFO L290 TraceCheckUtils]: 74: Hoare triple {9211#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9153#(< ~counter~0 10)} is VALID [2022-04-27 12:49:17,573 INFO L290 TraceCheckUtils]: 73: Hoare triple {9211#(< ~counter~0 9)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {9211#(< ~counter~0 9)} is VALID [2022-04-27 12:49:17,574 INFO L290 TraceCheckUtils]: 72: Hoare triple {9211#(< ~counter~0 9)} assume !!(~a~0 != ~b~0); {9211#(< ~counter~0 9)} is VALID [2022-04-27 12:49:17,574 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {8832#true} {9211#(< ~counter~0 9)} #72#return; {9211#(< ~counter~0 9)} is VALID [2022-04-27 12:49:17,574 INFO L290 TraceCheckUtils]: 70: Hoare triple {8832#true} assume true; {8832#true} is VALID [2022-04-27 12:49:17,574 INFO L290 TraceCheckUtils]: 69: Hoare triple {8832#true} assume !(0 == ~cond); {8832#true} is VALID [2022-04-27 12:49:17,574 INFO L290 TraceCheckUtils]: 68: Hoare triple {8832#true} ~cond := #in~cond; {8832#true} is VALID [2022-04-27 12:49:17,575 INFO L272 TraceCheckUtils]: 67: Hoare triple {9211#(< ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8832#true} is VALID [2022-04-27 12:49:17,575 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {8832#true} {9211#(< ~counter~0 9)} #70#return; {9211#(< ~counter~0 9)} is VALID [2022-04-27 12:49:17,575 INFO L290 TraceCheckUtils]: 65: Hoare triple {8832#true} assume true; {8832#true} is VALID [2022-04-27 12:49:17,575 INFO L290 TraceCheckUtils]: 64: Hoare triple {8832#true} assume !(0 == ~cond); {8832#true} is VALID [2022-04-27 12:49:17,575 INFO L290 TraceCheckUtils]: 63: Hoare triple {8832#true} ~cond := #in~cond; {8832#true} is VALID [2022-04-27 12:49:17,575 INFO L272 TraceCheckUtils]: 62: Hoare triple {9211#(< ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8832#true} is VALID [2022-04-27 12:49:17,576 INFO L284 TraceCheckUtils]: 61: Hoare quadruple {8832#true} {9211#(< ~counter~0 9)} #68#return; {9211#(< ~counter~0 9)} is VALID [2022-04-27 12:49:17,576 INFO L290 TraceCheckUtils]: 60: Hoare triple {8832#true} assume true; {8832#true} is VALID [2022-04-27 12:49:17,576 INFO L290 TraceCheckUtils]: 59: Hoare triple {8832#true} assume !(0 == ~cond); {8832#true} is VALID [2022-04-27 12:49:17,576 INFO L290 TraceCheckUtils]: 58: Hoare triple {8832#true} ~cond := #in~cond; {8832#true} is VALID [2022-04-27 12:49:17,576 INFO L272 TraceCheckUtils]: 57: Hoare triple {9211#(< ~counter~0 9)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {8832#true} is VALID [2022-04-27 12:49:17,576 INFO L290 TraceCheckUtils]: 56: Hoare triple {9211#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {9211#(< ~counter~0 9)} is VALID [2022-04-27 12:49:17,577 INFO L290 TraceCheckUtils]: 55: Hoare triple {9269#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9211#(< ~counter~0 9)} is VALID [2022-04-27 12:49:17,577 INFO L290 TraceCheckUtils]: 54: Hoare triple {9269#(< ~counter~0 8)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {9269#(< ~counter~0 8)} is VALID [2022-04-27 12:49:17,577 INFO L290 TraceCheckUtils]: 53: Hoare triple {9269#(< ~counter~0 8)} assume !!(~a~0 != ~b~0); {9269#(< ~counter~0 8)} is VALID [2022-04-27 12:49:17,578 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {8832#true} {9269#(< ~counter~0 8)} #72#return; {9269#(< ~counter~0 8)} is VALID [2022-04-27 12:49:17,578 INFO L290 TraceCheckUtils]: 51: Hoare triple {8832#true} assume true; {8832#true} is VALID [2022-04-27 12:49:17,578 INFO L290 TraceCheckUtils]: 50: Hoare triple {8832#true} assume !(0 == ~cond); {8832#true} is VALID [2022-04-27 12:49:17,578 INFO L290 TraceCheckUtils]: 49: Hoare triple {8832#true} ~cond := #in~cond; {8832#true} is VALID [2022-04-27 12:49:17,578 INFO L272 TraceCheckUtils]: 48: Hoare triple {9269#(< ~counter~0 8)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8832#true} is VALID [2022-04-27 12:49:17,578 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {8832#true} {9269#(< ~counter~0 8)} #70#return; {9269#(< ~counter~0 8)} is VALID [2022-04-27 12:49:17,578 INFO L290 TraceCheckUtils]: 46: Hoare triple {8832#true} assume true; {8832#true} is VALID [2022-04-27 12:49:17,579 INFO L290 TraceCheckUtils]: 45: Hoare triple {8832#true} assume !(0 == ~cond); {8832#true} is VALID [2022-04-27 12:49:17,579 INFO L290 TraceCheckUtils]: 44: Hoare triple {8832#true} ~cond := #in~cond; {8832#true} is VALID [2022-04-27 12:49:17,579 INFO L272 TraceCheckUtils]: 43: Hoare triple {9269#(< ~counter~0 8)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8832#true} is VALID [2022-04-27 12:49:17,579 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {8832#true} {9269#(< ~counter~0 8)} #68#return; {9269#(< ~counter~0 8)} is VALID [2022-04-27 12:49:17,579 INFO L290 TraceCheckUtils]: 41: Hoare triple {8832#true} assume true; {8832#true} is VALID [2022-04-27 12:49:17,579 INFO L290 TraceCheckUtils]: 40: Hoare triple {8832#true} assume !(0 == ~cond); {8832#true} is VALID [2022-04-27 12:49:17,579 INFO L290 TraceCheckUtils]: 39: Hoare triple {8832#true} ~cond := #in~cond; {8832#true} is VALID [2022-04-27 12:49:17,579 INFO L272 TraceCheckUtils]: 38: Hoare triple {9269#(< ~counter~0 8)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {8832#true} is VALID [2022-04-27 12:49:17,580 INFO L290 TraceCheckUtils]: 37: Hoare triple {9269#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {9269#(< ~counter~0 8)} is VALID [2022-04-27 12:49:17,580 INFO L290 TraceCheckUtils]: 36: Hoare triple {9327#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9269#(< ~counter~0 8)} is VALID [2022-04-27 12:49:17,580 INFO L290 TraceCheckUtils]: 35: Hoare triple {9327#(< ~counter~0 7)} assume ~a~0 > ~b~0;~a~0 := ~a~0 - ~b~0;~p~0 := ~p~0 - ~q~0;~r~0 := ~r~0 - ~s~0; {9327#(< ~counter~0 7)} is VALID [2022-04-27 12:49:17,581 INFO L290 TraceCheckUtils]: 34: Hoare triple {9327#(< ~counter~0 7)} assume !!(~a~0 != ~b~0); {9327#(< ~counter~0 7)} is VALID [2022-04-27 12:49:17,581 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {8832#true} {9327#(< ~counter~0 7)} #72#return; {9327#(< ~counter~0 7)} is VALID [2022-04-27 12:49:17,581 INFO L290 TraceCheckUtils]: 32: Hoare triple {8832#true} assume true; {8832#true} is VALID [2022-04-27 12:49:17,581 INFO L290 TraceCheckUtils]: 31: Hoare triple {8832#true} assume !(0 == ~cond); {8832#true} is VALID [2022-04-27 12:49:17,581 INFO L290 TraceCheckUtils]: 30: Hoare triple {8832#true} ~cond := #in~cond; {8832#true} is VALID [2022-04-27 12:49:17,581 INFO L272 TraceCheckUtils]: 29: Hoare triple {9327#(< ~counter~0 7)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8832#true} is VALID [2022-04-27 12:49:17,582 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {8832#true} {9327#(< ~counter~0 7)} #70#return; {9327#(< ~counter~0 7)} is VALID [2022-04-27 12:49:17,582 INFO L290 TraceCheckUtils]: 27: Hoare triple {8832#true} assume true; {8832#true} is VALID [2022-04-27 12:49:17,582 INFO L290 TraceCheckUtils]: 26: Hoare triple {8832#true} assume !(0 == ~cond); {8832#true} is VALID [2022-04-27 12:49:17,582 INFO L290 TraceCheckUtils]: 25: Hoare triple {8832#true} ~cond := #in~cond; {8832#true} is VALID [2022-04-27 12:49:17,582 INFO L272 TraceCheckUtils]: 24: Hoare triple {9327#(< ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8832#true} is VALID [2022-04-27 12:49:17,583 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {8832#true} {9327#(< ~counter~0 7)} #68#return; {9327#(< ~counter~0 7)} is VALID [2022-04-27 12:49:17,583 INFO L290 TraceCheckUtils]: 22: Hoare triple {8832#true} assume true; {8832#true} is VALID [2022-04-27 12:49:17,583 INFO L290 TraceCheckUtils]: 21: Hoare triple {8832#true} assume !(0 == ~cond); {8832#true} is VALID [2022-04-27 12:49:17,583 INFO L290 TraceCheckUtils]: 20: Hoare triple {8832#true} ~cond := #in~cond; {8832#true} is VALID [2022-04-27 12:49:17,583 INFO L272 TraceCheckUtils]: 19: Hoare triple {9327#(< ~counter~0 7)} call __VERIFIER_assert((if 1 == ~p~0 * ~s~0 - ~r~0 * ~q~0 then 1 else 0)); {8832#true} is VALID [2022-04-27 12:49:17,588 INFO L290 TraceCheckUtils]: 18: Hoare triple {9327#(< ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {9327#(< ~counter~0 7)} is VALID [2022-04-27 12:49:17,588 INFO L290 TraceCheckUtils]: 17: Hoare triple {9385#(< ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9327#(< ~counter~0 7)} is VALID [2022-04-27 12:49:17,589 INFO L290 TraceCheckUtils]: 16: Hoare triple {9385#(< ~counter~0 6)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {9385#(< ~counter~0 6)} is VALID [2022-04-27 12:49:17,589 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8832#true} {9385#(< ~counter~0 6)} #66#return; {9385#(< ~counter~0 6)} is VALID [2022-04-27 12:49:17,589 INFO L290 TraceCheckUtils]: 14: Hoare triple {8832#true} assume true; {8832#true} is VALID [2022-04-27 12:49:17,589 INFO L290 TraceCheckUtils]: 13: Hoare triple {8832#true} assume !(0 == ~cond); {8832#true} is VALID [2022-04-27 12:49:17,589 INFO L290 TraceCheckUtils]: 12: Hoare triple {8832#true} ~cond := #in~cond; {8832#true} is VALID [2022-04-27 12:49:17,589 INFO L272 TraceCheckUtils]: 11: Hoare triple {9385#(< ~counter~0 6)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8832#true} is VALID [2022-04-27 12:49:17,595 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8832#true} {9385#(< ~counter~0 6)} #64#return; {9385#(< ~counter~0 6)} is VALID [2022-04-27 12:49:17,595 INFO L290 TraceCheckUtils]: 9: Hoare triple {8832#true} assume true; {8832#true} is VALID [2022-04-27 12:49:17,595 INFO L290 TraceCheckUtils]: 8: Hoare triple {8832#true} assume !(0 == ~cond); {8832#true} is VALID [2022-04-27 12:49:17,596 INFO L290 TraceCheckUtils]: 7: Hoare triple {8832#true} ~cond := #in~cond; {8832#true} is VALID [2022-04-27 12:49:17,596 INFO L272 TraceCheckUtils]: 6: Hoare triple {9385#(< ~counter~0 6)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8832#true} is VALID [2022-04-27 12:49:17,596 INFO L290 TraceCheckUtils]: 5: Hoare triple {9385#(< ~counter~0 6)} havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~x~0;havoc ~y~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {9385#(< ~counter~0 6)} is VALID [2022-04-27 12:49:17,596 INFO L272 TraceCheckUtils]: 4: Hoare triple {9385#(< ~counter~0 6)} call #t~ret7 := main(); {9385#(< ~counter~0 6)} is VALID [2022-04-27 12:49:17,596 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9385#(< ~counter~0 6)} {8832#true} #82#return; {9385#(< ~counter~0 6)} is VALID [2022-04-27 12:49:17,597 INFO L290 TraceCheckUtils]: 2: Hoare triple {9385#(< ~counter~0 6)} assume true; {9385#(< ~counter~0 6)} is VALID [2022-04-27 12:49:17,597 INFO L290 TraceCheckUtils]: 1: Hoare triple {8832#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {9385#(< ~counter~0 6)} is VALID [2022-04-27 12:49:17,597 INFO L272 TraceCheckUtils]: 0: Hoare triple {8832#true} call ULTIMATE.init(); {8832#true} is VALID [2022-04-27 12:49:17,598 INFO L134 CoverageAnalysis]: Checked inductivity of 342 backedges. 24 proven. 50 refuted. 0 times theorem prover too weak. 268 trivial. 0 not checked. [2022-04-27 12:49:17,598 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:49:17,598 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1837691290] [2022-04-27 12:49:17,598 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:49:17,598 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [986846756] [2022-04-27 12:49:17,598 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [986846756] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:49:17,598 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:49:17,598 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-27 12:49:17,598 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [327663088] [2022-04-27 12:49:17,598 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:49:17,599 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (32), 8 states have call predecessors, (32), 7 states have return successors, (30), 10 states have call predecessors, (30), 11 states have call successors, (30) Word has length 99 [2022-04-27 12:49:17,599 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:49:17,599 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (32), 8 states have call predecessors, (32), 7 states have return successors, (30), 10 states have call predecessors, (30), 11 states have call successors, (30) [2022-04-27 12:49:17,689 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 130 edges. 130 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:49:17,689 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-27 12:49:17,689 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:49:17,689 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-27 12:49:17,690 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-27 12:49:17,690 INFO L87 Difference]: Start difference. First operand 189 states and 212 transitions. Second operand has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (32), 8 states have call predecessors, (32), 7 states have return successors, (30), 10 states have call predecessors, (30), 11 states have call successors, (30) [2022-04-27 12:49:18,348 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:49:18,348 INFO L93 Difference]: Finished difference Result 516 states and 605 transitions. [2022-04-27 12:49:18,348 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-27 12:49:18,348 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (32), 8 states have call predecessors, (32), 7 states have return successors, (30), 10 states have call predecessors, (30), 11 states have call successors, (30) Word has length 99 [2022-04-27 12:49:18,349 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:49:18,349 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (32), 8 states have call predecessors, (32), 7 states have return successors, (30), 10 states have call predecessors, (30), 11 states have call successors, (30) [2022-04-27 12:49:18,351 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 176 transitions. [2022-04-27 12:49:18,351 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (32), 8 states have call predecessors, (32), 7 states have return successors, (30), 10 states have call predecessors, (30), 11 states have call successors, (30) [2022-04-27 12:49:18,353 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 176 transitions. [2022-04-27 12:49:18,353 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 176 transitions. [2022-04-27 12:49:18,482 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 176 edges. 176 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:49:18,494 INFO L225 Difference]: With dead ends: 516 [2022-04-27 12:49:18,494 INFO L226 Difference]: Without dead ends: 507 [2022-04-27 12:49:18,494 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 206 GetRequests, 185 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 55 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=184, Invalid=322, Unknown=0, NotChecked=0, Total=506 [2022-04-27 12:49:18,494 INFO L413 NwaCegarLoop]: 59 mSDtfsCounter, 88 mSDsluCounter, 161 mSDsCounter, 0 mSdLazyCounter, 101 mSolverCounterSat, 53 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 88 SdHoareTripleChecker+Valid, 220 SdHoareTripleChecker+Invalid, 154 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 53 IncrementalHoareTripleChecker+Valid, 101 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:49:18,495 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [88 Valid, 220 Invalid, 154 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [53 Valid, 101 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:49:18,495 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 507 states. [2022-04-27 12:49:18,675 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 507 to 507. [2022-04-27 12:49:18,675 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:49:18,677 INFO L82 GeneralOperation]: Start isEquivalent. First operand 507 states. Second operand has 507 states, 335 states have (on average 1.0955223880597016) internal successors, (367), 345 states have internal predecessors, (367), 104 states have call successors, (104), 68 states have call predecessors, (104), 67 states have return successors, (101), 93 states have call predecessors, (101), 101 states have call successors, (101) [2022-04-27 12:49:18,677 INFO L74 IsIncluded]: Start isIncluded. First operand 507 states. Second operand has 507 states, 335 states have (on average 1.0955223880597016) internal successors, (367), 345 states have internal predecessors, (367), 104 states have call successors, (104), 68 states have call predecessors, (104), 67 states have return successors, (101), 93 states have call predecessors, (101), 101 states have call successors, (101) [2022-04-27 12:49:18,680 INFO L87 Difference]: Start difference. First operand 507 states. Second operand has 507 states, 335 states have (on average 1.0955223880597016) internal successors, (367), 345 states have internal predecessors, (367), 104 states have call successors, (104), 68 states have call predecessors, (104), 67 states have return successors, (101), 93 states have call predecessors, (101), 101 states have call successors, (101) [2022-04-27 12:49:18,695 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:49:18,696 INFO L93 Difference]: Finished difference Result 507 states and 572 transitions. [2022-04-27 12:49:18,696 INFO L276 IsEmpty]: Start isEmpty. Operand 507 states and 572 transitions. [2022-04-27 12:49:18,697 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:49:18,697 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:49:18,698 INFO L74 IsIncluded]: Start isIncluded. First operand has 507 states, 335 states have (on average 1.0955223880597016) internal successors, (367), 345 states have internal predecessors, (367), 104 states have call successors, (104), 68 states have call predecessors, (104), 67 states have return successors, (101), 93 states have call predecessors, (101), 101 states have call successors, (101) Second operand 507 states. [2022-04-27 12:49:18,698 INFO L87 Difference]: Start difference. First operand has 507 states, 335 states have (on average 1.0955223880597016) internal successors, (367), 345 states have internal predecessors, (367), 104 states have call successors, (104), 68 states have call predecessors, (104), 67 states have return successors, (101), 93 states have call predecessors, (101), 101 states have call successors, (101) Second operand 507 states. [2022-04-27 12:49:18,711 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:49:18,711 INFO L93 Difference]: Finished difference Result 507 states and 572 transitions. [2022-04-27 12:49:18,712 INFO L276 IsEmpty]: Start isEmpty. Operand 507 states and 572 transitions. [2022-04-27 12:49:18,712 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:49:18,713 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:49:18,713 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:49:18,713 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:49:18,713 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 507 states, 335 states have (on average 1.0955223880597016) internal successors, (367), 345 states have internal predecessors, (367), 104 states have call successors, (104), 68 states have call predecessors, (104), 67 states have return successors, (101), 93 states have call predecessors, (101), 101 states have call successors, (101) [2022-04-27 12:49:18,730 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 507 states to 507 states and 572 transitions. [2022-04-27 12:49:18,730 INFO L78 Accepts]: Start accepts. Automaton has 507 states and 572 transitions. Word has length 99 [2022-04-27 12:49:18,732 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:49:18,732 INFO L495 AbstractCegarLoop]: Abstraction has 507 states and 572 transitions. [2022-04-27 12:49:18,732 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (32), 8 states have call predecessors, (32), 7 states have return successors, (30), 10 states have call predecessors, (30), 11 states have call successors, (30) [2022-04-27 12:49:18,732 INFO L276 IsEmpty]: Start isEmpty. Operand 507 states and 572 transitions. [2022-04-27 12:49:18,734 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 214 [2022-04-27 12:49:18,734 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:49:18,734 INFO L195 NwaCegarLoop]: trace histogram [31, 30, 30, 11, 10, 10, 10, 10, 10, 10, 10, 10, 10, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:49:18,755 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 12:49:18,947 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,SelfDestructingSolverStorable11 [2022-04-27 12:49:18,947 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:49:18,948 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:49:18,948 INFO L85 PathProgramCache]: Analyzing trace with hash -1980311871, now seen corresponding path program 3 times [2022-04-27 12:49:18,948 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:49:18,948 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [243428020] [2022-04-27 12:49:18,948 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:49:18,948 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:49:18,969 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:49:18,969 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1616939959] [2022-04-27 12:49:18,969 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 12:49:18,970 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:49:18,970 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:49:18,970 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 12:49:18,971 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 12:49:19,080 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 22 check-sat command(s) [2022-04-27 12:49:19,080 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-04-27 12:49:19,081 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-04-27 12:49:19,120 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-27 12:49:19,244 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-04-27 12:49:19,244 INFO L271 BasicCegarLoop]: Counterexample is feasible [2022-04-27 12:49:19,245 INFO L805 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-27 12:49:19,265 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 12:49:19,455 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,SelfDestructingSolverStorable12 [2022-04-27 12:49:19,458 INFO L356 BasicCegarLoop]: Path program histogram: [3, 2, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:49:19,461 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-27 12:49:19,531 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-27 12:49:19,531 WARN L170 areAnnotationChecker]: ULTIMATE.initENTRY has no Hoare annotation [2022-04-27 12:49:19,531 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-27 12:49:19,531 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-27 12:49:19,531 WARN L170 areAnnotationChecker]: assume_abort_if_notENTRY has no Hoare annotation [2022-04-27 12:49:19,531 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2022-04-27 12:49:19,531 WARN L170 areAnnotationChecker]: __VERIFIER_assertENTRY has no Hoare annotation [2022-04-27 12:49:19,531 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-27 12:49:19,531 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-27 12:49:19,531 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-27 12:49:19,531 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-27 12:49:19,531 WARN L170 areAnnotationChecker]: L8 has no Hoare annotation [2022-04-27 12:49:19,531 WARN L170 areAnnotationChecker]: L8 has no Hoare annotation [2022-04-27 12:49:19,531 WARN L170 areAnnotationChecker]: L24 has no Hoare annotation [2022-04-27 12:49:19,531 WARN L170 areAnnotationChecker]: L24 has no Hoare annotation [2022-04-27 12:49:19,531 WARN L170 areAnnotationChecker]: L11 has no Hoare annotation [2022-04-27 12:49:19,531 WARN L170 areAnnotationChecker]: L11 has no Hoare annotation [2022-04-27 12:49:19,531 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: L8-2 has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: L24-1 has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: L24-1 has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: L11-2 has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: L25 has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: L42-2 has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: L42-2 has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: L35-1 has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: L35-1 has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: L36 has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: L36 has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: L37 has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: L37 has no Hoare annotation [2022-04-27 12:49:19,532 WARN L170 areAnnotationChecker]: L53 has no Hoare annotation [2022-04-27 12:49:19,533 WARN L170 areAnnotationChecker]: L53 has no Hoare annotation [2022-04-27 12:49:19,533 WARN L170 areAnnotationChecker]: L54 has no Hoare annotation [2022-04-27 12:49:19,533 WARN L170 areAnnotationChecker]: L54 has no Hoare annotation [2022-04-27 12:49:19,533 WARN L170 areAnnotationChecker]: L55 has no Hoare annotation [2022-04-27 12:49:19,533 WARN L170 areAnnotationChecker]: L55 has no Hoare annotation [2022-04-27 12:49:19,533 WARN L170 areAnnotationChecker]: L56 has no Hoare annotation [2022-04-27 12:49:19,533 WARN L170 areAnnotationChecker]: L34-3 has no Hoare annotation [2022-04-27 12:49:19,533 WARN L170 areAnnotationChecker]: L34-3 has no Hoare annotation [2022-04-27 12:49:19,533 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-27 12:49:19,533 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-27 12:49:19,533 WARN L170 areAnnotationChecker]: L42 has no Hoare annotation [2022-04-27 12:49:19,533 WARN L170 areAnnotationChecker]: L42 has no Hoare annotation [2022-04-27 12:49:19,533 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-27 12:49:19,533 WARN L170 areAnnotationChecker]: L35 has no Hoare annotation [2022-04-27 12:49:19,533 WARN L170 areAnnotationChecker]: L35 has no Hoare annotation [2022-04-27 12:49:19,533 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-27 12:49:19,533 INFO L163 areAnnotationChecker]: CFG has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-27 12:49:19,534 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 12:49:19 BoogieIcfgContainer [2022-04-27 12:49:19,534 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-27 12:49:19,537 INFO L158 Benchmark]: Toolchain (without parser) took 69523.63ms. Allocated memory was 190.8MB in the beginning and 235.9MB in the end (delta: 45.1MB). Free memory was 137.7MB in the beginning and 103.4MB in the end (delta: 34.3MB). Peak memory consumption was 80.3MB. Max. memory is 8.0GB. [2022-04-27 12:49:19,537 INFO L158 Benchmark]: CDTParser took 0.27ms. Allocated memory is still 190.8MB. Free memory was 154.0MB in the beginning and 153.9MB in the end (delta: 72.4kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-27 12:49:19,538 INFO L158 Benchmark]: CACSL2BoogieTranslator took 193.16ms. Allocated memory was 190.8MB in the beginning and 235.9MB in the end (delta: 45.1MB). Free memory was 137.5MB in the beginning and 210.7MB in the end (delta: -73.1MB). Peak memory consumption was 11.0MB. Max. memory is 8.0GB. [2022-04-27 12:49:19,538 INFO L158 Benchmark]: Boogie Preprocessor took 25.91ms. Allocated memory is still 235.9MB. Free memory was 210.7MB in the beginning and 209.0MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-27 12:49:19,539 INFO L158 Benchmark]: RCFGBuilder took 277.49ms. Allocated memory is still 235.9MB. Free memory was 209.0MB in the beginning and 196.9MB in the end (delta: 12.1MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-27 12:49:19,539 INFO L158 Benchmark]: TraceAbstraction took 69021.73ms. Allocated memory is still 235.9MB. Free memory was 196.0MB in the beginning and 103.4MB in the end (delta: 92.6MB). Peak memory consumption was 93.5MB. Max. memory is 8.0GB. [2022-04-27 12:49:19,540 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.27ms. Allocated memory is still 190.8MB. Free memory was 154.0MB in the beginning and 153.9MB in the end (delta: 72.4kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 193.16ms. Allocated memory was 190.8MB in the beginning and 235.9MB in the end (delta: 45.1MB). Free memory was 137.5MB in the beginning and 210.7MB in the end (delta: -73.1MB). Peak memory consumption was 11.0MB. Max. memory is 8.0GB. * Boogie Preprocessor took 25.91ms. Allocated memory is still 235.9MB. Free memory was 210.7MB in the beginning and 209.0MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 277.49ms. Allocated memory is still 235.9MB. Free memory was 209.0MB in the beginning and 196.9MB in the end (delta: 12.1MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * TraceAbstraction took 69021.73ms. Allocated memory is still 235.9MB. Free memory was 196.0MB in the beginning and 103.4MB in the end (delta: 92.6MB). Peak memory consumption was 93.5MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - CounterExampleResult [Line: 13]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L18] int counter = 0; VAL [\old(counter)=13, counter=0] [L20] long long a, b, p, q, r, s; [L21] int x, y; [L22] x = __VERIFIER_nondet_int() [L23] y = __VERIFIER_nondet_int() [L24] CALL assume_abort_if_not(x >= 1) VAL [\old(cond)=1, \old(counter)=0, counter=0] [L8] COND FALSE !(!cond) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=0] [L24] RET assume_abort_if_not(x >= 1) VAL [\old(counter)=0, counter=0, x=12, y=1] [L25] CALL assume_abort_if_not(y >= 1) VAL [\old(cond)=1, \old(counter)=0, counter=0] [L8] COND FALSE !(!cond) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=0] [L25] RET assume_abort_if_not(y >= 1) VAL [\old(counter)=0, counter=0, x=12, y=1] [L27] a = x [L28] b = y [L29] p = 1 [L30] q = 0 [L31] r = 0 [L32] s = 1 VAL [\old(counter)=0, a=12, b=1, counter=0, p=1, q=0, r=0, s=1, x=12, y=1] [L34] EXPR counter++ VAL [\old(counter)=0, a=12, b=1, counter=1, counter++=0, p=1, q=0, r=0, s=1, x=12, y=1] [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(1 == p * s - r * q) VAL [\old(cond)=1, \old(counter)=0, counter=1] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=1] [L35] RET __VERIFIER_assert(1 == p * s - r * q) VAL [\old(counter)=0, a=12, b=1, counter=1, p=1, q=0, r=0, s=1, x=12, y=1] [L36] CALL __VERIFIER_assert(a == y * r + x * p) VAL [\old(cond)=1, \old(counter)=0, counter=1] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=1] [L36] RET __VERIFIER_assert(a == y * r + x * p) VAL [\old(counter)=0, a=12, b=1, counter=1, p=1, q=0, r=0, s=1, x=12, y=1] [L37] CALL __VERIFIER_assert(b == x * q + y * s) VAL [\old(cond)=1, \old(counter)=0, counter=1] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=1] [L37] RET __VERIFIER_assert(b == x * q + y * s) VAL [\old(counter)=0, a=12, b=1, counter=1, p=1, q=0, r=0, s=1, x=12, y=1] [L39] COND FALSE !(!(a != b)) VAL [\old(counter)=0, a=12, b=1, counter=1, p=1, q=0, r=0, s=1, x=12, y=1] [L42] COND TRUE a > b [L43] a = a - b [L44] p = p - q [L45] r = r - s VAL [\old(counter)=0, a=11, b=1, counter=1, p=1, q=0, r=-1, s=1, x=12, y=1] [L34] EXPR counter++ VAL [\old(counter)=0, a=11, b=1, counter=2, counter++=1, p=1, q=0, r=-1, s=1, x=12, y=1] [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(1 == p * s - r * q) VAL [\old(cond)=1, \old(counter)=0, counter=2] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=2] [L35] RET __VERIFIER_assert(1 == p * s - r * q) VAL [\old(counter)=0, a=11, b=1, counter=2, p=1, q=0, r=-1, s=1, x=12, y=1] [L36] CALL __VERIFIER_assert(a == y * r + x * p) VAL [\old(cond)=1, \old(counter)=0, counter=2] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=2] [L36] RET __VERIFIER_assert(a == y * r + x * p) VAL [\old(counter)=0, a=11, b=1, counter=2, p=1, q=0, r=-1, s=1, x=12, y=1] [L37] CALL __VERIFIER_assert(b == x * q + y * s) VAL [\old(cond)=1, \old(counter)=0, counter=2] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=2] [L37] RET __VERIFIER_assert(b == x * q + y * s) VAL [\old(counter)=0, a=11, b=1, counter=2, p=1, q=0, r=-1, s=1, x=12, y=1] [L39] COND FALSE !(!(a != b)) VAL [\old(counter)=0, a=11, b=1, counter=2, p=1, q=0, r=-1, s=1, x=12, y=1] [L42] COND TRUE a > b [L43] a = a - b [L44] p = p - q [L45] r = r - s VAL [\old(counter)=0, a=10, b=1, counter=2, p=1, q=0, r=-2, s=1, x=12, y=1] [L34] EXPR counter++ VAL [\old(counter)=0, a=10, b=1, counter=3, counter++=2, p=1, q=0, r=-2, s=1, x=12, y=1] [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(1 == p * s - r * q) VAL [\old(cond)=1, \old(counter)=0, counter=3] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=3] [L35] RET __VERIFIER_assert(1 == p * s - r * q) VAL [\old(counter)=0, a=10, b=1, counter=3, p=1, q=0, r=-2, s=1, x=12, y=1] [L36] CALL __VERIFIER_assert(a == y * r + x * p) VAL [\old(cond)=1, \old(counter)=0, counter=3] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=3] [L36] RET __VERIFIER_assert(a == y * r + x * p) VAL [\old(counter)=0, a=10, b=1, counter=3, p=1, q=0, r=-2, s=1, x=12, y=1] [L37] CALL __VERIFIER_assert(b == x * q + y * s) VAL [\old(cond)=1, \old(counter)=0, counter=3] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=3] [L37] RET __VERIFIER_assert(b == x * q + y * s) VAL [\old(counter)=0, a=10, b=1, counter=3, p=1, q=0, r=-2, s=1, x=12, y=1] [L39] COND FALSE !(!(a != b)) VAL [\old(counter)=0, a=10, b=1, counter=3, p=1, q=0, r=-2, s=1, x=12, y=1] [L42] COND TRUE a > b [L43] a = a - b [L44] p = p - q [L45] r = r - s VAL [\old(counter)=0, a=9, b=1, counter=3, p=1, q=0, r=-3, s=1, x=12, y=1] [L34] EXPR counter++ VAL [\old(counter)=0, a=9, b=1, counter=4, counter++=3, p=1, q=0, r=-3, s=1, x=12, y=1] [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(1 == p * s - r * q) VAL [\old(cond)=1, \old(counter)=0, counter=4] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=4] [L35] RET __VERIFIER_assert(1 == p * s - r * q) VAL [\old(counter)=0, a=9, b=1, counter=4, p=1, q=0, r=-3, s=1, x=12, y=1] [L36] CALL __VERIFIER_assert(a == y * r + x * p) VAL [\old(cond)=1, \old(counter)=0, counter=4] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=4] [L36] RET __VERIFIER_assert(a == y * r + x * p) VAL [\old(counter)=0, a=9, b=1, counter=4, p=1, q=0, r=-3, s=1, x=12, y=1] [L37] CALL __VERIFIER_assert(b == x * q + y * s) VAL [\old(cond)=1, \old(counter)=0, counter=4] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=4] [L37] RET __VERIFIER_assert(b == x * q + y * s) VAL [\old(counter)=0, a=9, b=1, counter=4, p=1, q=0, r=-3, s=1, x=12, y=1] [L39] COND FALSE !(!(a != b)) VAL [\old(counter)=0, a=9, b=1, counter=4, p=1, q=0, r=-3, s=1, x=12, y=1] [L42] COND TRUE a > b [L43] a = a - b [L44] p = p - q [L45] r = r - s VAL [\old(counter)=0, a=8, b=1, counter=4, p=1, q=0, r=-4, s=1, x=12, y=1] [L34] EXPR counter++ VAL [\old(counter)=0, a=8, b=1, counter=5, counter++=4, p=1, q=0, r=-4, s=1, x=12, y=1] [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(1 == p * s - r * q) VAL [\old(cond)=1, \old(counter)=0, counter=5] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=5] [L35] RET __VERIFIER_assert(1 == p * s - r * q) VAL [\old(counter)=0, a=8, b=1, counter=5, p=1, q=0, r=-4, s=1, x=12, y=1] [L36] CALL __VERIFIER_assert(a == y * r + x * p) VAL [\old(cond)=1, \old(counter)=0, counter=5] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=5] [L36] RET __VERIFIER_assert(a == y * r + x * p) VAL [\old(counter)=0, a=8, b=1, counter=5, p=1, q=0, r=-4, s=1, x=12, y=1] [L37] CALL __VERIFIER_assert(b == x * q + y * s) VAL [\old(cond)=1, \old(counter)=0, counter=5] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=5] [L37] RET __VERIFIER_assert(b == x * q + y * s) VAL [\old(counter)=0, a=8, b=1, counter=5, p=1, q=0, r=-4, s=1, x=12, y=1] [L39] COND FALSE !(!(a != b)) VAL [\old(counter)=0, a=8, b=1, counter=5, p=1, q=0, r=-4, s=1, x=12, y=1] [L42] COND TRUE a > b [L43] a = a - b [L44] p = p - q [L45] r = r - s VAL [\old(counter)=0, a=7, b=1, counter=5, p=1, q=0, r=-5, s=1, x=12, y=1] [L34] EXPR counter++ VAL [\old(counter)=0, a=7, b=1, counter=6, counter++=5, p=1, q=0, r=-5, s=1, x=12, y=1] [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(1 == p * s - r * q) VAL [\old(cond)=1, \old(counter)=0, counter=6] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=6] [L35] RET __VERIFIER_assert(1 == p * s - r * q) VAL [\old(counter)=0, a=7, b=1, counter=6, p=1, q=0, r=-5, s=1, x=12, y=1] [L36] CALL __VERIFIER_assert(a == y * r + x * p) VAL [\old(cond)=1, \old(counter)=0, counter=6] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=6] [L36] RET __VERIFIER_assert(a == y * r + x * p) VAL [\old(counter)=0, a=7, b=1, counter=6, p=1, q=0, r=-5, s=1, x=12, y=1] [L37] CALL __VERIFIER_assert(b == x * q + y * s) VAL [\old(cond)=1, \old(counter)=0, counter=6] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=6] [L37] RET __VERIFIER_assert(b == x * q + y * s) VAL [\old(counter)=0, a=7, b=1, counter=6, p=1, q=0, r=-5, s=1, x=12, y=1] [L39] COND FALSE !(!(a != b)) VAL [\old(counter)=0, a=7, b=1, counter=6, p=1, q=0, r=-5, s=1, x=12, y=1] [L42] COND TRUE a > b [L43] a = a - b [L44] p = p - q [L45] r = r - s VAL [\old(counter)=0, a=6, b=1, counter=6, p=1, q=0, r=-6, s=1, x=12, y=1] [L34] EXPR counter++ VAL [\old(counter)=0, a=6, b=1, counter=7, counter++=6, p=1, q=0, r=-6, s=1, x=12, y=1] [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(1 == p * s - r * q) VAL [\old(cond)=1, \old(counter)=0, counter=7] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=7] [L35] RET __VERIFIER_assert(1 == p * s - r * q) VAL [\old(counter)=0, a=6, b=1, counter=7, p=1, q=0, r=-6, s=1, x=12, y=1] [L36] CALL __VERIFIER_assert(a == y * r + x * p) VAL [\old(cond)=1, \old(counter)=0, counter=7] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=7] [L36] RET __VERIFIER_assert(a == y * r + x * p) VAL [\old(counter)=0, a=6, b=1, counter=7, p=1, q=0, r=-6, s=1, x=12, y=1] [L37] CALL __VERIFIER_assert(b == x * q + y * s) VAL [\old(cond)=1, \old(counter)=0, counter=7] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=7] [L37] RET __VERIFIER_assert(b == x * q + y * s) VAL [\old(counter)=0, a=6, b=1, counter=7, p=1, q=0, r=-6, s=1, x=12, y=1] [L39] COND FALSE !(!(a != b)) VAL [\old(counter)=0, a=6, b=1, counter=7, p=1, q=0, r=-6, s=1, x=12, y=1] [L42] COND TRUE a > b [L43] a = a - b [L44] p = p - q [L45] r = r - s VAL [\old(counter)=0, a=5, b=1, counter=7, p=1, q=0, r=-7, s=1, x=12, y=1] [L34] EXPR counter++ VAL [\old(counter)=0, a=5, b=1, counter=8, counter++=7, p=1, q=0, r=-7, s=1, x=12, y=1] [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(1 == p * s - r * q) VAL [\old(cond)=1, \old(counter)=0, counter=8] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=8] [L35] RET __VERIFIER_assert(1 == p * s - r * q) VAL [\old(counter)=0, a=5, b=1, counter=8, p=1, q=0, r=-7, s=1, x=12, y=1] [L36] CALL __VERIFIER_assert(a == y * r + x * p) VAL [\old(cond)=1, \old(counter)=0, counter=8] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=8] [L36] RET __VERIFIER_assert(a == y * r + x * p) VAL [\old(counter)=0, a=5, b=1, counter=8, p=1, q=0, r=-7, s=1, x=12, y=1] [L37] CALL __VERIFIER_assert(b == x * q + y * s) VAL [\old(cond)=1, \old(counter)=0, counter=8] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=8] [L37] RET __VERIFIER_assert(b == x * q + y * s) VAL [\old(counter)=0, a=5, b=1, counter=8, p=1, q=0, r=-7, s=1, x=12, y=1] [L39] COND FALSE !(!(a != b)) VAL [\old(counter)=0, a=5, b=1, counter=8, p=1, q=0, r=-7, s=1, x=12, y=1] [L42] COND TRUE a > b [L43] a = a - b [L44] p = p - q [L45] r = r - s VAL [\old(counter)=0, a=4, b=1, counter=8, p=1, q=0, r=-8, s=1, x=12, y=1] [L34] EXPR counter++ VAL [\old(counter)=0, a=4, b=1, counter=9, counter++=8, p=1, q=0, r=-8, s=1, x=12, y=1] [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(1 == p * s - r * q) VAL [\old(cond)=1, \old(counter)=0, counter=9] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=9] [L35] RET __VERIFIER_assert(1 == p * s - r * q) VAL [\old(counter)=0, a=4, b=1, counter=9, p=1, q=0, r=-8, s=1, x=12, y=1] [L36] CALL __VERIFIER_assert(a == y * r + x * p) VAL [\old(cond)=1, \old(counter)=0, counter=9] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=9] [L36] RET __VERIFIER_assert(a == y * r + x * p) VAL [\old(counter)=0, a=4, b=1, counter=9, p=1, q=0, r=-8, s=1, x=12, y=1] [L37] CALL __VERIFIER_assert(b == x * q + y * s) VAL [\old(cond)=1, \old(counter)=0, counter=9] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=9] [L37] RET __VERIFIER_assert(b == x * q + y * s) VAL [\old(counter)=0, a=4, b=1, counter=9, p=1, q=0, r=-8, s=1, x=12, y=1] [L39] COND FALSE !(!(a != b)) VAL [\old(counter)=0, a=4, b=1, counter=9, p=1, q=0, r=-8, s=1, x=12, y=1] [L42] COND TRUE a > b [L43] a = a - b [L44] p = p - q [L45] r = r - s VAL [\old(counter)=0, a=3, b=1, counter=9, p=1, q=0, r=-9, s=1, x=12, y=1] [L34] EXPR counter++ VAL [\old(counter)=0, a=3, b=1, counter=10, counter++=9, p=1, q=0, r=-9, s=1, x=12, y=1] [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(1 == p * s - r * q) VAL [\old(cond)=1, \old(counter)=0, counter=10] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=10] [L35] RET __VERIFIER_assert(1 == p * s - r * q) VAL [\old(counter)=0, a=3, b=1, counter=10, p=1, q=0, r=-9, s=1, x=12, y=1] [L36] CALL __VERIFIER_assert(a == y * r + x * p) VAL [\old(cond)=1, \old(counter)=0, counter=10] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=10] [L36] RET __VERIFIER_assert(a == y * r + x * p) VAL [\old(counter)=0, a=3, b=1, counter=10, p=1, q=0, r=-9, s=1, x=12, y=1] [L37] CALL __VERIFIER_assert(b == x * q + y * s) VAL [\old(cond)=1, \old(counter)=0, counter=10] [L11] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=10] [L37] RET __VERIFIER_assert(b == x * q + y * s) VAL [\old(counter)=0, a=3, b=1, counter=10, p=1, q=0, r=-9, s=1, x=12, y=1] [L39] COND FALSE !(!(a != b)) VAL [\old(counter)=0, a=3, b=1, counter=10, p=1, q=0, r=-9, s=1, x=12, y=1] [L42] COND TRUE a > b [L43] a = a - b [L44] p = p - q [L45] r = r - s VAL [\old(counter)=0, a=2, b=1, counter=10, p=1, q=0, r=-10, s=1, x=12, y=1] [L34] EXPR counter++ VAL [\old(counter)=0, a=2, b=1, counter=11, counter++=10, p=1, q=0, r=-10, s=1, x=12, y=1] [L34] COND FALSE !(counter++<10) [L53] CALL __VERIFIER_assert(a - b == 0) VAL [\old(cond)=0, \old(counter)=0, counter=11] [L11] COND TRUE !(cond) VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=11] [L13] reach_error() VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=11] - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 38 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 68.9s, OverallIterations: 13, TraceHistogramMax: 31, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 6.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 292 SdHoareTripleChecker+Valid, 1.4s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 259 mSDsluCounter, 1669 SdHoareTripleChecker+Invalid, 1.4s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 1170 mSDsCounter, 152 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 877 IncrementalHoareTripleChecker+Invalid, 1029 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 152 mSolverCounterUnsat, 499 mSDtfsCounter, 877 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 826 GetRequests, 728 SyntacticMatches, 8 SemanticMatches, 90 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 85 ImplicationChecksByTransitivity, 0.5s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=507occurred in iteration=12, InterpolantAutomatonStates: 90, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.9s AutomataMinimizationTime, 12 MinimizatonAttempts, 40 StatesRemovedByMinimization, 8 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.3s SatisfiabilityAnalysisTime, 58.0s InterpolantComputationTime, 716 NumberOfCodeBlocks, 716 NumberOfCodeBlocksAsserted, 36 NumberOfCheckSat, 811 ConstructedInterpolants, 0 QuantifiedInterpolants, 2401 SizeOfPredicates, 23 NumberOfNonLiveVariables, 1453 ConjunctsInSsa, 127 ConjunctsInUnsatCore, 18 InterpolantComputations, 7 PerfectInterpolantSequences, 790/1151 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2022-04-27 12:49:19,563 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...