/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/cohendiv-ll_unwindbound5.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-14 15:14:55,594 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-14 15:14:55,596 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-14 15:14:55,620 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-14 15:14:55,621 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-14 15:14:55,621 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-14 15:14:55,622 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-14 15:14:55,623 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-14 15:14:55,624 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-14 15:14:55,625 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-14 15:14:55,625 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-14 15:14:55,626 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-14 15:14:55,626 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-14 15:14:55,626 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-14 15:14:55,627 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-14 15:14:55,628 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-14 15:14:55,628 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-14 15:14:55,629 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-14 15:14:55,629 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-14 15:14:55,630 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-14 15:14:55,631 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-14 15:14:55,632 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-14 15:14:55,632 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-14 15:14:55,633 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-14 15:14:55,633 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-14 15:14:55,635 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-14 15:14:55,635 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-14 15:14:55,635 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-14 15:14:55,636 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-14 15:14:55,636 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-14 15:14:55,636 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-14 15:14:55,637 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-14 15:14:55,637 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-14 15:14:55,637 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-14 15:14:55,638 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-14 15:14:55,638 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-14 15:14:55,639 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-14 15:14:55,639 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-14 15:14:55,639 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-14 15:14:55,639 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-14 15:14:55,640 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-14 15:14:55,640 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-14 15:14:55,641 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-14 15:14:55,653 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-14 15:14:55,653 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-14 15:14:55,653 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-14 15:14:55,653 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-14 15:14:55,654 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-14 15:14:55,654 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-14 15:14:55,654 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-14 15:14:55,655 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-14 15:14:55,655 INFO L138 SettingsManager]: * Use SBE=true [2022-04-14 15:14:55,655 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-14 15:14:55,655 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-14 15:14:55,655 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-14 15:14:55,655 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-14 15:14:55,656 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-14 15:14:55,656 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-14 15:14:55,656 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-14 15:14:55,656 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-14 15:14:55,656 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-14 15:14:55,656 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-14 15:14:55,656 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-14 15:14:55,656 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-14 15:14:55,657 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-14 15:14:55,657 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-14 15:14:55,657 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-14 15:14:55,657 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 15:14:55,657 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-14 15:14:55,657 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-14 15:14:55,657 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-14 15:14:55,658 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-14 15:14:55,658 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-14 15:14:55,658 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-04-14 15:14:55,658 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-14 15:14:55,658 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-14 15:14:55,658 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-14 15:14:55,809 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-14 15:14:55,829 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-14 15:14:55,830 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-14 15:14:55,831 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-14 15:14:55,831 INFO L275 PluginConnector]: CDTParser initialized [2022-04-14 15:14:55,832 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_unwindbound5.c [2022-04-14 15:14:55,874 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/50b6cbd4c/444d38e7a91a4c0ab06d6bd68adfc288/FLAG6bcb3a39f [2022-04-14 15:14:56,232 INFO L306 CDTParser]: Found 1 translation units. [2022-04-14 15:14:56,232 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_unwindbound5.c [2022-04-14 15:14:56,237 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/50b6cbd4c/444d38e7a91a4c0ab06d6bd68adfc288/FLAG6bcb3a39f [2022-04-14 15:14:56,248 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/50b6cbd4c/444d38e7a91a4c0ab06d6bd68adfc288 [2022-04-14 15:14:56,251 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-14 15:14:56,252 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-14 15:14:56,253 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-14 15:14:56,253 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-14 15:14:56,255 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-14 15:14:56,256 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 03:14:56" (1/1) ... [2022-04-14 15:14:56,257 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7041b942 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:14:56, skipping insertion in model container [2022-04-14 15:14:56,257 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 03:14:56" (1/1) ... [2022-04-14 15:14:56,261 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-14 15:14:56,271 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-14 15:14:56,422 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/cohendiv-ll_unwindbound5.c[576,589] [2022-04-14 15:14:56,445 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 15:14:56,452 INFO L203 MainTranslator]: Completed pre-run [2022-04-14 15:14:56,462 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/cohendiv-ll_unwindbound5.c[576,589] [2022-04-14 15:14:56,469 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 15:14:56,477 INFO L208 MainTranslator]: Completed translation [2022-04-14 15:14:56,477 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:14:56 WrapperNode [2022-04-14 15:14:56,478 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-14 15:14:56,478 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-14 15:14:56,478 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-14 15:14:56,478 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-14 15:14:56,485 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:14:56" (1/1) ... [2022-04-14 15:14:56,485 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:14:56" (1/1) ... [2022-04-14 15:14:56,489 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:14:56" (1/1) ... [2022-04-14 15:14:56,489 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:14:56" (1/1) ... [2022-04-14 15:14:56,499 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:14:56" (1/1) ... [2022-04-14 15:14:56,504 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:14:56" (1/1) ... [2022-04-14 15:14:56,507 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:14:56" (1/1) ... [2022-04-14 15:14:56,509 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-14 15:14:56,510 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-14 15:14:56,510 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-14 15:14:56,510 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-14 15:14:56,511 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:14:56" (1/1) ... [2022-04-14 15:14:56,515 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 15:14:56,522 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:14:56,530 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-14 15:14:56,537 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-14 15:14:56,563 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-14 15:14:56,563 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-14 15:14:56,564 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-14 15:14:56,564 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-14 15:14:56,564 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-14 15:14:56,565 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-14 15:14:56,565 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-14 15:14:56,565 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-14 15:14:56,565 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-14 15:14:56,566 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-14 15:14:56,566 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-14 15:14:56,566 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-14 15:14:56,566 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-14 15:14:56,566 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-14 15:14:56,568 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-14 15:14:56,568 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-14 15:14:56,568 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-14 15:14:56,568 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-14 15:14:56,568 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-14 15:14:56,568 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-14 15:14:56,608 INFO L234 CfgBuilder]: Building ICFG [2022-04-14 15:14:56,609 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-14 15:14:56,771 INFO L275 CfgBuilder]: Performing block encoding [2022-04-14 15:14:56,775 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-14 15:14:56,775 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-14 15:14:56,776 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 03:14:56 BoogieIcfgContainer [2022-04-14 15:14:56,776 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-14 15:14:56,777 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-14 15:14:56,777 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-14 15:14:56,780 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-14 15:14:56,780 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 14.04 03:14:56" (1/3) ... [2022-04-14 15:14:56,789 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7c99fd26 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 03:14:56, skipping insertion in model container [2022-04-14 15:14:56,789 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:14:56" (2/3) ... [2022-04-14 15:14:56,789 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7c99fd26 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 03:14:56, skipping insertion in model container [2022-04-14 15:14:56,789 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 03:14:56" (3/3) ... [2022-04-14 15:14:56,790 INFO L111 eAbstractionObserver]: Analyzing ICFG cohendiv-ll_unwindbound5.c [2022-04-14 15:14:56,793 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-14 15:14:56,793 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-14 15:14:56,835 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-14 15:14:56,848 INFO L340 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 [2022-04-14 15:14:56,848 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-14 15:14:56,862 INFO L276 IsEmpty]: Start isEmpty. Operand has 38 states, 22 states have (on average 1.4090909090909092) internal successors, (31), 23 states have internal predecessors, (31), 10 states have call successors, (10), 4 states have call predecessors, (10), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-14 15:14:56,865 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-14 15:14:56,866 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:14:56,866 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:14:56,866 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:14:56,870 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:14:56,870 INFO L85 PathProgramCache]: Analyzing trace with hash -1588022502, now seen corresponding path program 1 times [2022-04-14 15:14:56,876 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:14:56,877 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1492052931] [2022-04-14 15:14:56,877 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:56,878 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:14:56,959 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:57,010 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-14 15:14:57,014 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:57,024 INFO L290 TraceCheckUtils]: 0: Hoare triple {50#(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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {41#true} is VALID [2022-04-14 15:14:57,024 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-14 15:14:57,024 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {41#true} {41#true} #93#return; {41#true} is VALID [2022-04-14 15:14:57,025 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-14 15:14:57,026 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:57,033 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-14 15:14:57,033 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-14 15:14:57,034 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-14 15:14:57,034 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {41#true} #77#return; {42#false} is VALID [2022-04-14 15:14:57,035 INFO L272 TraceCheckUtils]: 0: Hoare triple {41#true} call ULTIMATE.init(); {50#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-14 15:14:57,035 INFO L290 TraceCheckUtils]: 1: Hoare triple {50#(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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {41#true} is VALID [2022-04-14 15:14:57,035 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-14 15:14:57,035 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#true} {41#true} #93#return; {41#true} is VALID [2022-04-14 15:14:57,036 INFO L272 TraceCheckUtils]: 4: Hoare triple {41#true} call #t~ret8 := main(); {41#true} is VALID [2022-04-14 15:14:57,036 INFO L290 TraceCheckUtils]: 5: Hoare triple {41#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~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; {41#true} is VALID [2022-04-14 15:14:57,036 INFO L272 TraceCheckUtils]: 6: Hoare triple {41#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {41#true} is VALID [2022-04-14 15:14:57,036 INFO L290 TraceCheckUtils]: 7: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-14 15:14:57,036 INFO L290 TraceCheckUtils]: 8: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-14 15:14:57,037 INFO L290 TraceCheckUtils]: 9: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-14 15:14:57,037 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42#false} {41#true} #77#return; {42#false} is VALID [2022-04-14 15:14:57,037 INFO L290 TraceCheckUtils]: 11: Hoare triple {42#false} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {42#false} is VALID [2022-04-14 15:14:57,037 INFO L290 TraceCheckUtils]: 12: Hoare triple {42#false} assume !true; {42#false} is VALID [2022-04-14 15:14:57,037 INFO L272 TraceCheckUtils]: 13: Hoare triple {42#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {42#false} is VALID [2022-04-14 15:14:57,038 INFO L290 TraceCheckUtils]: 14: Hoare triple {42#false} ~cond := #in~cond; {42#false} is VALID [2022-04-14 15:14:57,039 INFO L290 TraceCheckUtils]: 15: Hoare triple {42#false} assume 0 == ~cond; {42#false} is VALID [2022-04-14 15:14:57,040 INFO L290 TraceCheckUtils]: 16: Hoare triple {42#false} assume !false; {42#false} is VALID [2022-04-14 15:14:57,040 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-14 15:14:57,040 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:14:57,040 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1492052931] [2022-04-14 15:14:57,041 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1492052931] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 15:14:57,041 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 15:14:57,041 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-14 15:14:57,043 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1496332205] [2022-04-14 15:14:57,044 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 15:14:57,047 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, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-14 15:14:57,048 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:14:57,051 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, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 15:14:57,076 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:57,076 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-14 15:14:57,077 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:14:57,093 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-14 15:14:57,094 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-14 15:14:57,096 INFO L87 Difference]: Start difference. First operand has 38 states, 22 states have (on average 1.4090909090909092) internal successors, (31), 23 states have internal predecessors, (31), 10 states have call successors, (10), 4 states have call predecessors, (10), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) 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, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 15:14:57,258 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:57,258 INFO L93 Difference]: Finished difference Result 68 states and 101 transitions. [2022-04-14 15:14:57,259 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-14 15:14:57,259 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, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-14 15:14:57,260 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:14:57,261 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, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 15:14:57,275 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 101 transitions. [2022-04-14 15:14:57,276 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, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 15:14:57,284 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 101 transitions. [2022-04-14 15:14:57,285 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 101 transitions. [2022-04-14 15:14:57,386 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:57,392 INFO L225 Difference]: With dead ends: 68 [2022-04-14 15:14:57,393 INFO L226 Difference]: Without dead ends: 34 [2022-04-14 15:14:57,395 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 6 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-14 15:14:57,397 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 24 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 49 SdHoareTripleChecker+Invalid, 33 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 24 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 15:14:57,397 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 49 Invalid, 33 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 24 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 15:14:57,414 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-14 15:14:57,431 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 33. [2022-04-14 15:14:57,432 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:14:57,432 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 15:14:57,433 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 15:14:57,433 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 15:14:57,450 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:57,450 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-14 15:14:57,451 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-14 15:14:57,451 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:57,451 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:57,452 INFO L74 IsIncluded]: Start isIncluded. First operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 34 states. [2022-04-14 15:14:57,452 INFO L87 Difference]: Start difference. First operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 34 states. [2022-04-14 15:14:57,455 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:57,455 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-14 15:14:57,455 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-14 15:14:57,456 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:57,456 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:57,456 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:14:57,456 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:14:57,457 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 15:14:57,459 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 42 transitions. [2022-04-14 15:14:57,460 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 42 transitions. Word has length 17 [2022-04-14 15:14:57,460 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:14:57,460 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 42 transitions. [2022-04-14 15:14:57,461 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 15:14:57,461 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 42 transitions. [2022-04-14 15:14:57,461 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-14 15:14:57,461 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:14:57,461 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:14:57,462 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-14 15:14:57,462 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:14:57,462 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:14:57,462 INFO L85 PathProgramCache]: Analyzing trace with hash 766070672, now seen corresponding path program 1 times [2022-04-14 15:14:57,462 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:14:57,463 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [667064903] [2022-04-14 15:14:57,463 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:57,463 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:14:57,487 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:14:57,487 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1848355725] [2022-04-14 15:14:57,487 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:57,487 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:57,503 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:14:57,505 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-14 15:14:57,510 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-14 15:14:57,552 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:57,554 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-14 15:14:57,567 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:57,569 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:14:57,688 INFO L272 TraceCheckUtils]: 0: Hoare triple {265#true} call ULTIMATE.init(); {265#true} is VALID [2022-04-14 15:14:57,690 INFO L290 TraceCheckUtils]: 1: Hoare triple {265#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {273#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:57,690 INFO L290 TraceCheckUtils]: 2: Hoare triple {273#(<= ~counter~0 0)} assume true; {273#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:57,691 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {273#(<= ~counter~0 0)} {265#true} #93#return; {273#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:57,691 INFO L272 TraceCheckUtils]: 4: Hoare triple {273#(<= ~counter~0 0)} call #t~ret8 := main(); {273#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:57,692 INFO L290 TraceCheckUtils]: 5: Hoare triple {273#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~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; {273#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:57,692 INFO L272 TraceCheckUtils]: 6: Hoare triple {273#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {273#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:57,692 INFO L290 TraceCheckUtils]: 7: Hoare triple {273#(<= ~counter~0 0)} ~cond := #in~cond; {273#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:57,693 INFO L290 TraceCheckUtils]: 8: Hoare triple {273#(<= ~counter~0 0)} assume !(0 == ~cond); {273#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:57,693 INFO L290 TraceCheckUtils]: 9: Hoare triple {273#(<= ~counter~0 0)} assume true; {273#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:57,694 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {273#(<= ~counter~0 0)} {273#(<= ~counter~0 0)} #77#return; {273#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:57,694 INFO L290 TraceCheckUtils]: 11: Hoare triple {273#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {273#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:57,695 INFO L290 TraceCheckUtils]: 12: Hoare triple {273#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {307#(<= |main_#t~post6| 0)} is VALID [2022-04-14 15:14:57,695 INFO L290 TraceCheckUtils]: 13: Hoare triple {307#(<= |main_#t~post6| 0)} assume !(#t~post6 < 5);havoc #t~post6; {266#false} is VALID [2022-04-14 15:14:57,695 INFO L272 TraceCheckUtils]: 14: Hoare triple {266#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {266#false} is VALID [2022-04-14 15:14:57,696 INFO L290 TraceCheckUtils]: 15: Hoare triple {266#false} ~cond := #in~cond; {266#false} is VALID [2022-04-14 15:14:57,696 INFO L290 TraceCheckUtils]: 16: Hoare triple {266#false} assume 0 == ~cond; {266#false} is VALID [2022-04-14 15:14:57,696 INFO L290 TraceCheckUtils]: 17: Hoare triple {266#false} assume !false; {266#false} is VALID [2022-04-14 15:14:57,697 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-14 15:14:57,697 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 15:14:57,697 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:14:57,697 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [667064903] [2022-04-14 15:14:57,697 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:14:57,698 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1848355725] [2022-04-14 15:14:57,698 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1848355725] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 15:14:57,698 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 15:14:57,698 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-14 15:14:57,699 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1268990191] [2022-04-14 15:14:57,699 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 15:14:57,699 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-14 15:14:57,699 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:14:57,700 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-14 15:14:57,714 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:57,714 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-14 15:14:57,715 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:14:57,715 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-14 15:14:57,716 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-14 15:14:57,716 INFO L87 Difference]: Start difference. First operand 33 states and 42 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-14 15:14:57,788 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:57,788 INFO L93 Difference]: Finished difference Result 42 states and 51 transitions. [2022-04-14 15:14:57,788 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-14 15:14:57,789 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-14 15:14:57,789 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:14:57,789 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-14 15:14:57,793 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 51 transitions. [2022-04-14 15:14:57,793 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-14 15:14:57,796 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 51 transitions. [2022-04-14 15:14:57,797 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 51 transitions. [2022-04-14 15:14:57,828 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-14 15:14:57,832 INFO L225 Difference]: With dead ends: 42 [2022-04-14 15:14:57,832 INFO L226 Difference]: Without dead ends: 35 [2022-04-14 15:14:57,832 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-14 15:14:57,834 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 0 mSDsluCounter, 67 mSDsCounter, 0 mSdLazyCounter, 8 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 107 SdHoareTripleChecker+Invalid, 8 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 8 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 15:14:57,834 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 107 Invalid, 8 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 8 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 15:14:57,836 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-14 15:14:57,848 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 35. [2022-04-14 15:14:57,848 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:14:57,849 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 15:14:57,849 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 15:14:57,851 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 15:14:57,858 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:57,858 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-14 15:14:57,858 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-14 15:14:57,863 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:57,863 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:57,863 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 35 states. [2022-04-14 15:14:57,863 INFO L87 Difference]: Start difference. First operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 35 states. [2022-04-14 15:14:57,868 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:57,868 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-14 15:14:57,868 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-14 15:14:57,869 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:57,870 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:57,870 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:14:57,870 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:14:57,870 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 15:14:57,875 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 44 transitions. [2022-04-14 15:14:57,876 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 44 transitions. Word has length 18 [2022-04-14 15:14:57,876 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:14:57,876 INFO L478 AbstractCegarLoop]: Abstraction has 35 states and 44 transitions. [2022-04-14 15:14:57,876 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-14 15:14:57,876 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-14 15:14:57,877 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-14 15:14:57,877 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:14:57,877 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:14:57,894 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-14 15:14:58,090 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:58,091 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:14:58,091 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:14:58,091 INFO L85 PathProgramCache]: Analyzing trace with hash 767560222, now seen corresponding path program 1 times [2022-04-14 15:14:58,092 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:14:58,092 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1032351700] [2022-04-14 15:14:58,092 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:58,092 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:14:58,113 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:14:58,113 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1611006014] [2022-04-14 15:14:58,113 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:58,114 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:58,114 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:14:58,116 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-14 15:14:58,118 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-14 15:14:58,150 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:58,150 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-14 15:14:58,157 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:58,158 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:14:58,253 INFO L272 TraceCheckUtils]: 0: Hoare triple {505#true} call ULTIMATE.init(); {505#true} is VALID [2022-04-14 15:14:58,253 INFO L290 TraceCheckUtils]: 1: Hoare triple {505#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {505#true} is VALID [2022-04-14 15:14:58,253 INFO L290 TraceCheckUtils]: 2: Hoare triple {505#true} assume true; {505#true} is VALID [2022-04-14 15:14:58,253 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {505#true} {505#true} #93#return; {505#true} is VALID [2022-04-14 15:14:58,254 INFO L272 TraceCheckUtils]: 4: Hoare triple {505#true} call #t~ret8 := main(); {505#true} is VALID [2022-04-14 15:14:58,254 INFO L290 TraceCheckUtils]: 5: Hoare triple {505#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~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; {505#true} is VALID [2022-04-14 15:14:58,254 INFO L272 TraceCheckUtils]: 6: Hoare triple {505#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {505#true} is VALID [2022-04-14 15:14:58,254 INFO L290 TraceCheckUtils]: 7: Hoare triple {505#true} ~cond := #in~cond; {505#true} is VALID [2022-04-14 15:14:58,254 INFO L290 TraceCheckUtils]: 8: Hoare triple {505#true} assume !(0 == ~cond); {505#true} is VALID [2022-04-14 15:14:58,254 INFO L290 TraceCheckUtils]: 9: Hoare triple {505#true} assume true; {505#true} is VALID [2022-04-14 15:14:58,254 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {505#true} {505#true} #77#return; {505#true} is VALID [2022-04-14 15:14:58,255 INFO L290 TraceCheckUtils]: 11: Hoare triple {505#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {543#(and (= main_~a~0 0) (= main_~b~0 0))} is VALID [2022-04-14 15:14:58,255 INFO L290 TraceCheckUtils]: 12: Hoare triple {543#(and (= main_~a~0 0) (= main_~b~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {543#(and (= main_~a~0 0) (= main_~b~0 0))} is VALID [2022-04-14 15:14:58,256 INFO L290 TraceCheckUtils]: 13: Hoare triple {543#(and (= main_~a~0 0) (= main_~b~0 0))} assume !!(#t~post6 < 5);havoc #t~post6; {543#(and (= main_~a~0 0) (= main_~b~0 0))} is VALID [2022-04-14 15:14:58,257 INFO L272 TraceCheckUtils]: 14: Hoare triple {543#(and (= main_~a~0 0) (= main_~b~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {553#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:14:58,257 INFO L290 TraceCheckUtils]: 15: Hoare triple {553#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {557#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:14:58,257 INFO L290 TraceCheckUtils]: 16: Hoare triple {557#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {506#false} is VALID [2022-04-14 15:14:58,257 INFO L290 TraceCheckUtils]: 17: Hoare triple {506#false} assume !false; {506#false} is VALID [2022-04-14 15:14:58,258 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-14 15:14:58,258 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 15:14:58,258 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:14:58,258 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1032351700] [2022-04-14 15:14:58,258 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:14:58,258 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1611006014] [2022-04-14 15:14:58,258 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1611006014] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 15:14:58,259 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 15:14:58,259 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-14 15:14:58,259 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [962010558] [2022-04-14 15:14:58,259 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 15:14:58,259 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, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-14 15:14:58,259 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:14:58,260 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, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 15:14:58,270 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:58,271 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-14 15:14:58,271 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:14:58,271 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-14 15:14:58,271 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-14 15:14:58,271 INFO L87 Difference]: Start difference. First operand 35 states and 44 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, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 15:14:58,396 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:58,397 INFO L93 Difference]: Finished difference Result 45 states and 56 transitions. [2022-04-14 15:14:58,397 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 15:14:58,397 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, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-14 15:14:58,398 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:14:58,398 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, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 15:14:58,400 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-14 15:14:58,400 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, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 15:14:58,401 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-14 15:14:58,401 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 56 transitions. [2022-04-14 15:14:58,440 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:58,443 INFO L225 Difference]: With dead ends: 45 [2022-04-14 15:14:58,444 INFO L226 Difference]: Without dead ends: 43 [2022-04-14 15:14:58,444 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 14 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-14 15:14:58,446 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 6 mSDsluCounter, 104 mSDsCounter, 0 mSdLazyCounter, 28 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 145 SdHoareTripleChecker+Invalid, 28 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 28 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 15:14:58,447 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 145 Invalid, 28 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 28 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 15:14:58,448 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-14 15:14:58,460 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 40. [2022-04-14 15:14:58,461 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:14:58,462 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 15:14:58,462 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 15:14:58,462 INFO L87 Difference]: Start difference. First operand 43 states. Second operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 15:14:58,465 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:58,465 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-14 15:14:58,465 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-14 15:14:58,466 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:58,467 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:58,467 INFO L74 IsIncluded]: Start isIncluded. First operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 43 states. [2022-04-14 15:14:58,468 INFO L87 Difference]: Start difference. First operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 43 states. [2022-04-14 15:14:58,469 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:58,469 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-14 15:14:58,469 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-14 15:14:58,470 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:58,470 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:58,470 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:14:58,470 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:14:58,470 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 15:14:58,471 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 49 transitions. [2022-04-14 15:14:58,471 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 49 transitions. Word has length 18 [2022-04-14 15:14:58,472 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:14:58,472 INFO L478 AbstractCegarLoop]: Abstraction has 40 states and 49 transitions. [2022-04-14 15:14:58,472 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 15:14:58,472 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 49 transitions. [2022-04-14 15:14:58,472 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-14 15:14:58,472 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:14:58,472 INFO L499 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:14:58,491 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-14 15:14:58,687 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-14 15:14:58,688 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:14:58,688 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:14:58,688 INFO L85 PathProgramCache]: Analyzing trace with hash -1016228092, now seen corresponding path program 1 times [2022-04-14 15:14:58,688 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:14:58,688 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [751468614] [2022-04-14 15:14:58,688 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:58,689 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:14:58,699 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:14:58,699 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [48155839] [2022-04-14 15:14:58,699 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:58,699 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:58,699 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:14:58,700 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-14 15:14:58,701 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-14 15:14:58,730 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:58,731 INFO L263 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-14 15:14:58,737 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:58,738 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:14:58,828 INFO L272 TraceCheckUtils]: 0: Hoare triple {776#true} call ULTIMATE.init(); {776#true} is VALID [2022-04-14 15:14:58,828 INFO L290 TraceCheckUtils]: 1: Hoare triple {776#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {776#true} is VALID [2022-04-14 15:14:58,828 INFO L290 TraceCheckUtils]: 2: Hoare triple {776#true} assume true; {776#true} is VALID [2022-04-14 15:14:58,828 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {776#true} {776#true} #93#return; {776#true} is VALID [2022-04-14 15:14:58,828 INFO L272 TraceCheckUtils]: 4: Hoare triple {776#true} call #t~ret8 := main(); {776#true} is VALID [2022-04-14 15:14:58,828 INFO L290 TraceCheckUtils]: 5: Hoare triple {776#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~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; {776#true} is VALID [2022-04-14 15:14:58,829 INFO L272 TraceCheckUtils]: 6: Hoare triple {776#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {776#true} is VALID [2022-04-14 15:14:58,829 INFO L290 TraceCheckUtils]: 7: Hoare triple {776#true} ~cond := #in~cond; {776#true} is VALID [2022-04-14 15:14:58,829 INFO L290 TraceCheckUtils]: 8: Hoare triple {776#true} assume !(0 == ~cond); {776#true} is VALID [2022-04-14 15:14:58,829 INFO L290 TraceCheckUtils]: 9: Hoare triple {776#true} assume true; {776#true} is VALID [2022-04-14 15:14:58,829 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {776#true} {776#true} #77#return; {776#true} is VALID [2022-04-14 15:14:58,829 INFO L290 TraceCheckUtils]: 11: Hoare triple {776#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:14:58,830 INFO L290 TraceCheckUtils]: 12: Hoare triple {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:14:58,832 INFO L290 TraceCheckUtils]: 13: Hoare triple {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 5);havoc #t~post6; {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:14:58,832 INFO L272 TraceCheckUtils]: 14: Hoare triple {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {776#true} is VALID [2022-04-14 15:14:58,832 INFO L290 TraceCheckUtils]: 15: Hoare triple {776#true} ~cond := #in~cond; {776#true} is VALID [2022-04-14 15:14:58,832 INFO L290 TraceCheckUtils]: 16: Hoare triple {776#true} assume !(0 == ~cond); {776#true} is VALID [2022-04-14 15:14:58,832 INFO L290 TraceCheckUtils]: 17: Hoare triple {776#true} assume true; {776#true} is VALID [2022-04-14 15:14:58,838 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {776#true} {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:14:58,839 INFO L272 TraceCheckUtils]: 19: Hoare triple {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {839#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:14:58,839 INFO L290 TraceCheckUtils]: 20: Hoare triple {839#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {843#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:14:58,840 INFO L290 TraceCheckUtils]: 21: Hoare triple {843#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {777#false} is VALID [2022-04-14 15:14:58,840 INFO L290 TraceCheckUtils]: 22: Hoare triple {777#false} assume !false; {777#false} is VALID [2022-04-14 15:14:58,840 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-14 15:14:58,840 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 15:14:58,840 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:14:58,840 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [751468614] [2022-04-14 15:14:58,840 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:14:58,841 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [48155839] [2022-04-14 15:14:58,841 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [48155839] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 15:14:58,841 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 15:14:58,841 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-14 15:14:58,841 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2016559101] [2022-04-14 15:14:58,841 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 15:14:58,841 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-14 15:14:58,842 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:14:58,842 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-14 15:14:58,856 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:58,856 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-14 15:14:58,856 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:14:58,857 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-14 15:14:58,857 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-14 15:14:58,857 INFO L87 Difference]: Start difference. First operand 40 states and 49 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-14 15:14:59,035 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:59,035 INFO L93 Difference]: Finished difference Result 58 states and 74 transitions. [2022-04-14 15:14:59,035 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 15:14:59,035 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-14 15:14:59,035 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:14:59,036 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-14 15:14:59,037 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 71 transitions. [2022-04-14 15:14:59,037 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-14 15:14:59,038 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 71 transitions. [2022-04-14 15:14:59,038 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 71 transitions. [2022-04-14 15:14:59,086 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:59,088 INFO L225 Difference]: With dead ends: 58 [2022-04-14 15:14:59,088 INFO L226 Difference]: Without dead ends: 55 [2022-04-14 15:14:59,088 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-14 15:14:59,089 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 13 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 52 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 52 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 15:14:59,089 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 139 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 52 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 15:14:59,089 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-14 15:14:59,096 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 54. [2022-04-14 15:14:59,096 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:14:59,096 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-14 15:14:59,096 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-14 15:14:59,097 INFO L87 Difference]: Start difference. First operand 55 states. Second operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-14 15:14:59,098 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:59,099 INFO L93 Difference]: Finished difference Result 55 states and 70 transitions. [2022-04-14 15:14:59,099 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 70 transitions. [2022-04-14 15:14:59,099 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:59,099 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:59,099 INFO L74 IsIncluded]: Start isIncluded. First operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 55 states. [2022-04-14 15:14:59,100 INFO L87 Difference]: Start difference. First operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 55 states. [2022-04-14 15:14:59,101 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:59,101 INFO L93 Difference]: Finished difference Result 55 states and 70 transitions. [2022-04-14 15:14:59,101 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 70 transitions. [2022-04-14 15:14:59,102 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:59,102 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:59,102 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:14:59,102 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:14:59,102 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-14 15:14:59,104 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 69 transitions. [2022-04-14 15:14:59,104 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 69 transitions. Word has length 23 [2022-04-14 15:14:59,104 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:14:59,104 INFO L478 AbstractCegarLoop]: Abstraction has 54 states and 69 transitions. [2022-04-14 15:14:59,104 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-14 15:14:59,104 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 69 transitions. [2022-04-14 15:14:59,105 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-14 15:14:59,105 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:14:59,105 INFO L499 BasicCegarLoop]: trace histogram [3, 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-14 15:14:59,121 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-14 15:14:59,321 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:59,321 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:14:59,321 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:14:59,321 INFO L85 PathProgramCache]: Analyzing trace with hash 2019703110, now seen corresponding path program 1 times [2022-04-14 15:14:59,322 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:14:59,322 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1438457668] [2022-04-14 15:14:59,322 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:59,322 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:14:59,333 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:14:59,334 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [569137607] [2022-04-14 15:14:59,334 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:59,334 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:59,334 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:14:59,335 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-14 15:14:59,336 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-14 15:14:59,371 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:59,372 INFO L263 TraceCheckSpWp]: Trace formula consists of 114 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-14 15:14:59,384 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:59,384 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:14:59,468 INFO L272 TraceCheckUtils]: 0: Hoare triple {1126#true} call ULTIMATE.init(); {1126#true} is VALID [2022-04-14 15:14:59,469 INFO L290 TraceCheckUtils]: 1: Hoare triple {1126#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1126#true} is VALID [2022-04-14 15:14:59,469 INFO L290 TraceCheckUtils]: 2: Hoare triple {1126#true} assume true; {1126#true} is VALID [2022-04-14 15:14:59,469 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1126#true} {1126#true} #93#return; {1126#true} is VALID [2022-04-14 15:14:59,470 INFO L272 TraceCheckUtils]: 4: Hoare triple {1126#true} call #t~ret8 := main(); {1126#true} is VALID [2022-04-14 15:14:59,471 INFO L290 TraceCheckUtils]: 5: Hoare triple {1126#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~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; {1126#true} is VALID [2022-04-14 15:14:59,471 INFO L272 TraceCheckUtils]: 6: Hoare triple {1126#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1126#true} is VALID [2022-04-14 15:14:59,471 INFO L290 TraceCheckUtils]: 7: Hoare triple {1126#true} ~cond := #in~cond; {1126#true} is VALID [2022-04-14 15:14:59,471 INFO L290 TraceCheckUtils]: 8: Hoare triple {1126#true} assume !(0 == ~cond); {1126#true} is VALID [2022-04-14 15:14:59,471 INFO L290 TraceCheckUtils]: 9: Hoare triple {1126#true} assume true; {1126#true} is VALID [2022-04-14 15:14:59,471 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1126#true} {1126#true} #77#return; {1126#true} is VALID [2022-04-14 15:14:59,471 INFO L290 TraceCheckUtils]: 11: Hoare triple {1126#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1126#true} is VALID [2022-04-14 15:14:59,472 INFO L290 TraceCheckUtils]: 12: Hoare triple {1126#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1126#true} is VALID [2022-04-14 15:14:59,472 INFO L290 TraceCheckUtils]: 13: Hoare triple {1126#true} assume !!(#t~post6 < 5);havoc #t~post6; {1126#true} is VALID [2022-04-14 15:14:59,472 INFO L272 TraceCheckUtils]: 14: Hoare triple {1126#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1126#true} is VALID [2022-04-14 15:14:59,472 INFO L290 TraceCheckUtils]: 15: Hoare triple {1126#true} ~cond := #in~cond; {1126#true} is VALID [2022-04-14 15:14:59,472 INFO L290 TraceCheckUtils]: 16: Hoare triple {1126#true} assume !(0 == ~cond); {1126#true} is VALID [2022-04-14 15:14:59,472 INFO L290 TraceCheckUtils]: 17: Hoare triple {1126#true} assume true; {1126#true} is VALID [2022-04-14 15:14:59,472 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1126#true} {1126#true} #79#return; {1126#true} is VALID [2022-04-14 15:14:59,474 INFO L272 TraceCheckUtils]: 19: Hoare triple {1126#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1126#true} is VALID [2022-04-14 15:14:59,475 INFO L290 TraceCheckUtils]: 20: Hoare triple {1126#true} ~cond := #in~cond; {1126#true} is VALID [2022-04-14 15:14:59,475 INFO L290 TraceCheckUtils]: 21: Hoare triple {1126#true} assume !(0 == ~cond); {1126#true} is VALID [2022-04-14 15:14:59,475 INFO L290 TraceCheckUtils]: 22: Hoare triple {1126#true} assume true; {1126#true} is VALID [2022-04-14 15:14:59,475 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1126#true} {1126#true} #81#return; {1126#true} is VALID [2022-04-14 15:14:59,476 INFO L290 TraceCheckUtils]: 24: Hoare triple {1126#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1203#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-14 15:14:59,476 INFO L290 TraceCheckUtils]: 25: Hoare triple {1203#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1203#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-14 15:14:59,476 INFO L290 TraceCheckUtils]: 26: Hoare triple {1203#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} assume !!(#t~post7 < 5);havoc #t~post7; {1203#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-14 15:14:59,477 INFO L272 TraceCheckUtils]: 27: Hoare triple {1203#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1213#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:14:59,478 INFO L290 TraceCheckUtils]: 28: Hoare triple {1213#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1217#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:14:59,478 INFO L290 TraceCheckUtils]: 29: Hoare triple {1217#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1127#false} is VALID [2022-04-14 15:14:59,478 INFO L290 TraceCheckUtils]: 30: Hoare triple {1127#false} assume !false; {1127#false} is VALID [2022-04-14 15:14:59,478 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-14 15:14:59,479 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 15:14:59,479 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:14:59,479 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1438457668] [2022-04-14 15:14:59,479 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:14:59,482 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [569137607] [2022-04-14 15:14:59,482 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [569137607] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 15:14:59,482 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 15:14:59,483 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-14 15:14:59,483 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1953602267] [2022-04-14 15:14:59,483 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 15:14:59,483 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, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 31 [2022-04-14 15:14:59,484 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:14:59,484 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, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-14 15:14:59,501 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-14 15:14:59,501 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-14 15:14:59,501 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:14:59,501 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-14 15:14:59,502 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-14 15:14:59,502 INFO L87 Difference]: Start difference. First operand 54 states and 69 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, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-14 15:14:59,677 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:59,677 INFO L93 Difference]: Finished difference Result 83 states and 113 transitions. [2022-04-14 15:14:59,677 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 15:14:59,677 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, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 31 [2022-04-14 15:14:59,677 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:14:59,678 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, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-14 15:14:59,679 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 72 transitions. [2022-04-14 15:14:59,679 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, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-14 15:14:59,680 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 72 transitions. [2022-04-14 15:14:59,680 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 72 transitions. [2022-04-14 15:14:59,728 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:59,729 INFO L225 Difference]: With dead ends: 83 [2022-04-14 15:14:59,729 INFO L226 Difference]: Without dead ends: 81 [2022-04-14 15:14:59,730 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 31 GetRequests, 27 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-14 15:14:59,730 INFO L913 BasicCegarLoop]: 46 mSDtfsCounter, 13 mSDsluCounter, 99 mSDsCounter, 0 mSdLazyCounter, 62 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 145 SdHoareTripleChecker+Invalid, 63 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 62 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 15:14:59,730 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 145 Invalid, 63 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 62 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 15:14:59,731 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 81 states. [2022-04-14 15:14:59,745 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 81 to 74. [2022-04-14 15:14:59,745 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:14:59,745 INFO L82 GeneralOperation]: Start isEquivalent. First operand 81 states. Second operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:14:59,745 INFO L74 IsIncluded]: Start isIncluded. First operand 81 states. Second operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:14:59,747 INFO L87 Difference]: Start difference. First operand 81 states. Second operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:14:59,751 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:59,751 INFO L93 Difference]: Finished difference Result 81 states and 111 transitions. [2022-04-14 15:14:59,751 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 111 transitions. [2022-04-14 15:14:59,752 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:59,752 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:59,752 INFO L74 IsIncluded]: Start isIncluded. First operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 81 states. [2022-04-14 15:14:59,752 INFO L87 Difference]: Start difference. First operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 81 states. [2022-04-14 15:14:59,755 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:59,756 INFO L93 Difference]: Finished difference Result 81 states and 111 transitions. [2022-04-14 15:14:59,756 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 111 transitions. [2022-04-14 15:14:59,756 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:59,756 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:59,756 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:14:59,756 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:14:59,757 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:14:59,760 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 100 transitions. [2022-04-14 15:14:59,760 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 100 transitions. Word has length 31 [2022-04-14 15:14:59,760 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:14:59,760 INFO L478 AbstractCegarLoop]: Abstraction has 74 states and 100 transitions. [2022-04-14 15:14:59,760 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-14 15:14:59,761 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 100 transitions. [2022-04-14 15:14:59,761 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-14 15:14:59,761 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:14:59,761 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:14:59,784 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Ended with exit code 0 [2022-04-14 15:14:59,975 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:59,976 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:14:59,976 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:14:59,976 INFO L85 PathProgramCache]: Analyzing trace with hash 202176206, now seen corresponding path program 1 times [2022-04-14 15:14:59,976 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:14:59,976 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2132517103] [2022-04-14 15:14:59,976 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:59,976 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:14:59,986 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:14:59,986 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1830699158] [2022-04-14 15:14:59,986 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:59,986 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:59,986 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:14:59,994 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-14 15:14:59,995 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-14 15:15:00,033 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:00,034 INFO L263 TraceCheckSpWp]: Trace formula consists of 123 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-14 15:15:00,048 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:00,049 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:15:00,173 INFO L272 TraceCheckUtils]: 0: Hoare triple {1622#true} call ULTIMATE.init(); {1622#true} is VALID [2022-04-14 15:15:00,174 INFO L290 TraceCheckUtils]: 1: Hoare triple {1622#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1630#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:00,174 INFO L290 TraceCheckUtils]: 2: Hoare triple {1630#(<= ~counter~0 0)} assume true; {1630#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:00,175 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1630#(<= ~counter~0 0)} {1622#true} #93#return; {1630#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:00,176 INFO L272 TraceCheckUtils]: 4: Hoare triple {1630#(<= ~counter~0 0)} call #t~ret8 := main(); {1630#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:00,176 INFO L290 TraceCheckUtils]: 5: Hoare triple {1630#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~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; {1630#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:00,182 INFO L272 TraceCheckUtils]: 6: Hoare triple {1630#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1630#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:00,183 INFO L290 TraceCheckUtils]: 7: Hoare triple {1630#(<= ~counter~0 0)} ~cond := #in~cond; {1630#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:00,183 INFO L290 TraceCheckUtils]: 8: Hoare triple {1630#(<= ~counter~0 0)} assume !(0 == ~cond); {1630#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:00,183 INFO L290 TraceCheckUtils]: 9: Hoare triple {1630#(<= ~counter~0 0)} assume true; {1630#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:00,184 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1630#(<= ~counter~0 0)} {1630#(<= ~counter~0 0)} #77#return; {1630#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:00,184 INFO L290 TraceCheckUtils]: 11: Hoare triple {1630#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1630#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:00,185 INFO L290 TraceCheckUtils]: 12: Hoare triple {1630#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:00,185 INFO L290 TraceCheckUtils]: 13: Hoare triple {1664#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:00,185 INFO L272 TraceCheckUtils]: 14: Hoare triple {1664#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:00,186 INFO L290 TraceCheckUtils]: 15: Hoare triple {1664#(<= ~counter~0 1)} ~cond := #in~cond; {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:00,186 INFO L290 TraceCheckUtils]: 16: Hoare triple {1664#(<= ~counter~0 1)} assume !(0 == ~cond); {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:00,186 INFO L290 TraceCheckUtils]: 17: Hoare triple {1664#(<= ~counter~0 1)} assume true; {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:00,187 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1664#(<= ~counter~0 1)} {1664#(<= ~counter~0 1)} #79#return; {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:00,187 INFO L272 TraceCheckUtils]: 19: Hoare triple {1664#(<= ~counter~0 1)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:00,188 INFO L290 TraceCheckUtils]: 20: Hoare triple {1664#(<= ~counter~0 1)} ~cond := #in~cond; {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:00,188 INFO L290 TraceCheckUtils]: 21: Hoare triple {1664#(<= ~counter~0 1)} assume !(0 == ~cond); {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:00,188 INFO L290 TraceCheckUtils]: 22: Hoare triple {1664#(<= ~counter~0 1)} assume true; {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:00,189 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1664#(<= ~counter~0 1)} {1664#(<= ~counter~0 1)} #81#return; {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:00,189 INFO L290 TraceCheckUtils]: 24: Hoare triple {1664#(<= ~counter~0 1)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:00,189 INFO L290 TraceCheckUtils]: 25: Hoare triple {1664#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1704#(<= |main_#t~post7| 1)} is VALID [2022-04-14 15:15:00,190 INFO L290 TraceCheckUtils]: 26: Hoare triple {1704#(<= |main_#t~post7| 1)} assume !(#t~post7 < 5);havoc #t~post7; {1623#false} is VALID [2022-04-14 15:15:00,190 INFO L290 TraceCheckUtils]: 27: Hoare triple {1623#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {1623#false} is VALID [2022-04-14 15:15:00,190 INFO L290 TraceCheckUtils]: 28: Hoare triple {1623#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1623#false} is VALID [2022-04-14 15:15:00,190 INFO L290 TraceCheckUtils]: 29: Hoare triple {1623#false} assume !(#t~post6 < 5);havoc #t~post6; {1623#false} is VALID [2022-04-14 15:15:00,190 INFO L272 TraceCheckUtils]: 30: Hoare triple {1623#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1623#false} is VALID [2022-04-14 15:15:00,190 INFO L290 TraceCheckUtils]: 31: Hoare triple {1623#false} ~cond := #in~cond; {1623#false} is VALID [2022-04-14 15:15:00,190 INFO L290 TraceCheckUtils]: 32: Hoare triple {1623#false} assume 0 == ~cond; {1623#false} is VALID [2022-04-14 15:15:00,190 INFO L290 TraceCheckUtils]: 33: Hoare triple {1623#false} assume !false; {1623#false} is VALID [2022-04-14 15:15:00,191 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-14 15:15:00,191 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 15:15:00,191 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:15:00,191 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2132517103] [2022-04-14 15:15:00,191 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:15:00,191 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1830699158] [2022-04-14 15:15:00,191 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1830699158] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 15:15:00,191 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 15:15:00,191 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-14 15:15:00,191 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [561865260] [2022-04-14 15:15:00,191 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 15:15:00,192 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) Word has length 34 [2022-04-14 15:15:00,192 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:15:00,192 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-14 15:15:00,212 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-14 15:15:00,212 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-14 15:15:00,212 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:15:00,212 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-14 15:15:00,213 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-14 15:15:00,213 INFO L87 Difference]: Start difference. First operand 74 states and 100 transitions. Second operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-14 15:15:00,314 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:00,314 INFO L93 Difference]: Finished difference Result 113 states and 153 transitions. [2022-04-14 15:15:00,314 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 15:15:00,314 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) Word has length 34 [2022-04-14 15:15:00,314 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:15:00,314 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-14 15:15:00,315 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 85 transitions. [2022-04-14 15:15:00,316 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-14 15:15:00,317 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 85 transitions. [2022-04-14 15:15:00,317 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 85 transitions. [2022-04-14 15:15:00,372 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:15:00,375 INFO L225 Difference]: With dead ends: 113 [2022-04-14 15:15:00,375 INFO L226 Difference]: Without dead ends: 78 [2022-04-14 15:15:00,375 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 33 GetRequests, 30 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-14 15:15:00,378 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 6 mSDsluCounter, 94 mSDsCounter, 0 mSdLazyCounter, 17 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 135 SdHoareTripleChecker+Invalid, 22 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 17 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 15:15:00,378 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 135 Invalid, 22 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 17 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 15:15:00,378 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2022-04-14 15:15:00,392 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 78. [2022-04-14 15:15:00,392 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:15:00,392 INFO L82 GeneralOperation]: Start isEquivalent. First operand 78 states. Second operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:15:00,393 INFO L74 IsIncluded]: Start isIncluded. First operand 78 states. Second operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:15:00,393 INFO L87 Difference]: Start difference. First operand 78 states. Second operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:15:00,395 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:00,395 INFO L93 Difference]: Finished difference Result 78 states and 102 transitions. [2022-04-14 15:15:00,395 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 102 transitions. [2022-04-14 15:15:00,395 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:00,396 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:00,396 INFO L74 IsIncluded]: Start isIncluded. First operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 78 states. [2022-04-14 15:15:00,396 INFO L87 Difference]: Start difference. First operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 78 states. [2022-04-14 15:15:00,398 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:00,398 INFO L93 Difference]: Finished difference Result 78 states and 102 transitions. [2022-04-14 15:15:00,398 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 102 transitions. [2022-04-14 15:15:00,398 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:00,399 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:00,399 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:15:00,399 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:15:00,399 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:15:00,401 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 102 transitions. [2022-04-14 15:15:00,401 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 102 transitions. Word has length 34 [2022-04-14 15:15:00,401 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:15:00,401 INFO L478 AbstractCegarLoop]: Abstraction has 78 states and 102 transitions. [2022-04-14 15:15:00,401 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-14 15:15:00,401 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 102 transitions. [2022-04-14 15:15:00,402 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-14 15:15:00,402 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:15:00,402 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:15:00,418 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-14 15:15:00,618 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:15:00,618 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:15:00,619 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:15:00,619 INFO L85 PathProgramCache]: Analyzing trace with hash 1813008070, now seen corresponding path program 1 times [2022-04-14 15:15:00,619 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:15:00,619 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [69584113] [2022-04-14 15:15:00,619 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:00,619 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:15:00,628 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:15:00,628 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [474990398] [2022-04-14 15:15:00,629 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:00,629 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:15:00,629 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:15:00,629 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-14 15:15:00,630 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-14 15:15:00,663 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:00,664 INFO L263 TraceCheckSpWp]: Trace formula consists of 132 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-14 15:15:00,673 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:00,673 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:15:00,814 INFO L272 TraceCheckUtils]: 0: Hoare triple {2168#true} call ULTIMATE.init(); {2168#true} is VALID [2022-04-14 15:15:00,814 INFO L290 TraceCheckUtils]: 1: Hoare triple {2168#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2168#true} is VALID [2022-04-14 15:15:00,814 INFO L290 TraceCheckUtils]: 2: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-14 15:15:00,814 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2168#true} {2168#true} #93#return; {2168#true} is VALID [2022-04-14 15:15:00,814 INFO L272 TraceCheckUtils]: 4: Hoare triple {2168#true} call #t~ret8 := main(); {2168#true} is VALID [2022-04-14 15:15:00,814 INFO L290 TraceCheckUtils]: 5: Hoare triple {2168#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~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; {2168#true} is VALID [2022-04-14 15:15:00,814 INFO L272 TraceCheckUtils]: 6: Hoare triple {2168#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2168#true} is VALID [2022-04-14 15:15:00,815 INFO L290 TraceCheckUtils]: 7: Hoare triple {2168#true} ~cond := #in~cond; {2194#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 15:15:00,815 INFO L290 TraceCheckUtils]: 8: Hoare triple {2194#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2198#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 15:15:00,815 INFO L290 TraceCheckUtils]: 9: Hoare triple {2198#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2198#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 15:15:00,816 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2198#(not (= |assume_abort_if_not_#in~cond| 0))} {2168#true} #77#return; {2205#(<= 1 main_~y~0)} is VALID [2022-04-14 15:15:00,816 INFO L290 TraceCheckUtils]: 11: Hoare triple {2205#(<= 1 main_~y~0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2205#(<= 1 main_~y~0)} is VALID [2022-04-14 15:15:00,816 INFO L290 TraceCheckUtils]: 12: Hoare triple {2205#(<= 1 main_~y~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2205#(<= 1 main_~y~0)} is VALID [2022-04-14 15:15:00,817 INFO L290 TraceCheckUtils]: 13: Hoare triple {2205#(<= 1 main_~y~0)} assume !!(#t~post6 < 5);havoc #t~post6; {2205#(<= 1 main_~y~0)} is VALID [2022-04-14 15:15:00,817 INFO L272 TraceCheckUtils]: 14: Hoare triple {2205#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2168#true} is VALID [2022-04-14 15:15:00,817 INFO L290 TraceCheckUtils]: 15: Hoare triple {2168#true} ~cond := #in~cond; {2168#true} is VALID [2022-04-14 15:15:00,817 INFO L290 TraceCheckUtils]: 16: Hoare triple {2168#true} assume !(0 == ~cond); {2168#true} is VALID [2022-04-14 15:15:00,817 INFO L290 TraceCheckUtils]: 17: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-14 15:15:00,818 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2168#true} {2205#(<= 1 main_~y~0)} #79#return; {2205#(<= 1 main_~y~0)} is VALID [2022-04-14 15:15:00,818 INFO L272 TraceCheckUtils]: 19: Hoare triple {2205#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2168#true} is VALID [2022-04-14 15:15:00,818 INFO L290 TraceCheckUtils]: 20: Hoare triple {2168#true} ~cond := #in~cond; {2168#true} is VALID [2022-04-14 15:15:00,818 INFO L290 TraceCheckUtils]: 21: Hoare triple {2168#true} assume !(0 == ~cond); {2168#true} is VALID [2022-04-14 15:15:00,818 INFO L290 TraceCheckUtils]: 22: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-14 15:15:00,818 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2168#true} {2205#(<= 1 main_~y~0)} #81#return; {2205#(<= 1 main_~y~0)} is VALID [2022-04-14 15:15:00,819 INFO L290 TraceCheckUtils]: 24: Hoare triple {2205#(<= 1 main_~y~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2248#(<= 1 main_~r~0)} is VALID [2022-04-14 15:15:00,819 INFO L290 TraceCheckUtils]: 25: Hoare triple {2248#(<= 1 main_~r~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2248#(<= 1 main_~r~0)} is VALID [2022-04-14 15:15:00,819 INFO L290 TraceCheckUtils]: 26: Hoare triple {2248#(<= 1 main_~r~0)} assume !!(#t~post7 < 5);havoc #t~post7; {2248#(<= 1 main_~r~0)} is VALID [2022-04-14 15:15:00,820 INFO L272 TraceCheckUtils]: 27: Hoare triple {2248#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2168#true} is VALID [2022-04-14 15:15:00,820 INFO L290 TraceCheckUtils]: 28: Hoare triple {2168#true} ~cond := #in~cond; {2168#true} is VALID [2022-04-14 15:15:00,820 INFO L290 TraceCheckUtils]: 29: Hoare triple {2168#true} assume !(0 == ~cond); {2168#true} is VALID [2022-04-14 15:15:00,820 INFO L290 TraceCheckUtils]: 30: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-14 15:15:00,820 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2168#true} {2248#(<= 1 main_~r~0)} #83#return; {2248#(<= 1 main_~r~0)} is VALID [2022-04-14 15:15:00,820 INFO L272 TraceCheckUtils]: 32: Hoare triple {2248#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2168#true} is VALID [2022-04-14 15:15:00,820 INFO L290 TraceCheckUtils]: 33: Hoare triple {2168#true} ~cond := #in~cond; {2168#true} is VALID [2022-04-14 15:15:00,821 INFO L290 TraceCheckUtils]: 34: Hoare triple {2168#true} assume !(0 == ~cond); {2168#true} is VALID [2022-04-14 15:15:00,821 INFO L290 TraceCheckUtils]: 35: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-14 15:15:00,821 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2168#true} {2248#(<= 1 main_~r~0)} #85#return; {2248#(<= 1 main_~r~0)} is VALID [2022-04-14 15:15:00,822 INFO L272 TraceCheckUtils]: 37: Hoare triple {2248#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2288#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:15:00,822 INFO L290 TraceCheckUtils]: 38: Hoare triple {2288#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2292#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:15:00,822 INFO L290 TraceCheckUtils]: 39: Hoare triple {2292#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2169#false} is VALID [2022-04-14 15:15:00,822 INFO L290 TraceCheckUtils]: 40: Hoare triple {2169#false} assume !false; {2169#false} is VALID [2022-04-14 15:15:00,822 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-14 15:15:00,822 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 15:15:00,823 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:15:00,823 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [69584113] [2022-04-14 15:15:00,823 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:15:00,823 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [474990398] [2022-04-14 15:15:00,823 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [474990398] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 15:15:00,823 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 15:15:00,823 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-14 15:15:00,823 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1654684118] [2022-04-14 15:15:00,823 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 15:15:00,824 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 41 [2022-04-14 15:15:00,824 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:15:00,824 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), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 15:15:00,843 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-14 15:15:00,843 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-14 15:15:00,843 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:15:00,844 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-14 15:15:00,844 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-14 15:15:00,844 INFO L87 Difference]: Start difference. First operand 78 states and 102 transitions. Second operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 15:15:01,101 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:01,101 INFO L93 Difference]: Finished difference Result 84 states and 107 transitions. [2022-04-14 15:15:01,101 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-14 15:15:01,101 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 41 [2022-04-14 15:15:01,101 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:15:01,101 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 15:15:01,102 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-14 15:15:01,102 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 15:15:01,103 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-14 15:15:01,103 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-14 15:15:01,134 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:15:01,135 INFO L225 Difference]: With dead ends: 84 [2022-04-14 15:15:01,135 INFO L226 Difference]: Without dead ends: 82 [2022-04-14 15:15:01,135 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 43 GetRequests, 34 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-14 15:15:01,136 INFO L913 BasicCegarLoop]: 35 mSDtfsCounter, 20 mSDsluCounter, 132 mSDsCounter, 0 mSdLazyCounter, 105 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 167 SdHoareTripleChecker+Invalid, 112 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 105 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 15:15:01,136 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [20 Valid, 167 Invalid, 112 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 105 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 15:15:01,136 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 82 states. [2022-04-14 15:15:01,174 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 82 to 82. [2022-04-14 15:15:01,174 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:15:01,174 INFO L82 GeneralOperation]: Start isEquivalent. First operand 82 states. Second operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:15:01,174 INFO L74 IsIncluded]: Start isIncluded. First operand 82 states. Second operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:15:01,175 INFO L87 Difference]: Start difference. First operand 82 states. Second operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:15:01,177 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:01,177 INFO L93 Difference]: Finished difference Result 82 states and 105 transitions. [2022-04-14 15:15:01,177 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 105 transitions. [2022-04-14 15:15:01,177 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:01,177 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:01,178 INFO L74 IsIncluded]: Start isIncluded. First operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 82 states. [2022-04-14 15:15:01,178 INFO L87 Difference]: Start difference. First operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 82 states. [2022-04-14 15:15:01,180 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:01,180 INFO L93 Difference]: Finished difference Result 82 states and 105 transitions. [2022-04-14 15:15:01,180 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 105 transitions. [2022-04-14 15:15:01,180 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:01,180 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:01,180 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:15:01,180 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:15:01,181 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:15:01,183 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 82 states to 82 states and 105 transitions. [2022-04-14 15:15:01,183 INFO L78 Accepts]: Start accepts. Automaton has 82 states and 105 transitions. Word has length 41 [2022-04-14 15:15:01,183 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:15:01,183 INFO L478 AbstractCegarLoop]: Abstraction has 82 states and 105 transitions. [2022-04-14 15:15:01,183 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 15:15:01,183 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 105 transitions. [2022-04-14 15:15:01,183 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-14 15:15:01,184 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:15:01,184 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:15:01,202 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-14 15:15:01,398 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:15:01,398 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:15:01,398 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:15:01,399 INFO L85 PathProgramCache]: Analyzing trace with hash -683043127, now seen corresponding path program 1 times [2022-04-14 15:15:01,399 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:15:01,399 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [386881388] [2022-04-14 15:15:01,399 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:01,399 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:15:01,412 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:15:01,413 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1895687971] [2022-04-14 15:15:01,413 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:01,413 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:15:01,413 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:15:01,413 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-14 15:15:01,414 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-14 15:15:01,447 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:01,448 INFO L263 TraceCheckSpWp]: Trace formula consists of 142 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-14 15:15:01,457 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:01,458 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:15:01,693 INFO L272 TraceCheckUtils]: 0: Hoare triple {2712#true} call ULTIMATE.init(); {2712#true} is VALID [2022-04-14 15:15:01,693 INFO L290 TraceCheckUtils]: 1: Hoare triple {2712#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2712#true} is VALID [2022-04-14 15:15:01,693 INFO L290 TraceCheckUtils]: 2: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:15:01,693 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2712#true} {2712#true} #93#return; {2712#true} is VALID [2022-04-14 15:15:01,693 INFO L272 TraceCheckUtils]: 4: Hoare triple {2712#true} call #t~ret8 := main(); {2712#true} is VALID [2022-04-14 15:15:01,693 INFO L290 TraceCheckUtils]: 5: Hoare triple {2712#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~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; {2712#true} is VALID [2022-04-14 15:15:01,693 INFO L272 TraceCheckUtils]: 6: Hoare triple {2712#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:15:01,693 INFO L290 TraceCheckUtils]: 7: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-14 15:15:01,693 INFO L290 TraceCheckUtils]: 8: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-14 15:15:01,694 INFO L290 TraceCheckUtils]: 9: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:15:01,694 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2712#true} {2712#true} #77#return; {2712#true} is VALID [2022-04-14 15:15:01,694 INFO L290 TraceCheckUtils]: 11: Hoare triple {2712#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2712#true} is VALID [2022-04-14 15:15:01,694 INFO L290 TraceCheckUtils]: 12: Hoare triple {2712#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2712#true} is VALID [2022-04-14 15:15:01,694 INFO L290 TraceCheckUtils]: 13: Hoare triple {2712#true} assume !!(#t~post6 < 5);havoc #t~post6; {2712#true} is VALID [2022-04-14 15:15:01,694 INFO L272 TraceCheckUtils]: 14: Hoare triple {2712#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:15:01,694 INFO L290 TraceCheckUtils]: 15: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-14 15:15:01,694 INFO L290 TraceCheckUtils]: 16: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-14 15:15:01,694 INFO L290 TraceCheckUtils]: 17: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:15:01,694 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2712#true} {2712#true} #79#return; {2712#true} is VALID [2022-04-14 15:15:01,694 INFO L272 TraceCheckUtils]: 19: Hoare triple {2712#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:15:01,695 INFO L290 TraceCheckUtils]: 20: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-14 15:15:01,695 INFO L290 TraceCheckUtils]: 21: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-14 15:15:01,695 INFO L290 TraceCheckUtils]: 22: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:15:01,695 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2712#true} {2712#true} #81#return; {2712#true} is VALID [2022-04-14 15:15:01,695 INFO L290 TraceCheckUtils]: 24: Hoare triple {2712#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2712#true} is VALID [2022-04-14 15:15:01,695 INFO L290 TraceCheckUtils]: 25: Hoare triple {2712#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2712#true} is VALID [2022-04-14 15:15:01,695 INFO L290 TraceCheckUtils]: 26: Hoare triple {2712#true} assume !!(#t~post7 < 5);havoc #t~post7; {2712#true} is VALID [2022-04-14 15:15:01,695 INFO L272 TraceCheckUtils]: 27: Hoare triple {2712#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:15:01,697 INFO L290 TraceCheckUtils]: 28: Hoare triple {2712#true} ~cond := #in~cond; {2801#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:15:01,698 INFO L290 TraceCheckUtils]: 29: Hoare triple {2801#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 15:15:01,698 INFO L290 TraceCheckUtils]: 30: Hoare triple {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 15:15:01,699 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} {2712#true} #83#return; {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-14 15:15:01,699 INFO L272 TraceCheckUtils]: 32: Hoare triple {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:15:01,699 INFO L290 TraceCheckUtils]: 33: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-14 15:15:01,699 INFO L290 TraceCheckUtils]: 34: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-14 15:15:01,699 INFO L290 TraceCheckUtils]: 35: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:15:01,704 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2712#true} {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} #85#return; {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-14 15:15:01,704 INFO L272 TraceCheckUtils]: 37: Hoare triple {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:15:01,704 INFO L290 TraceCheckUtils]: 38: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-14 15:15:01,704 INFO L290 TraceCheckUtils]: 39: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-14 15:15:01,704 INFO L290 TraceCheckUtils]: 40: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:15:01,705 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2712#true} {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} #87#return; {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-14 15:15:01,705 INFO L290 TraceCheckUtils]: 42: Hoare triple {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} assume !!(~r~0 >= 2 * ~b~0); {2846#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-14 15:15:01,706 INFO L272 TraceCheckUtils]: 43: Hoare triple {2846#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {2850#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:15:01,706 INFO L290 TraceCheckUtils]: 44: Hoare triple {2850#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2854#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:15:01,706 INFO L290 TraceCheckUtils]: 45: Hoare triple {2854#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2713#false} is VALID [2022-04-14 15:15:01,707 INFO L290 TraceCheckUtils]: 46: Hoare triple {2713#false} assume !false; {2713#false} is VALID [2022-04-14 15:15:01,707 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-14 15:15:01,707 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 15:15:06,167 INFO L290 TraceCheckUtils]: 46: Hoare triple {2713#false} assume !false; {2713#false} is VALID [2022-04-14 15:15:06,168 INFO L290 TraceCheckUtils]: 45: Hoare triple {2854#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2713#false} is VALID [2022-04-14 15:15:06,168 INFO L290 TraceCheckUtils]: 44: Hoare triple {2850#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2854#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:15:06,169 INFO L272 TraceCheckUtils]: 43: Hoare triple {2846#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {2850#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:15:06,169 INFO L290 TraceCheckUtils]: 42: Hoare triple {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} assume !!(~r~0 >= 2 * ~b~0); {2846#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-14 15:15:06,170 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2712#true} {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} #87#return; {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-14 15:15:06,170 INFO L290 TraceCheckUtils]: 40: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:15:06,170 INFO L290 TraceCheckUtils]: 39: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-14 15:15:06,170 INFO L290 TraceCheckUtils]: 38: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-14 15:15:06,170 INFO L272 TraceCheckUtils]: 37: Hoare triple {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:15:06,175 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2712#true} {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} #85#return; {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-14 15:15:06,175 INFO L290 TraceCheckUtils]: 35: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:15:06,175 INFO L290 TraceCheckUtils]: 34: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-14 15:15:06,175 INFO L290 TraceCheckUtils]: 33: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-14 15:15:06,175 INFO L272 TraceCheckUtils]: 32: Hoare triple {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:15:06,176 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} {2712#true} #83#return; {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-14 15:15:06,176 INFO L290 TraceCheckUtils]: 30: Hoare triple {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 15:15:06,177 INFO L290 TraceCheckUtils]: 29: Hoare triple {2916#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 15:15:06,177 INFO L290 TraceCheckUtils]: 28: Hoare triple {2712#true} ~cond := #in~cond; {2916#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-14 15:15:06,177 INFO L272 TraceCheckUtils]: 27: Hoare triple {2712#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:15:06,177 INFO L290 TraceCheckUtils]: 26: Hoare triple {2712#true} assume !!(#t~post7 < 5);havoc #t~post7; {2712#true} is VALID [2022-04-14 15:15:06,177 INFO L290 TraceCheckUtils]: 25: Hoare triple {2712#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2712#true} is VALID [2022-04-14 15:15:06,177 INFO L290 TraceCheckUtils]: 24: Hoare triple {2712#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2712#true} is VALID [2022-04-14 15:15:06,178 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2712#true} {2712#true} #81#return; {2712#true} is VALID [2022-04-14 15:15:06,178 INFO L290 TraceCheckUtils]: 22: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:15:06,178 INFO L290 TraceCheckUtils]: 21: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-14 15:15:06,178 INFO L290 TraceCheckUtils]: 20: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-14 15:15:06,178 INFO L272 TraceCheckUtils]: 19: Hoare triple {2712#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:15:06,178 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2712#true} {2712#true} #79#return; {2712#true} is VALID [2022-04-14 15:15:06,178 INFO L290 TraceCheckUtils]: 17: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:15:06,178 INFO L290 TraceCheckUtils]: 16: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-14 15:15:06,178 INFO L290 TraceCheckUtils]: 15: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-14 15:15:06,178 INFO L272 TraceCheckUtils]: 14: Hoare triple {2712#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:15:06,178 INFO L290 TraceCheckUtils]: 13: Hoare triple {2712#true} assume !!(#t~post6 < 5);havoc #t~post6; {2712#true} is VALID [2022-04-14 15:15:06,178 INFO L290 TraceCheckUtils]: 12: Hoare triple {2712#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2712#true} is VALID [2022-04-14 15:15:06,179 INFO L290 TraceCheckUtils]: 11: Hoare triple {2712#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2712#true} is VALID [2022-04-14 15:15:06,179 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2712#true} {2712#true} #77#return; {2712#true} is VALID [2022-04-14 15:15:06,179 INFO L290 TraceCheckUtils]: 9: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:15:06,179 INFO L290 TraceCheckUtils]: 8: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-14 15:15:06,179 INFO L290 TraceCheckUtils]: 7: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-14 15:15:06,179 INFO L272 TraceCheckUtils]: 6: Hoare triple {2712#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:15:06,179 INFO L290 TraceCheckUtils]: 5: Hoare triple {2712#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~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; {2712#true} is VALID [2022-04-14 15:15:06,179 INFO L272 TraceCheckUtils]: 4: Hoare triple {2712#true} call #t~ret8 := main(); {2712#true} is VALID [2022-04-14 15:15:06,179 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2712#true} {2712#true} #93#return; {2712#true} is VALID [2022-04-14 15:15:06,179 INFO L290 TraceCheckUtils]: 2: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:15:06,179 INFO L290 TraceCheckUtils]: 1: Hoare triple {2712#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2712#true} is VALID [2022-04-14 15:15:06,179 INFO L272 TraceCheckUtils]: 0: Hoare triple {2712#true} call ULTIMATE.init(); {2712#true} is VALID [2022-04-14 15:15:06,180 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-14 15:15:06,180 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:15:06,180 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [386881388] [2022-04-14 15:15:06,180 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:15:06,180 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1895687971] [2022-04-14 15:15:06,180 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1895687971] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 15:15:06,180 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 15:15:06,180 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-14 15:15:06,180 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [707047367] [2022-04-14 15:15:06,180 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 15:15:06,181 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) Word has length 47 [2022-04-14 15:15:06,181 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:15:06,181 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) [2022-04-14 15:15:06,210 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:15:06,210 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-14 15:15:06,210 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:15:06,211 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-14 15:15:06,211 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-04-14 15:15:06,211 INFO L87 Difference]: Start difference. First operand 82 states and 105 transitions. Second operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) [2022-04-14 15:15:06,522 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:06,522 INFO L93 Difference]: Finished difference Result 88 states and 110 transitions. [2022-04-14 15:15:06,522 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-14 15:15:06,523 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) Word has length 47 [2022-04-14 15:15:06,523 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:15:06,523 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) [2022-04-14 15:15:06,524 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-14 15:15:06,524 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) [2022-04-14 15:15:06,525 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-14 15:15:06,525 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-14 15:15:06,557 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:15:06,559 INFO L225 Difference]: With dead ends: 88 [2022-04-14 15:15:06,559 INFO L226 Difference]: Without dead ends: 86 [2022-04-14 15:15:06,559 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 96 GetRequests, 84 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=40, Invalid=116, Unknown=0, NotChecked=0, Total=156 [2022-04-14 15:15:06,559 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 32 mSDsluCounter, 106 mSDsCounter, 0 mSdLazyCounter, 124 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 34 SdHoareTripleChecker+Valid, 133 SdHoareTripleChecker+Invalid, 140 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 124 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 15:15:06,560 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [34 Valid, 133 Invalid, 140 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 124 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 15:15:06,560 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 86 states. [2022-04-14 15:15:06,594 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 86 to 86. [2022-04-14 15:15:06,594 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:15:06,595 INFO L82 GeneralOperation]: Start isEquivalent. First operand 86 states. Second operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:15:06,595 INFO L74 IsIncluded]: Start isIncluded. First operand 86 states. Second operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:15:06,595 INFO L87 Difference]: Start difference. First operand 86 states. Second operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:15:06,599 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:06,599 INFO L93 Difference]: Finished difference Result 86 states and 108 transitions. [2022-04-14 15:15:06,599 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-14 15:15:06,599 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:06,599 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:06,599 INFO L74 IsIncluded]: Start isIncluded. First operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 86 states. [2022-04-14 15:15:06,600 INFO L87 Difference]: Start difference. First operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 86 states. [2022-04-14 15:15:06,602 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:06,602 INFO L93 Difference]: Finished difference Result 86 states and 108 transitions. [2022-04-14 15:15:06,602 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-14 15:15:06,602 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:06,602 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:06,602 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:15:06,602 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:15:06,602 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:15:06,605 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 86 states to 86 states and 108 transitions. [2022-04-14 15:15:06,605 INFO L78 Accepts]: Start accepts. Automaton has 86 states and 108 transitions. Word has length 47 [2022-04-14 15:15:06,605 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:15:06,605 INFO L478 AbstractCegarLoop]: Abstraction has 86 states and 108 transitions. [2022-04-14 15:15:06,606 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) [2022-04-14 15:15:06,606 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-14 15:15:06,606 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-14 15:15:06,606 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:15:06,606 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:15:06,632 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-14 15:15:06,830 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:15:06,830 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:15:06,830 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:15:06,830 INFO L85 PathProgramCache]: Analyzing trace with hash -589126939, now seen corresponding path program 1 times [2022-04-14 15:15:06,830 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:15:06,830 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [66358777] [2022-04-14 15:15:06,831 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:06,831 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:15:06,840 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:15:06,841 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [826439342] [2022-04-14 15:15:06,841 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:06,841 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:15:06,841 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:15:06,842 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-14 15:15:06,842 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-14 15:15:06,875 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:06,876 INFO L263 TraceCheckSpWp]: Trace formula consists of 151 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-14 15:15:06,884 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:06,888 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:15:07,110 INFO L272 TraceCheckUtils]: 0: Hoare triple {3435#true} call ULTIMATE.init(); {3435#true} is VALID [2022-04-14 15:15:07,111 INFO L290 TraceCheckUtils]: 1: Hoare triple {3435#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3443#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:07,111 INFO L290 TraceCheckUtils]: 2: Hoare triple {3443#(<= ~counter~0 0)} assume true; {3443#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:07,112 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3443#(<= ~counter~0 0)} {3435#true} #93#return; {3443#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:07,112 INFO L272 TraceCheckUtils]: 4: Hoare triple {3443#(<= ~counter~0 0)} call #t~ret8 := main(); {3443#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:07,113 INFO L290 TraceCheckUtils]: 5: Hoare triple {3443#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~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; {3443#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:07,113 INFO L272 TraceCheckUtils]: 6: Hoare triple {3443#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3443#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:07,113 INFO L290 TraceCheckUtils]: 7: Hoare triple {3443#(<= ~counter~0 0)} ~cond := #in~cond; {3443#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:07,114 INFO L290 TraceCheckUtils]: 8: Hoare triple {3443#(<= ~counter~0 0)} assume !(0 == ~cond); {3443#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:07,114 INFO L290 TraceCheckUtils]: 9: Hoare triple {3443#(<= ~counter~0 0)} assume true; {3443#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:07,115 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3443#(<= ~counter~0 0)} {3443#(<= ~counter~0 0)} #77#return; {3443#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:07,115 INFO L290 TraceCheckUtils]: 11: Hoare triple {3443#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {3443#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:07,115 INFO L290 TraceCheckUtils]: 12: Hoare triple {3443#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:07,116 INFO L290 TraceCheckUtils]: 13: Hoare triple {3477#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:07,117 INFO L272 TraceCheckUtils]: 14: Hoare triple {3477#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:07,117 INFO L290 TraceCheckUtils]: 15: Hoare triple {3477#(<= ~counter~0 1)} ~cond := #in~cond; {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:07,118 INFO L290 TraceCheckUtils]: 16: Hoare triple {3477#(<= ~counter~0 1)} assume !(0 == ~cond); {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:07,118 INFO L290 TraceCheckUtils]: 17: Hoare triple {3477#(<= ~counter~0 1)} assume true; {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:07,119 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3477#(<= ~counter~0 1)} {3477#(<= ~counter~0 1)} #79#return; {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:07,119 INFO L272 TraceCheckUtils]: 19: Hoare triple {3477#(<= ~counter~0 1)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:07,119 INFO L290 TraceCheckUtils]: 20: Hoare triple {3477#(<= ~counter~0 1)} ~cond := #in~cond; {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:07,120 INFO L290 TraceCheckUtils]: 21: Hoare triple {3477#(<= ~counter~0 1)} assume !(0 == ~cond); {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:07,120 INFO L290 TraceCheckUtils]: 22: Hoare triple {3477#(<= ~counter~0 1)} assume true; {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:07,121 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3477#(<= ~counter~0 1)} {3477#(<= ~counter~0 1)} #81#return; {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:07,121 INFO L290 TraceCheckUtils]: 24: Hoare triple {3477#(<= ~counter~0 1)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:07,122 INFO L290 TraceCheckUtils]: 25: Hoare triple {3477#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,123 INFO L290 TraceCheckUtils]: 26: Hoare triple {3517#(<= ~counter~0 2)} assume !!(#t~post7 < 5);havoc #t~post7; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,123 INFO L272 TraceCheckUtils]: 27: Hoare triple {3517#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,124 INFO L290 TraceCheckUtils]: 28: Hoare triple {3517#(<= ~counter~0 2)} ~cond := #in~cond; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,124 INFO L290 TraceCheckUtils]: 29: Hoare triple {3517#(<= ~counter~0 2)} assume !(0 == ~cond); {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,124 INFO L290 TraceCheckUtils]: 30: Hoare triple {3517#(<= ~counter~0 2)} assume true; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,125 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3517#(<= ~counter~0 2)} {3517#(<= ~counter~0 2)} #83#return; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,125 INFO L272 TraceCheckUtils]: 32: Hoare triple {3517#(<= ~counter~0 2)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,126 INFO L290 TraceCheckUtils]: 33: Hoare triple {3517#(<= ~counter~0 2)} ~cond := #in~cond; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,126 INFO L290 TraceCheckUtils]: 34: Hoare triple {3517#(<= ~counter~0 2)} assume !(0 == ~cond); {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,126 INFO L290 TraceCheckUtils]: 35: Hoare triple {3517#(<= ~counter~0 2)} assume true; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,127 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3517#(<= ~counter~0 2)} {3517#(<= ~counter~0 2)} #85#return; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,127 INFO L272 TraceCheckUtils]: 37: Hoare triple {3517#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,128 INFO L290 TraceCheckUtils]: 38: Hoare triple {3517#(<= ~counter~0 2)} ~cond := #in~cond; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,128 INFO L290 TraceCheckUtils]: 39: Hoare triple {3517#(<= ~counter~0 2)} assume !(0 == ~cond); {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,128 INFO L290 TraceCheckUtils]: 40: Hoare triple {3517#(<= ~counter~0 2)} assume true; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,129 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3517#(<= ~counter~0 2)} {3517#(<= ~counter~0 2)} #87#return; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,129 INFO L290 TraceCheckUtils]: 42: Hoare triple {3517#(<= ~counter~0 2)} assume !(~r~0 >= 2 * ~b~0); {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,129 INFO L290 TraceCheckUtils]: 43: Hoare triple {3517#(<= ~counter~0 2)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,130 INFO L290 TraceCheckUtils]: 44: Hoare triple {3517#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3575#(<= |main_#t~post6| 2)} is VALID [2022-04-14 15:15:07,131 INFO L290 TraceCheckUtils]: 45: Hoare triple {3575#(<= |main_#t~post6| 2)} assume !(#t~post6 < 5);havoc #t~post6; {3436#false} is VALID [2022-04-14 15:15:07,131 INFO L272 TraceCheckUtils]: 46: Hoare triple {3436#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3436#false} is VALID [2022-04-14 15:15:07,131 INFO L290 TraceCheckUtils]: 47: Hoare triple {3436#false} ~cond := #in~cond; {3436#false} is VALID [2022-04-14 15:15:07,131 INFO L290 TraceCheckUtils]: 48: Hoare triple {3436#false} assume 0 == ~cond; {3436#false} is VALID [2022-04-14 15:15:07,131 INFO L290 TraceCheckUtils]: 49: Hoare triple {3436#false} assume !false; {3436#false} is VALID [2022-04-14 15:15:07,131 INFO L134 CoverageAnalysis]: Checked inductivity of 52 backedges. 10 proven. 26 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-14 15:15:07,131 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 15:15:07,337 INFO L290 TraceCheckUtils]: 49: Hoare triple {3436#false} assume !false; {3436#false} is VALID [2022-04-14 15:15:07,337 INFO L290 TraceCheckUtils]: 48: Hoare triple {3436#false} assume 0 == ~cond; {3436#false} is VALID [2022-04-14 15:15:07,337 INFO L290 TraceCheckUtils]: 47: Hoare triple {3436#false} ~cond := #in~cond; {3436#false} is VALID [2022-04-14 15:15:07,337 INFO L272 TraceCheckUtils]: 46: Hoare triple {3436#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3436#false} is VALID [2022-04-14 15:15:07,337 INFO L290 TraceCheckUtils]: 45: Hoare triple {3603#(< |main_#t~post6| 5)} assume !(#t~post6 < 5);havoc #t~post6; {3436#false} is VALID [2022-04-14 15:15:07,338 INFO L290 TraceCheckUtils]: 44: Hoare triple {3607#(< ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3603#(< |main_#t~post6| 5)} is VALID [2022-04-14 15:15:07,338 INFO L290 TraceCheckUtils]: 43: Hoare triple {3607#(< ~counter~0 5)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {3607#(< ~counter~0 5)} is VALID [2022-04-14 15:15:07,338 INFO L290 TraceCheckUtils]: 42: Hoare triple {3607#(< ~counter~0 5)} assume !(~r~0 >= 2 * ~b~0); {3607#(< ~counter~0 5)} is VALID [2022-04-14 15:15:07,339 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3435#true} {3607#(< ~counter~0 5)} #87#return; {3607#(< ~counter~0 5)} is VALID [2022-04-14 15:15:07,339 INFO L290 TraceCheckUtils]: 40: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-14 15:15:07,339 INFO L290 TraceCheckUtils]: 39: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-14 15:15:07,339 INFO L290 TraceCheckUtils]: 38: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-14 15:15:07,339 INFO L272 TraceCheckUtils]: 37: Hoare triple {3607#(< ~counter~0 5)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {3435#true} is VALID [2022-04-14 15:15:07,343 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3435#true} {3607#(< ~counter~0 5)} #85#return; {3607#(< ~counter~0 5)} is VALID [2022-04-14 15:15:07,343 INFO L290 TraceCheckUtils]: 35: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-14 15:15:07,343 INFO L290 TraceCheckUtils]: 34: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-14 15:15:07,343 INFO L290 TraceCheckUtils]: 33: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-14 15:15:07,343 INFO L272 TraceCheckUtils]: 32: Hoare triple {3607#(< ~counter~0 5)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3435#true} is VALID [2022-04-14 15:15:07,344 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3435#true} {3607#(< ~counter~0 5)} #83#return; {3607#(< ~counter~0 5)} is VALID [2022-04-14 15:15:07,344 INFO L290 TraceCheckUtils]: 30: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-14 15:15:07,344 INFO L290 TraceCheckUtils]: 29: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-14 15:15:07,344 INFO L290 TraceCheckUtils]: 28: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-14 15:15:07,344 INFO L272 TraceCheckUtils]: 27: Hoare triple {3607#(< ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3435#true} is VALID [2022-04-14 15:15:07,344 INFO L290 TraceCheckUtils]: 26: Hoare triple {3607#(< ~counter~0 5)} assume !!(#t~post7 < 5);havoc #t~post7; {3607#(< ~counter~0 5)} is VALID [2022-04-14 15:15:07,345 INFO L290 TraceCheckUtils]: 25: Hoare triple {3665#(< ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3607#(< ~counter~0 5)} is VALID [2022-04-14 15:15:07,345 INFO L290 TraceCheckUtils]: 24: Hoare triple {3665#(< ~counter~0 4)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {3665#(< ~counter~0 4)} is VALID [2022-04-14 15:15:07,346 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3435#true} {3665#(< ~counter~0 4)} #81#return; {3665#(< ~counter~0 4)} is VALID [2022-04-14 15:15:07,346 INFO L290 TraceCheckUtils]: 22: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-14 15:15:07,346 INFO L290 TraceCheckUtils]: 21: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-14 15:15:07,346 INFO L290 TraceCheckUtils]: 20: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-14 15:15:07,346 INFO L272 TraceCheckUtils]: 19: Hoare triple {3665#(< ~counter~0 4)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3435#true} is VALID [2022-04-14 15:15:07,347 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3435#true} {3665#(< ~counter~0 4)} #79#return; {3665#(< ~counter~0 4)} is VALID [2022-04-14 15:15:07,347 INFO L290 TraceCheckUtils]: 17: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-14 15:15:07,347 INFO L290 TraceCheckUtils]: 16: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-14 15:15:07,347 INFO L290 TraceCheckUtils]: 15: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-14 15:15:07,347 INFO L272 TraceCheckUtils]: 14: Hoare triple {3665#(< ~counter~0 4)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3435#true} is VALID [2022-04-14 15:15:07,347 INFO L290 TraceCheckUtils]: 13: Hoare triple {3665#(< ~counter~0 4)} assume !!(#t~post6 < 5);havoc #t~post6; {3665#(< ~counter~0 4)} is VALID [2022-04-14 15:15:07,348 INFO L290 TraceCheckUtils]: 12: Hoare triple {3517#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3665#(< ~counter~0 4)} is VALID [2022-04-14 15:15:07,348 INFO L290 TraceCheckUtils]: 11: Hoare triple {3517#(<= ~counter~0 2)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,348 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3435#true} {3517#(<= ~counter~0 2)} #77#return; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,348 INFO L290 TraceCheckUtils]: 9: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-14 15:15:07,348 INFO L290 TraceCheckUtils]: 8: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-14 15:15:07,349 INFO L290 TraceCheckUtils]: 7: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-14 15:15:07,349 INFO L272 TraceCheckUtils]: 6: Hoare triple {3517#(<= ~counter~0 2)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3435#true} is VALID [2022-04-14 15:15:07,355 INFO L290 TraceCheckUtils]: 5: Hoare triple {3517#(<= ~counter~0 2)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~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; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,358 INFO L272 TraceCheckUtils]: 4: Hoare triple {3517#(<= ~counter~0 2)} call #t~ret8 := main(); {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,358 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3517#(<= ~counter~0 2)} {3435#true} #93#return; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,360 INFO L290 TraceCheckUtils]: 2: Hoare triple {3517#(<= ~counter~0 2)} assume true; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,360 INFO L290 TraceCheckUtils]: 1: Hoare triple {3435#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:07,360 INFO L272 TraceCheckUtils]: 0: Hoare triple {3435#true} call ULTIMATE.init(); {3435#true} is VALID [2022-04-14 15:15:07,360 INFO L134 CoverageAnalysis]: Checked inductivity of 52 backedges. 10 proven. 2 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-14 15:15:07,360 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:15:07,360 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [66358777] [2022-04-14 15:15:07,361 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:15:07,361 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [826439342] [2022-04-14 15:15:07,361 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [826439342] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 15:15:07,361 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 15:15:07,361 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 9 [2022-04-14 15:15:07,361 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1365377072] [2022-04-14 15:15:07,361 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 15:15:07,362 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 9 states have internal predecessors, (44), 7 states have call successors, (16), 5 states have call predecessors, (16), 4 states have return successors, (14), 5 states have call predecessors, (14), 6 states have call successors, (14) Word has length 50 [2022-04-14 15:15:07,362 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:15:07,362 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 9 states have internal predecessors, (44), 7 states have call successors, (16), 5 states have call predecessors, (16), 4 states have return successors, (14), 5 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-14 15:15:07,408 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:15:07,408 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-14 15:15:07,408 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:15:07,408 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-14 15:15:07,409 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-04-14 15:15:07,409 INFO L87 Difference]: Start difference. First operand 86 states and 108 transitions. Second operand has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 9 states have internal predecessors, (44), 7 states have call successors, (16), 5 states have call predecessors, (16), 4 states have return successors, (14), 5 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-14 15:15:07,805 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:07,805 INFO L93 Difference]: Finished difference Result 202 states and 238 transitions. [2022-04-14 15:15:07,805 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-14 15:15:07,805 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 9 states have internal predecessors, (44), 7 states have call successors, (16), 5 states have call predecessors, (16), 4 states have return successors, (14), 5 states have call predecessors, (14), 6 states have call successors, (14) Word has length 50 [2022-04-14 15:15:07,805 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:15:07,805 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 9 states have internal predecessors, (44), 7 states have call successors, (16), 5 states have call predecessors, (16), 4 states have return successors, (14), 5 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-14 15:15:07,807 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 139 transitions. [2022-04-14 15:15:07,807 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 9 states have internal predecessors, (44), 7 states have call successors, (16), 5 states have call predecessors, (16), 4 states have return successors, (14), 5 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-14 15:15:07,809 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 139 transitions. [2022-04-14 15:15:07,809 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 139 transitions. [2022-04-14 15:15:07,896 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 139 edges. 139 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:15:07,899 INFO L225 Difference]: With dead ends: 202 [2022-04-14 15:15:07,899 INFO L226 Difference]: Without dead ends: 195 [2022-04-14 15:15:07,899 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 102 GetRequests, 91 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=47, Invalid=85, Unknown=0, NotChecked=0, Total=132 [2022-04-14 15:15:07,900 INFO L913 BasicCegarLoop]: 57 mSDtfsCounter, 67 mSDsluCounter, 143 mSDsCounter, 0 mSdLazyCounter, 73 mSolverCounterSat, 26 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 67 SdHoareTripleChecker+Valid, 200 SdHoareTripleChecker+Invalid, 99 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 26 IncrementalHoareTripleChecker+Valid, 73 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 15:15:07,900 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [67 Valid, 200 Invalid, 99 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [26 Valid, 73 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 15:15:07,900 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 195 states. [2022-04-14 15:15:07,973 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 195 to 186. [2022-04-14 15:15:07,973 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:15:07,973 INFO L82 GeneralOperation]: Start isEquivalent. First operand 195 states. Second operand has 186 states, 120 states have (on average 1.175) internal successors, (141), 126 states have internal predecessors, (141), 42 states have call successors, (42), 24 states have call predecessors, (42), 23 states have return successors, (38), 35 states have call predecessors, (38), 38 states have call successors, (38) [2022-04-14 15:15:07,974 INFO L74 IsIncluded]: Start isIncluded. First operand 195 states. Second operand has 186 states, 120 states have (on average 1.175) internal successors, (141), 126 states have internal predecessors, (141), 42 states have call successors, (42), 24 states have call predecessors, (42), 23 states have return successors, (38), 35 states have call predecessors, (38), 38 states have call successors, (38) [2022-04-14 15:15:07,974 INFO L87 Difference]: Start difference. First operand 195 states. Second operand has 186 states, 120 states have (on average 1.175) internal successors, (141), 126 states have internal predecessors, (141), 42 states have call successors, (42), 24 states have call predecessors, (42), 23 states have return successors, (38), 35 states have call predecessors, (38), 38 states have call successors, (38) [2022-04-14 15:15:07,978 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:07,978 INFO L93 Difference]: Finished difference Result 195 states and 228 transitions. [2022-04-14 15:15:07,978 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 228 transitions. [2022-04-14 15:15:07,979 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:07,979 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:07,979 INFO L74 IsIncluded]: Start isIncluded. First operand has 186 states, 120 states have (on average 1.175) internal successors, (141), 126 states have internal predecessors, (141), 42 states have call successors, (42), 24 states have call predecessors, (42), 23 states have return successors, (38), 35 states have call predecessors, (38), 38 states have call successors, (38) Second operand 195 states. [2022-04-14 15:15:07,979 INFO L87 Difference]: Start difference. First operand has 186 states, 120 states have (on average 1.175) internal successors, (141), 126 states have internal predecessors, (141), 42 states have call successors, (42), 24 states have call predecessors, (42), 23 states have return successors, (38), 35 states have call predecessors, (38), 38 states have call successors, (38) Second operand 195 states. [2022-04-14 15:15:07,983 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:07,984 INFO L93 Difference]: Finished difference Result 195 states and 228 transitions. [2022-04-14 15:15:07,984 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 228 transitions. [2022-04-14 15:15:07,984 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:07,984 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:07,984 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:15:07,984 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:15:07,984 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 186 states, 120 states have (on average 1.175) internal successors, (141), 126 states have internal predecessors, (141), 42 states have call successors, (42), 24 states have call predecessors, (42), 23 states have return successors, (38), 35 states have call predecessors, (38), 38 states have call successors, (38) [2022-04-14 15:15:07,987 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 186 states to 186 states and 221 transitions. [2022-04-14 15:15:07,988 INFO L78 Accepts]: Start accepts. Automaton has 186 states and 221 transitions. Word has length 50 [2022-04-14 15:15:07,988 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:15:07,988 INFO L478 AbstractCegarLoop]: Abstraction has 186 states and 221 transitions. [2022-04-14 15:15:07,988 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 9 states have internal predecessors, (44), 7 states have call successors, (16), 5 states have call predecessors, (16), 4 states have return successors, (14), 5 states have call predecessors, (14), 6 states have call successors, (14) [2022-04-14 15:15:07,988 INFO L276 IsEmpty]: Start isEmpty. Operand 186 states and 221 transitions. [2022-04-14 15:15:07,988 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-14 15:15:07,988 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:15:07,988 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:15:08,006 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-14 15:15:08,204 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-14 15:15:08,205 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:15:08,205 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:15:08,205 INFO L85 PathProgramCache]: Analyzing trace with hash -484699953, now seen corresponding path program 1 times [2022-04-14 15:15:08,205 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:15:08,205 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [566322508] [2022-04-14 15:15:08,205 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:08,205 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:15:08,215 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:15:08,215 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [263944491] [2022-04-14 15:15:08,215 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:08,215 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:15:08,215 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:15:08,216 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-14 15:15:08,217 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-14 15:15:08,251 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:08,252 INFO L263 TraceCheckSpWp]: Trace formula consists of 160 conjuncts, 22 conjunts are in the unsatisfiable core [2022-04-14 15:15:08,260 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:08,261 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:15:08,695 INFO L272 TraceCheckUtils]: 0: Hoare triple {4692#true} call ULTIMATE.init(); {4692#true} is VALID [2022-04-14 15:15:08,695 INFO L290 TraceCheckUtils]: 1: Hoare triple {4692#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4692#true} is VALID [2022-04-14 15:15:08,695 INFO L290 TraceCheckUtils]: 2: Hoare triple {4692#true} assume true; {4692#true} is VALID [2022-04-14 15:15:08,696 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4692#true} {4692#true} #93#return; {4692#true} is VALID [2022-04-14 15:15:08,696 INFO L272 TraceCheckUtils]: 4: Hoare triple {4692#true} call #t~ret8 := main(); {4692#true} is VALID [2022-04-14 15:15:08,696 INFO L290 TraceCheckUtils]: 5: Hoare triple {4692#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~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; {4692#true} is VALID [2022-04-14 15:15:08,696 INFO L272 TraceCheckUtils]: 6: Hoare triple {4692#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4692#true} is VALID [2022-04-14 15:15:08,696 INFO L290 TraceCheckUtils]: 7: Hoare triple {4692#true} ~cond := #in~cond; {4692#true} is VALID [2022-04-14 15:15:08,696 INFO L290 TraceCheckUtils]: 8: Hoare triple {4692#true} assume !(0 == ~cond); {4692#true} is VALID [2022-04-14 15:15:08,696 INFO L290 TraceCheckUtils]: 9: Hoare triple {4692#true} assume true; {4692#true} is VALID [2022-04-14 15:15:08,696 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4692#true} {4692#true} #77#return; {4692#true} is VALID [2022-04-14 15:15:08,702 INFO L290 TraceCheckUtils]: 11: Hoare triple {4692#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {4730#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:08,703 INFO L290 TraceCheckUtils]: 12: Hoare triple {4730#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4730#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:08,703 INFO L290 TraceCheckUtils]: 13: Hoare triple {4730#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 5);havoc #t~post6; {4730#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:08,703 INFO L272 TraceCheckUtils]: 14: Hoare triple {4730#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4692#true} is VALID [2022-04-14 15:15:08,703 INFO L290 TraceCheckUtils]: 15: Hoare triple {4692#true} ~cond := #in~cond; {4692#true} is VALID [2022-04-14 15:15:08,703 INFO L290 TraceCheckUtils]: 16: Hoare triple {4692#true} assume !(0 == ~cond); {4692#true} is VALID [2022-04-14 15:15:08,703 INFO L290 TraceCheckUtils]: 17: Hoare triple {4692#true} assume true; {4692#true} is VALID [2022-04-14 15:15:08,704 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4692#true} {4730#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {4730#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:08,704 INFO L272 TraceCheckUtils]: 19: Hoare triple {4730#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4692#true} is VALID [2022-04-14 15:15:08,704 INFO L290 TraceCheckUtils]: 20: Hoare triple {4692#true} ~cond := #in~cond; {4692#true} is VALID [2022-04-14 15:15:08,704 INFO L290 TraceCheckUtils]: 21: Hoare triple {4692#true} assume !(0 == ~cond); {4692#true} is VALID [2022-04-14 15:15:08,704 INFO L290 TraceCheckUtils]: 22: Hoare triple {4692#true} assume true; {4692#true} is VALID [2022-04-14 15:15:08,705 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4692#true} {4730#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #81#return; {4730#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:08,705 INFO L290 TraceCheckUtils]: 24: Hoare triple {4730#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {4770#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:08,705 INFO L290 TraceCheckUtils]: 25: Hoare triple {4770#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4770#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:08,706 INFO L290 TraceCheckUtils]: 26: Hoare triple {4770#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 5);havoc #t~post7; {4770#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:08,706 INFO L272 TraceCheckUtils]: 27: Hoare triple {4770#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4692#true} is VALID [2022-04-14 15:15:08,706 INFO L290 TraceCheckUtils]: 28: Hoare triple {4692#true} ~cond := #in~cond; {4692#true} is VALID [2022-04-14 15:15:08,706 INFO L290 TraceCheckUtils]: 29: Hoare triple {4692#true} assume !(0 == ~cond); {4692#true} is VALID [2022-04-14 15:15:08,706 INFO L290 TraceCheckUtils]: 30: Hoare triple {4692#true} assume true; {4692#true} is VALID [2022-04-14 15:15:08,707 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4692#true} {4770#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #83#return; {4770#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:08,707 INFO L272 TraceCheckUtils]: 32: Hoare triple {4770#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4692#true} is VALID [2022-04-14 15:15:08,707 INFO L290 TraceCheckUtils]: 33: Hoare triple {4692#true} ~cond := #in~cond; {4692#true} is VALID [2022-04-14 15:15:08,707 INFO L290 TraceCheckUtils]: 34: Hoare triple {4692#true} assume !(0 == ~cond); {4692#true} is VALID [2022-04-14 15:15:08,707 INFO L290 TraceCheckUtils]: 35: Hoare triple {4692#true} assume true; {4692#true} is VALID [2022-04-14 15:15:08,707 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4692#true} {4770#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #85#return; {4770#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:08,708 INFO L272 TraceCheckUtils]: 37: Hoare triple {4770#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {4692#true} is VALID [2022-04-14 15:15:08,708 INFO L290 TraceCheckUtils]: 38: Hoare triple {4692#true} ~cond := #in~cond; {4692#true} is VALID [2022-04-14 15:15:08,708 INFO L290 TraceCheckUtils]: 39: Hoare triple {4692#true} assume !(0 == ~cond); {4692#true} is VALID [2022-04-14 15:15:08,708 INFO L290 TraceCheckUtils]: 40: Hoare triple {4692#true} assume true; {4692#true} is VALID [2022-04-14 15:15:08,708 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4692#true} {4770#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #87#return; {4770#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:08,709 INFO L290 TraceCheckUtils]: 42: Hoare triple {4770#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~r~0 >= 2 * ~b~0); {4825#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (not (<= (* main_~b~0 2) main_~r~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:08,710 INFO L290 TraceCheckUtils]: 43: Hoare triple {4825#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (not (<= (* main_~b~0 2) main_~r~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {4829#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= main_~a~0 1) (not (<= (* main_~b~0 2) main_~x~0)) (= main_~b~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (<= main_~y~0 main_~x~0))} is VALID [2022-04-14 15:15:08,710 INFO L290 TraceCheckUtils]: 44: Hoare triple {4829#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= main_~a~0 1) (not (<= (* main_~b~0 2) main_~x~0)) (= main_~b~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (<= main_~y~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4829#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= main_~a~0 1) (not (<= (* main_~b~0 2) main_~x~0)) (= main_~b~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (<= main_~y~0 main_~x~0))} is VALID [2022-04-14 15:15:08,711 INFO L290 TraceCheckUtils]: 45: Hoare triple {4829#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= main_~a~0 1) (not (<= (* main_~b~0 2) main_~x~0)) (= main_~b~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (<= main_~y~0 main_~x~0))} assume !!(#t~post6 < 5);havoc #t~post6; {4829#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= main_~a~0 1) (not (<= (* main_~b~0 2) main_~x~0)) (= main_~b~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (<= main_~y~0 main_~x~0))} is VALID [2022-04-14 15:15:08,711 INFO L272 TraceCheckUtils]: 46: Hoare triple {4829#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= main_~a~0 1) (not (<= (* main_~b~0 2) main_~x~0)) (= main_~b~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4692#true} is VALID [2022-04-14 15:15:08,711 INFO L290 TraceCheckUtils]: 47: Hoare triple {4692#true} ~cond := #in~cond; {4842#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:15:08,711 INFO L290 TraceCheckUtils]: 48: Hoare triple {4842#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {4846#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 15:15:08,711 INFO L290 TraceCheckUtils]: 49: Hoare triple {4846#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4846#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 15:15:08,712 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4846#(not (= |__VERIFIER_assert_#in~cond| 0))} {4829#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= main_~a~0 1) (not (<= (* main_~b~0 2) main_~x~0)) (= main_~b~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (<= main_~y~0 main_~x~0))} #79#return; {4853#(and (< main_~x~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~y~0 main_~r~0)) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} is VALID [2022-04-14 15:15:08,713 INFO L272 TraceCheckUtils]: 51: Hoare triple {4853#(and (< main_~x~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~y~0 main_~r~0)) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4857#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:15:08,713 INFO L290 TraceCheckUtils]: 52: Hoare triple {4857#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4861#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:15:08,713 INFO L290 TraceCheckUtils]: 53: Hoare triple {4861#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4693#false} is VALID [2022-04-14 15:15:08,714 INFO L290 TraceCheckUtils]: 54: Hoare triple {4693#false} assume !false; {4693#false} is VALID [2022-04-14 15:15:08,714 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 26 proven. 5 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2022-04-14 15:15:08,714 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 15:16:09,305 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:16:09,305 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [566322508] [2022-04-14 15:16:09,305 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:16:09,306 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [263944491] [2022-04-14 15:16:09,306 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [263944491] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-14 15:16:09,306 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-14 15:16:09,306 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11] total 11 [2022-04-14 15:16:09,306 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1698271051] [2022-04-14 15:16:09,306 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-14 15:16:09,306 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 55 [2022-04-14 15:16:09,306 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:16:09,307 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-14 15:16:09,357 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:16:09,357 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-14 15:16:09,357 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:16:09,358 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-14 15:16:09,358 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=58, Invalid=182, Unknown=0, NotChecked=0, Total=240 [2022-04-14 15:16:09,358 INFO L87 Difference]: Start difference. First operand 186 states and 221 transitions. Second operand has 11 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-14 15:16:10,091 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:16:10,091 INFO L93 Difference]: Finished difference Result 242 states and 288 transitions. [2022-04-14 15:16:10,091 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-14 15:16:10,091 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 55 [2022-04-14 15:16:10,092 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:16:10,092 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-14 15:16:10,093 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 121 transitions. [2022-04-14 15:16:10,093 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-14 15:16:10,094 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 121 transitions. [2022-04-14 15:16:10,094 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 121 transitions. [2022-04-14 15:16:10,180 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 121 edges. 121 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:16:10,182 INFO L225 Difference]: With dead ends: 242 [2022-04-14 15:16:10,182 INFO L226 Difference]: Without dead ends: 158 [2022-04-14 15:16:10,183 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 88 GetRequests, 70 SyntacticMatches, 2 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 62 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=71, Invalid=235, Unknown=0, NotChecked=0, Total=306 [2022-04-14 15:16:10,183 INFO L913 BasicCegarLoop]: 33 mSDtfsCounter, 24 mSDsluCounter, 148 mSDsCounter, 0 mSdLazyCounter, 274 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 181 SdHoareTripleChecker+Invalid, 293 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 274 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-14 15:16:10,184 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 181 Invalid, 293 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 274 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-14 15:16:10,184 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 158 states. [2022-04-14 15:16:10,244 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 158 to 157. [2022-04-14 15:16:10,245 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:16:10,245 INFO L82 GeneralOperation]: Start isEquivalent. First operand 158 states. Second operand has 157 states, 101 states have (on average 1.1584158415841583) internal successors, (117), 105 states have internal predecessors, (117), 35 states have call successors, (35), 21 states have call predecessors, (35), 20 states have return successors, (32), 30 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-14 15:16:10,245 INFO L74 IsIncluded]: Start isIncluded. First operand 158 states. Second operand has 157 states, 101 states have (on average 1.1584158415841583) internal successors, (117), 105 states have internal predecessors, (117), 35 states have call successors, (35), 21 states have call predecessors, (35), 20 states have return successors, (32), 30 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-14 15:16:10,245 INFO L87 Difference]: Start difference. First operand 158 states. Second operand has 157 states, 101 states have (on average 1.1584158415841583) internal successors, (117), 105 states have internal predecessors, (117), 35 states have call successors, (35), 21 states have call predecessors, (35), 20 states have return successors, (32), 30 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-14 15:16:10,248 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:16:10,248 INFO L93 Difference]: Finished difference Result 158 states and 185 transitions. [2022-04-14 15:16:10,248 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 185 transitions. [2022-04-14 15:16:10,248 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:16:10,248 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:16:10,249 INFO L74 IsIncluded]: Start isIncluded. First operand has 157 states, 101 states have (on average 1.1584158415841583) internal successors, (117), 105 states have internal predecessors, (117), 35 states have call successors, (35), 21 states have call predecessors, (35), 20 states have return successors, (32), 30 states have call predecessors, (32), 32 states have call successors, (32) Second operand 158 states. [2022-04-14 15:16:10,249 INFO L87 Difference]: Start difference. First operand has 157 states, 101 states have (on average 1.1584158415841583) internal successors, (117), 105 states have internal predecessors, (117), 35 states have call successors, (35), 21 states have call predecessors, (35), 20 states have return successors, (32), 30 states have call predecessors, (32), 32 states have call successors, (32) Second operand 158 states. [2022-04-14 15:16:10,251 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:16:10,251 INFO L93 Difference]: Finished difference Result 158 states and 185 transitions. [2022-04-14 15:16:10,251 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 185 transitions. [2022-04-14 15:16:10,251 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:16:10,252 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:16:10,252 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:16:10,252 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:16:10,252 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 157 states, 101 states have (on average 1.1584158415841583) internal successors, (117), 105 states have internal predecessors, (117), 35 states have call successors, (35), 21 states have call predecessors, (35), 20 states have return successors, (32), 30 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-14 15:16:10,254 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 157 states to 157 states and 184 transitions. [2022-04-14 15:16:10,254 INFO L78 Accepts]: Start accepts. Automaton has 157 states and 184 transitions. Word has length 55 [2022-04-14 15:16:10,255 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:16:10,255 INFO L478 AbstractCegarLoop]: Abstraction has 157 states and 184 transitions. [2022-04-14 15:16:10,255 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-14 15:16:10,255 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 184 transitions. [2022-04-14 15:16:10,255 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-14 15:16:10,255 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:16:10,255 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:16:10,271 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Ended with exit code 0 [2022-04-14 15:16:10,471 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-14 15:16:10,471 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:16:10,472 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:16:10,472 INFO L85 PathProgramCache]: Analyzing trace with hash 611309655, now seen corresponding path program 1 times [2022-04-14 15:16:10,472 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:16:10,472 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [594734193] [2022-04-14 15:16:10,472 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:16:10,472 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:16:10,491 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:16:10,491 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1586899729] [2022-04-14 15:16:10,491 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:16:10,491 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:16:10,491 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:16:10,495 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-14 15:16:10,496 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-14 15:16:10,536 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:16:10,536 INFO L263 TraceCheckSpWp]: Trace formula consists of 178 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-14 15:16:10,545 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:16:10,547 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:16:10,741 INFO L272 TraceCheckUtils]: 0: Hoare triple {5856#true} call ULTIMATE.init(); {5856#true} is VALID [2022-04-14 15:16:10,741 INFO L290 TraceCheckUtils]: 1: Hoare triple {5856#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {5864#(<= ~counter~0 0)} is VALID [2022-04-14 15:16:10,742 INFO L290 TraceCheckUtils]: 2: Hoare triple {5864#(<= ~counter~0 0)} assume true; {5864#(<= ~counter~0 0)} is VALID [2022-04-14 15:16:10,742 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5864#(<= ~counter~0 0)} {5856#true} #93#return; {5864#(<= ~counter~0 0)} is VALID [2022-04-14 15:16:10,742 INFO L272 TraceCheckUtils]: 4: Hoare triple {5864#(<= ~counter~0 0)} call #t~ret8 := main(); {5864#(<= ~counter~0 0)} is VALID [2022-04-14 15:16:10,742 INFO L290 TraceCheckUtils]: 5: Hoare triple {5864#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~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; {5864#(<= ~counter~0 0)} is VALID [2022-04-14 15:16:10,743 INFO L272 TraceCheckUtils]: 6: Hoare triple {5864#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5864#(<= ~counter~0 0)} is VALID [2022-04-14 15:16:10,743 INFO L290 TraceCheckUtils]: 7: Hoare triple {5864#(<= ~counter~0 0)} ~cond := #in~cond; {5864#(<= ~counter~0 0)} is VALID [2022-04-14 15:16:10,743 INFO L290 TraceCheckUtils]: 8: Hoare triple {5864#(<= ~counter~0 0)} assume !(0 == ~cond); {5864#(<= ~counter~0 0)} is VALID [2022-04-14 15:16:10,744 INFO L290 TraceCheckUtils]: 9: Hoare triple {5864#(<= ~counter~0 0)} assume true; {5864#(<= ~counter~0 0)} is VALID [2022-04-14 15:16:10,744 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5864#(<= ~counter~0 0)} {5864#(<= ~counter~0 0)} #77#return; {5864#(<= ~counter~0 0)} is VALID [2022-04-14 15:16:10,744 INFO L290 TraceCheckUtils]: 11: Hoare triple {5864#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {5864#(<= ~counter~0 0)} is VALID [2022-04-14 15:16:10,745 INFO L290 TraceCheckUtils]: 12: Hoare triple {5864#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5898#(<= ~counter~0 1)} is VALID [2022-04-14 15:16:10,745 INFO L290 TraceCheckUtils]: 13: Hoare triple {5898#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {5898#(<= ~counter~0 1)} is VALID [2022-04-14 15:16:10,746 INFO L272 TraceCheckUtils]: 14: Hoare triple {5898#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {5898#(<= ~counter~0 1)} is VALID [2022-04-14 15:16:10,746 INFO L290 TraceCheckUtils]: 15: Hoare triple {5898#(<= ~counter~0 1)} ~cond := #in~cond; {5898#(<= ~counter~0 1)} is VALID [2022-04-14 15:16:10,746 INFO L290 TraceCheckUtils]: 16: Hoare triple {5898#(<= ~counter~0 1)} assume !(0 == ~cond); {5898#(<= ~counter~0 1)} is VALID [2022-04-14 15:16:10,746 INFO L290 TraceCheckUtils]: 17: Hoare triple {5898#(<= ~counter~0 1)} assume true; {5898#(<= ~counter~0 1)} is VALID [2022-04-14 15:16:10,747 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {5898#(<= ~counter~0 1)} {5898#(<= ~counter~0 1)} #79#return; {5898#(<= ~counter~0 1)} is VALID [2022-04-14 15:16:10,747 INFO L272 TraceCheckUtils]: 19: Hoare triple {5898#(<= ~counter~0 1)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {5898#(<= ~counter~0 1)} is VALID [2022-04-14 15:16:10,748 INFO L290 TraceCheckUtils]: 20: Hoare triple {5898#(<= ~counter~0 1)} ~cond := #in~cond; {5898#(<= ~counter~0 1)} is VALID [2022-04-14 15:16:10,748 INFO L290 TraceCheckUtils]: 21: Hoare triple {5898#(<= ~counter~0 1)} assume !(0 == ~cond); {5898#(<= ~counter~0 1)} is VALID [2022-04-14 15:16:10,751 INFO L290 TraceCheckUtils]: 22: Hoare triple {5898#(<= ~counter~0 1)} assume true; {5898#(<= ~counter~0 1)} is VALID [2022-04-14 15:16:10,751 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5898#(<= ~counter~0 1)} {5898#(<= ~counter~0 1)} #81#return; {5898#(<= ~counter~0 1)} is VALID [2022-04-14 15:16:10,752 INFO L290 TraceCheckUtils]: 24: Hoare triple {5898#(<= ~counter~0 1)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {5898#(<= ~counter~0 1)} is VALID [2022-04-14 15:16:10,752 INFO L290 TraceCheckUtils]: 25: Hoare triple {5898#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,752 INFO L290 TraceCheckUtils]: 26: Hoare triple {5938#(<= ~counter~0 2)} assume !!(#t~post7 < 5);havoc #t~post7; {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,753 INFO L272 TraceCheckUtils]: 27: Hoare triple {5938#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,753 INFO L290 TraceCheckUtils]: 28: Hoare triple {5938#(<= ~counter~0 2)} ~cond := #in~cond; {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,753 INFO L290 TraceCheckUtils]: 29: Hoare triple {5938#(<= ~counter~0 2)} assume !(0 == ~cond); {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,753 INFO L290 TraceCheckUtils]: 30: Hoare triple {5938#(<= ~counter~0 2)} assume true; {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,754 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {5938#(<= ~counter~0 2)} {5938#(<= ~counter~0 2)} #83#return; {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,754 INFO L272 TraceCheckUtils]: 32: Hoare triple {5938#(<= ~counter~0 2)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,757 INFO L290 TraceCheckUtils]: 33: Hoare triple {5938#(<= ~counter~0 2)} ~cond := #in~cond; {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,757 INFO L290 TraceCheckUtils]: 34: Hoare triple {5938#(<= ~counter~0 2)} assume !(0 == ~cond); {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,757 INFO L290 TraceCheckUtils]: 35: Hoare triple {5938#(<= ~counter~0 2)} assume true; {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,758 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {5938#(<= ~counter~0 2)} {5938#(<= ~counter~0 2)} #85#return; {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,758 INFO L272 TraceCheckUtils]: 37: Hoare triple {5938#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,758 INFO L290 TraceCheckUtils]: 38: Hoare triple {5938#(<= ~counter~0 2)} ~cond := #in~cond; {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,759 INFO L290 TraceCheckUtils]: 39: Hoare triple {5938#(<= ~counter~0 2)} assume !(0 == ~cond); {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,759 INFO L290 TraceCheckUtils]: 40: Hoare triple {5938#(<= ~counter~0 2)} assume true; {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,759 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {5938#(<= ~counter~0 2)} {5938#(<= ~counter~0 2)} #87#return; {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,760 INFO L290 TraceCheckUtils]: 42: Hoare triple {5938#(<= ~counter~0 2)} assume !!(~r~0 >= 2 * ~b~0); {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,760 INFO L272 TraceCheckUtils]: 43: Hoare triple {5938#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,760 INFO L290 TraceCheckUtils]: 44: Hoare triple {5938#(<= ~counter~0 2)} ~cond := #in~cond; {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,761 INFO L290 TraceCheckUtils]: 45: Hoare triple {5938#(<= ~counter~0 2)} assume !(0 == ~cond); {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,761 INFO L290 TraceCheckUtils]: 46: Hoare triple {5938#(<= ~counter~0 2)} assume true; {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,761 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {5938#(<= ~counter~0 2)} {5938#(<= ~counter~0 2)} #89#return; {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,762 INFO L290 TraceCheckUtils]: 48: Hoare triple {5938#(<= ~counter~0 2)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:10,762 INFO L290 TraceCheckUtils]: 49: Hoare triple {5938#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6011#(<= |main_#t~post7| 2)} is VALID [2022-04-14 15:16:10,762 INFO L290 TraceCheckUtils]: 50: Hoare triple {6011#(<= |main_#t~post7| 2)} assume !(#t~post7 < 5);havoc #t~post7; {5857#false} is VALID [2022-04-14 15:16:10,762 INFO L290 TraceCheckUtils]: 51: Hoare triple {5857#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {5857#false} is VALID [2022-04-14 15:16:10,762 INFO L290 TraceCheckUtils]: 52: Hoare triple {5857#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5857#false} is VALID [2022-04-14 15:16:10,762 INFO L290 TraceCheckUtils]: 53: Hoare triple {5857#false} assume !!(#t~post6 < 5);havoc #t~post6; {5857#false} is VALID [2022-04-14 15:16:10,762 INFO L272 TraceCheckUtils]: 54: Hoare triple {5857#false} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {5857#false} is VALID [2022-04-14 15:16:10,763 INFO L290 TraceCheckUtils]: 55: Hoare triple {5857#false} ~cond := #in~cond; {5857#false} is VALID [2022-04-14 15:16:10,763 INFO L290 TraceCheckUtils]: 56: Hoare triple {5857#false} assume !(0 == ~cond); {5857#false} is VALID [2022-04-14 15:16:10,763 INFO L290 TraceCheckUtils]: 57: Hoare triple {5857#false} assume true; {5857#false} is VALID [2022-04-14 15:16:10,763 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {5857#false} {5857#false} #79#return; {5857#false} is VALID [2022-04-14 15:16:10,763 INFO L272 TraceCheckUtils]: 59: Hoare triple {5857#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {5857#false} is VALID [2022-04-14 15:16:10,763 INFO L290 TraceCheckUtils]: 60: Hoare triple {5857#false} ~cond := #in~cond; {5857#false} is VALID [2022-04-14 15:16:10,763 INFO L290 TraceCheckUtils]: 61: Hoare triple {5857#false} assume 0 == ~cond; {5857#false} is VALID [2022-04-14 15:16:10,763 INFO L290 TraceCheckUtils]: 62: Hoare triple {5857#false} assume !false; {5857#false} is VALID [2022-04-14 15:16:10,763 INFO L134 CoverageAnalysis]: Checked inductivity of 104 backedges. 40 proven. 34 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-14 15:16:10,763 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 15:16:11,011 INFO L290 TraceCheckUtils]: 62: Hoare triple {5857#false} assume !false; {5857#false} is VALID [2022-04-14 15:16:11,012 INFO L290 TraceCheckUtils]: 61: Hoare triple {5857#false} assume 0 == ~cond; {5857#false} is VALID [2022-04-14 15:16:11,012 INFO L290 TraceCheckUtils]: 60: Hoare triple {5857#false} ~cond := #in~cond; {5857#false} is VALID [2022-04-14 15:16:11,012 INFO L272 TraceCheckUtils]: 59: Hoare triple {5857#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {5857#false} is VALID [2022-04-14 15:16:11,012 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {5856#true} {5857#false} #79#return; {5857#false} is VALID [2022-04-14 15:16:11,012 INFO L290 TraceCheckUtils]: 57: Hoare triple {5856#true} assume true; {5856#true} is VALID [2022-04-14 15:16:11,012 INFO L290 TraceCheckUtils]: 56: Hoare triple {5856#true} assume !(0 == ~cond); {5856#true} is VALID [2022-04-14 15:16:11,012 INFO L290 TraceCheckUtils]: 55: Hoare triple {5856#true} ~cond := #in~cond; {5856#true} is VALID [2022-04-14 15:16:11,012 INFO L272 TraceCheckUtils]: 54: Hoare triple {5857#false} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {5856#true} is VALID [2022-04-14 15:16:11,012 INFO L290 TraceCheckUtils]: 53: Hoare triple {5857#false} assume !!(#t~post6 < 5);havoc #t~post6; {5857#false} is VALID [2022-04-14 15:16:11,012 INFO L290 TraceCheckUtils]: 52: Hoare triple {5857#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5857#false} is VALID [2022-04-14 15:16:11,022 INFO L290 TraceCheckUtils]: 51: Hoare triple {5857#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {5857#false} is VALID [2022-04-14 15:16:11,025 INFO L290 TraceCheckUtils]: 50: Hoare triple {6087#(< |main_#t~post7| 5)} assume !(#t~post7 < 5);havoc #t~post7; {5857#false} is VALID [2022-04-14 15:16:11,025 INFO L290 TraceCheckUtils]: 49: Hoare triple {6091#(< ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6087#(< |main_#t~post7| 5)} is VALID [2022-04-14 15:16:11,025 INFO L290 TraceCheckUtils]: 48: Hoare triple {6091#(< ~counter~0 5)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {6091#(< ~counter~0 5)} is VALID [2022-04-14 15:16:11,026 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {5856#true} {6091#(< ~counter~0 5)} #89#return; {6091#(< ~counter~0 5)} is VALID [2022-04-14 15:16:11,026 INFO L290 TraceCheckUtils]: 46: Hoare triple {5856#true} assume true; {5856#true} is VALID [2022-04-14 15:16:11,026 INFO L290 TraceCheckUtils]: 45: Hoare triple {5856#true} assume !(0 == ~cond); {5856#true} is VALID [2022-04-14 15:16:11,026 INFO L290 TraceCheckUtils]: 44: Hoare triple {5856#true} ~cond := #in~cond; {5856#true} is VALID [2022-04-14 15:16:11,026 INFO L272 TraceCheckUtils]: 43: Hoare triple {6091#(< ~counter~0 5)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {5856#true} is VALID [2022-04-14 15:16:11,026 INFO L290 TraceCheckUtils]: 42: Hoare triple {6091#(< ~counter~0 5)} assume !!(~r~0 >= 2 * ~b~0); {6091#(< ~counter~0 5)} is VALID [2022-04-14 15:16:11,027 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {5856#true} {6091#(< ~counter~0 5)} #87#return; {6091#(< ~counter~0 5)} is VALID [2022-04-14 15:16:11,027 INFO L290 TraceCheckUtils]: 40: Hoare triple {5856#true} assume true; {5856#true} is VALID [2022-04-14 15:16:11,027 INFO L290 TraceCheckUtils]: 39: Hoare triple {5856#true} assume !(0 == ~cond); {5856#true} is VALID [2022-04-14 15:16:11,027 INFO L290 TraceCheckUtils]: 38: Hoare triple {5856#true} ~cond := #in~cond; {5856#true} is VALID [2022-04-14 15:16:11,027 INFO L272 TraceCheckUtils]: 37: Hoare triple {6091#(< ~counter~0 5)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {5856#true} is VALID [2022-04-14 15:16:11,031 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {5856#true} {6091#(< ~counter~0 5)} #85#return; {6091#(< ~counter~0 5)} is VALID [2022-04-14 15:16:11,031 INFO L290 TraceCheckUtils]: 35: Hoare triple {5856#true} assume true; {5856#true} is VALID [2022-04-14 15:16:11,032 INFO L290 TraceCheckUtils]: 34: Hoare triple {5856#true} assume !(0 == ~cond); {5856#true} is VALID [2022-04-14 15:16:11,032 INFO L290 TraceCheckUtils]: 33: Hoare triple {5856#true} ~cond := #in~cond; {5856#true} is VALID [2022-04-14 15:16:11,032 INFO L272 TraceCheckUtils]: 32: Hoare triple {6091#(< ~counter~0 5)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {5856#true} is VALID [2022-04-14 15:16:11,032 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {5856#true} {6091#(< ~counter~0 5)} #83#return; {6091#(< ~counter~0 5)} is VALID [2022-04-14 15:16:11,032 INFO L290 TraceCheckUtils]: 30: Hoare triple {5856#true} assume true; {5856#true} is VALID [2022-04-14 15:16:11,032 INFO L290 TraceCheckUtils]: 29: Hoare triple {5856#true} assume !(0 == ~cond); {5856#true} is VALID [2022-04-14 15:16:11,032 INFO L290 TraceCheckUtils]: 28: Hoare triple {5856#true} ~cond := #in~cond; {5856#true} is VALID [2022-04-14 15:16:11,032 INFO L272 TraceCheckUtils]: 27: Hoare triple {6091#(< ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {5856#true} is VALID [2022-04-14 15:16:11,033 INFO L290 TraceCheckUtils]: 26: Hoare triple {6091#(< ~counter~0 5)} assume !!(#t~post7 < 5);havoc #t~post7; {6091#(< ~counter~0 5)} is VALID [2022-04-14 15:16:11,033 INFO L290 TraceCheckUtils]: 25: Hoare triple {6164#(< ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6091#(< ~counter~0 5)} is VALID [2022-04-14 15:16:11,033 INFO L290 TraceCheckUtils]: 24: Hoare triple {6164#(< ~counter~0 4)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {6164#(< ~counter~0 4)} is VALID [2022-04-14 15:16:11,034 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5856#true} {6164#(< ~counter~0 4)} #81#return; {6164#(< ~counter~0 4)} is VALID [2022-04-14 15:16:11,034 INFO L290 TraceCheckUtils]: 22: Hoare triple {5856#true} assume true; {5856#true} is VALID [2022-04-14 15:16:11,034 INFO L290 TraceCheckUtils]: 21: Hoare triple {5856#true} assume !(0 == ~cond); {5856#true} is VALID [2022-04-14 15:16:11,034 INFO L290 TraceCheckUtils]: 20: Hoare triple {5856#true} ~cond := #in~cond; {5856#true} is VALID [2022-04-14 15:16:11,034 INFO L272 TraceCheckUtils]: 19: Hoare triple {6164#(< ~counter~0 4)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {5856#true} is VALID [2022-04-14 15:16:11,035 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {5856#true} {6164#(< ~counter~0 4)} #79#return; {6164#(< ~counter~0 4)} is VALID [2022-04-14 15:16:11,035 INFO L290 TraceCheckUtils]: 17: Hoare triple {5856#true} assume true; {5856#true} is VALID [2022-04-14 15:16:11,035 INFO L290 TraceCheckUtils]: 16: Hoare triple {5856#true} assume !(0 == ~cond); {5856#true} is VALID [2022-04-14 15:16:11,035 INFO L290 TraceCheckUtils]: 15: Hoare triple {5856#true} ~cond := #in~cond; {5856#true} is VALID [2022-04-14 15:16:11,035 INFO L272 TraceCheckUtils]: 14: Hoare triple {6164#(< ~counter~0 4)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {5856#true} is VALID [2022-04-14 15:16:11,035 INFO L290 TraceCheckUtils]: 13: Hoare triple {6164#(< ~counter~0 4)} assume !!(#t~post6 < 5);havoc #t~post6; {6164#(< ~counter~0 4)} is VALID [2022-04-14 15:16:11,036 INFO L290 TraceCheckUtils]: 12: Hoare triple {5938#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6164#(< ~counter~0 4)} is VALID [2022-04-14 15:16:11,036 INFO L290 TraceCheckUtils]: 11: Hoare triple {5938#(<= ~counter~0 2)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:11,037 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5856#true} {5938#(<= ~counter~0 2)} #77#return; {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:11,037 INFO L290 TraceCheckUtils]: 9: Hoare triple {5856#true} assume true; {5856#true} is VALID [2022-04-14 15:16:11,037 INFO L290 TraceCheckUtils]: 8: Hoare triple {5856#true} assume !(0 == ~cond); {5856#true} is VALID [2022-04-14 15:16:11,037 INFO L290 TraceCheckUtils]: 7: Hoare triple {5856#true} ~cond := #in~cond; {5856#true} is VALID [2022-04-14 15:16:11,037 INFO L272 TraceCheckUtils]: 6: Hoare triple {5938#(<= ~counter~0 2)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5856#true} is VALID [2022-04-14 15:16:11,037 INFO L290 TraceCheckUtils]: 5: Hoare triple {5938#(<= ~counter~0 2)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~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; {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:11,038 INFO L272 TraceCheckUtils]: 4: Hoare triple {5938#(<= ~counter~0 2)} call #t~ret8 := main(); {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:11,038 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5938#(<= ~counter~0 2)} {5856#true} #93#return; {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:11,038 INFO L290 TraceCheckUtils]: 2: Hoare triple {5938#(<= ~counter~0 2)} assume true; {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:11,039 INFO L290 TraceCheckUtils]: 1: Hoare triple {5856#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {5938#(<= ~counter~0 2)} is VALID [2022-04-14 15:16:11,039 INFO L272 TraceCheckUtils]: 0: Hoare triple {5856#true} call ULTIMATE.init(); {5856#true} is VALID [2022-04-14 15:16:11,039 INFO L134 CoverageAnalysis]: Checked inductivity of 104 backedges. 18 proven. 2 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2022-04-14 15:16:11,039 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:16:11,039 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [594734193] [2022-04-14 15:16:11,039 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:16:11,039 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1586899729] [2022-04-14 15:16:11,039 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1586899729] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 15:16:11,039 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 15:16:11,039 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 9 [2022-04-14 15:16:11,040 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1624536329] [2022-04-14 15:16:11,040 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 15:16:11,040 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.444444444444445) internal successors, (49), 9 states have internal predecessors, (49), 7 states have call successors, (20), 5 states have call predecessors, (20), 5 states have return successors, (18), 6 states have call predecessors, (18), 7 states have call successors, (18) Word has length 63 [2022-04-14 15:16:11,040 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:16:11,040 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 5.444444444444445) internal successors, (49), 9 states have internal predecessors, (49), 7 states have call successors, (20), 5 states have call predecessors, (20), 5 states have return successors, (18), 6 states have call predecessors, (18), 7 states have call successors, (18) [2022-04-14 15:16:11,099 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:16:11,099 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-14 15:16:11,099 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:16:11,100 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-14 15:16:11,100 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-04-14 15:16:11,100 INFO L87 Difference]: Start difference. First operand 157 states and 184 transitions. Second operand has 9 states, 9 states have (on average 5.444444444444445) internal successors, (49), 9 states have internal predecessors, (49), 7 states have call successors, (20), 5 states have call predecessors, (20), 5 states have return successors, (18), 6 states have call predecessors, (18), 7 states have call successors, (18) [2022-04-14 15:16:11,417 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:16:11,418 INFO L93 Difference]: Finished difference Result 225 states and 268 transitions. [2022-04-14 15:16:11,418 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-14 15:16:11,418 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.444444444444445) internal successors, (49), 9 states have internal predecessors, (49), 7 states have call successors, (20), 5 states have call predecessors, (20), 5 states have return successors, (18), 6 states have call predecessors, (18), 7 states have call successors, (18) Word has length 63 [2022-04-14 15:16:11,418 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:16:11,418 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.444444444444445) internal successors, (49), 9 states have internal predecessors, (49), 7 states have call successors, (20), 5 states have call predecessors, (20), 5 states have return successors, (18), 6 states have call predecessors, (18), 7 states have call successors, (18) [2022-04-14 15:16:11,420 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 148 transitions. [2022-04-14 15:16:11,420 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.444444444444445) internal successors, (49), 9 states have internal predecessors, (49), 7 states have call successors, (20), 5 states have call predecessors, (20), 5 states have return successors, (18), 6 states have call predecessors, (18), 7 states have call successors, (18) [2022-04-14 15:16:11,421 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 148 transitions. [2022-04-14 15:16:11,421 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 148 transitions. [2022-04-14 15:16:11,517 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 148 edges. 148 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:16:11,520 INFO L225 Difference]: With dead ends: 225 [2022-04-14 15:16:11,520 INFO L226 Difference]: Without dead ends: 164 [2022-04-14 15:16:11,520 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 128 GetRequests, 117 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=46, Invalid=86, Unknown=0, NotChecked=0, Total=132 [2022-04-14 15:16:11,520 INFO L913 BasicCegarLoop]: 55 mSDtfsCounter, 50 mSDsluCounter, 144 mSDsCounter, 0 mSdLazyCounter, 70 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 199 SdHoareTripleChecker+Invalid, 95 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 70 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 15:16:11,521 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [50 Valid, 199 Invalid, 95 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 70 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 15:16:11,521 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 164 states. [2022-04-14 15:16:11,589 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 164 to 162. [2022-04-14 15:16:11,589 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:16:11,589 INFO L82 GeneralOperation]: Start isEquivalent. First operand 164 states. Second operand has 162 states, 106 states have (on average 1.1320754716981132) internal successors, (120), 109 states have internal predecessors, (120), 35 states have call successors, (35), 21 states have call predecessors, (35), 20 states have return successors, (32), 31 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-14 15:16:11,590 INFO L74 IsIncluded]: Start isIncluded. First operand 164 states. Second operand has 162 states, 106 states have (on average 1.1320754716981132) internal successors, (120), 109 states have internal predecessors, (120), 35 states have call successors, (35), 21 states have call predecessors, (35), 20 states have return successors, (32), 31 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-14 15:16:11,590 INFO L87 Difference]: Start difference. First operand 164 states. Second operand has 162 states, 106 states have (on average 1.1320754716981132) internal successors, (120), 109 states have internal predecessors, (120), 35 states have call successors, (35), 21 states have call predecessors, (35), 20 states have return successors, (32), 31 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-14 15:16:11,593 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:16:11,593 INFO L93 Difference]: Finished difference Result 164 states and 188 transitions. [2022-04-14 15:16:11,593 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 188 transitions. [2022-04-14 15:16:11,594 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:16:11,594 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:16:11,594 INFO L74 IsIncluded]: Start isIncluded. First operand has 162 states, 106 states have (on average 1.1320754716981132) internal successors, (120), 109 states have internal predecessors, (120), 35 states have call successors, (35), 21 states have call predecessors, (35), 20 states have return successors, (32), 31 states have call predecessors, (32), 32 states have call successors, (32) Second operand 164 states. [2022-04-14 15:16:11,596 INFO L87 Difference]: Start difference. First operand has 162 states, 106 states have (on average 1.1320754716981132) internal successors, (120), 109 states have internal predecessors, (120), 35 states have call successors, (35), 21 states have call predecessors, (35), 20 states have return successors, (32), 31 states have call predecessors, (32), 32 states have call successors, (32) Second operand 164 states. [2022-04-14 15:16:11,599 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:16:11,599 INFO L93 Difference]: Finished difference Result 164 states and 188 transitions. [2022-04-14 15:16:11,599 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 188 transitions. [2022-04-14 15:16:11,599 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:16:11,599 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:16:11,599 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:16:11,599 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:16:11,599 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 162 states, 106 states have (on average 1.1320754716981132) internal successors, (120), 109 states have internal predecessors, (120), 35 states have call successors, (35), 21 states have call predecessors, (35), 20 states have return successors, (32), 31 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-14 15:16:11,603 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 162 states to 162 states and 187 transitions. [2022-04-14 15:16:11,603 INFO L78 Accepts]: Start accepts. Automaton has 162 states and 187 transitions. Word has length 63 [2022-04-14 15:16:11,603 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:16:11,603 INFO L478 AbstractCegarLoop]: Abstraction has 162 states and 187 transitions. [2022-04-14 15:16:11,603 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 5.444444444444445) internal successors, (49), 9 states have internal predecessors, (49), 7 states have call successors, (20), 5 states have call predecessors, (20), 5 states have return successors, (18), 6 states have call predecessors, (18), 7 states have call successors, (18) [2022-04-14 15:16:11,604 INFO L276 IsEmpty]: Start isEmpty. Operand 162 states and 187 transitions. [2022-04-14 15:16:11,604 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-04-14 15:16:11,604 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:16:11,604 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:16:11,625 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-14 15:16:11,819 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-14 15:16:11,819 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:16:11,820 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:16:11,820 INFO L85 PathProgramCache]: Analyzing trace with hash 1777426592, now seen corresponding path program 1 times [2022-04-14 15:16:11,820 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:16:11,820 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [269637118] [2022-04-14 15:16:11,820 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:16:11,820 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:16:11,835 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:16:11,835 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [697431790] [2022-04-14 15:16:11,835 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:16:11,835 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:16:11,835 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:16:11,836 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-14 15:16:11,836 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-14 15:16:11,882 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:16:11,883 INFO L263 TraceCheckSpWp]: Trace formula consists of 206 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-14 15:16:11,901 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:16:11,903 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:16:12,265 INFO L272 TraceCheckUtils]: 0: Hoare triple {7127#true} call ULTIMATE.init(); {7127#true} is VALID [2022-04-14 15:16:12,265 INFO L290 TraceCheckUtils]: 1: Hoare triple {7127#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {7127#true} is VALID [2022-04-14 15:16:12,265 INFO L290 TraceCheckUtils]: 2: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,266 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7127#true} {7127#true} #93#return; {7127#true} is VALID [2022-04-14 15:16:12,266 INFO L272 TraceCheckUtils]: 4: Hoare triple {7127#true} call #t~ret8 := main(); {7127#true} is VALID [2022-04-14 15:16:12,266 INFO L290 TraceCheckUtils]: 5: Hoare triple {7127#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~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; {7127#true} is VALID [2022-04-14 15:16:12,266 INFO L272 TraceCheckUtils]: 6: Hoare triple {7127#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7127#true} is VALID [2022-04-14 15:16:12,266 INFO L290 TraceCheckUtils]: 7: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-14 15:16:12,266 INFO L290 TraceCheckUtils]: 8: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-14 15:16:12,266 INFO L290 TraceCheckUtils]: 9: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,266 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7127#true} {7127#true} #77#return; {7127#true} is VALID [2022-04-14 15:16:12,266 INFO L290 TraceCheckUtils]: 11: Hoare triple {7127#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {7165#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:16:12,267 INFO L290 TraceCheckUtils]: 12: Hoare triple {7165#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7165#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:16:12,267 INFO L290 TraceCheckUtils]: 13: Hoare triple {7165#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 5);havoc #t~post6; {7165#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:16:12,267 INFO L272 TraceCheckUtils]: 14: Hoare triple {7165#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7127#true} is VALID [2022-04-14 15:16:12,267 INFO L290 TraceCheckUtils]: 15: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-14 15:16:12,267 INFO L290 TraceCheckUtils]: 16: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-14 15:16:12,267 INFO L290 TraceCheckUtils]: 17: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,268 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {7127#true} {7165#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {7165#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:16:12,268 INFO L272 TraceCheckUtils]: 19: Hoare triple {7165#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7127#true} is VALID [2022-04-14 15:16:12,268 INFO L290 TraceCheckUtils]: 20: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-14 15:16:12,268 INFO L290 TraceCheckUtils]: 21: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-14 15:16:12,268 INFO L290 TraceCheckUtils]: 22: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,269 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7127#true} {7165#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #81#return; {7165#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:16:12,269 INFO L290 TraceCheckUtils]: 24: Hoare triple {7165#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {7205#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:16:12,269 INFO L290 TraceCheckUtils]: 25: Hoare triple {7205#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7205#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:16:12,270 INFO L290 TraceCheckUtils]: 26: Hoare triple {7205#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 5);havoc #t~post7; {7205#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:16:12,270 INFO L272 TraceCheckUtils]: 27: Hoare triple {7205#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7127#true} is VALID [2022-04-14 15:16:12,270 INFO L290 TraceCheckUtils]: 28: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-14 15:16:12,270 INFO L290 TraceCheckUtils]: 29: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-14 15:16:12,270 INFO L290 TraceCheckUtils]: 30: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,271 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7127#true} {7205#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #83#return; {7205#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:16:12,271 INFO L272 TraceCheckUtils]: 32: Hoare triple {7205#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7127#true} is VALID [2022-04-14 15:16:12,271 INFO L290 TraceCheckUtils]: 33: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-14 15:16:12,271 INFO L290 TraceCheckUtils]: 34: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-14 15:16:12,271 INFO L290 TraceCheckUtils]: 35: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,271 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7127#true} {7205#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #85#return; {7205#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:16:12,271 INFO L272 TraceCheckUtils]: 37: Hoare triple {7205#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {7127#true} is VALID [2022-04-14 15:16:12,271 INFO L290 TraceCheckUtils]: 38: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-14 15:16:12,272 INFO L290 TraceCheckUtils]: 39: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-14 15:16:12,272 INFO L290 TraceCheckUtils]: 40: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,272 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7127#true} {7205#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #87#return; {7205#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:16:12,272 INFO L290 TraceCheckUtils]: 42: Hoare triple {7205#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(~r~0 >= 2 * ~b~0); {7205#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:16:12,273 INFO L272 TraceCheckUtils]: 43: Hoare triple {7205#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {7127#true} is VALID [2022-04-14 15:16:12,273 INFO L290 TraceCheckUtils]: 44: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-14 15:16:12,273 INFO L290 TraceCheckUtils]: 45: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-14 15:16:12,273 INFO L290 TraceCheckUtils]: 46: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,273 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {7127#true} {7205#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #89#return; {7205#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:16:12,274 INFO L290 TraceCheckUtils]: 48: Hoare triple {7205#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {7278#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-14 15:16:12,274 INFO L290 TraceCheckUtils]: 49: Hoare triple {7278#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7278#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-14 15:16:12,274 INFO L290 TraceCheckUtils]: 50: Hoare triple {7278#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} assume !!(#t~post7 < 5);havoc #t~post7; {7278#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-14 15:16:12,274 INFO L272 TraceCheckUtils]: 51: Hoare triple {7278#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7127#true} is VALID [2022-04-14 15:16:12,274 INFO L290 TraceCheckUtils]: 52: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-14 15:16:12,275 INFO L290 TraceCheckUtils]: 53: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-14 15:16:12,275 INFO L290 TraceCheckUtils]: 54: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,275 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {7127#true} {7278#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} #83#return; {7278#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-14 15:16:12,275 INFO L272 TraceCheckUtils]: 56: Hoare triple {7278#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7127#true} is VALID [2022-04-14 15:16:12,275 INFO L290 TraceCheckUtils]: 57: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-14 15:16:12,275 INFO L290 TraceCheckUtils]: 58: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-14 15:16:12,275 INFO L290 TraceCheckUtils]: 59: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,276 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {7127#true} {7278#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} #85#return; {7278#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-14 15:16:12,276 INFO L272 TraceCheckUtils]: 61: Hoare triple {7278#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {7127#true} is VALID [2022-04-14 15:16:12,276 INFO L290 TraceCheckUtils]: 62: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-14 15:16:12,276 INFO L290 TraceCheckUtils]: 63: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-14 15:16:12,276 INFO L290 TraceCheckUtils]: 64: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,277 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {7127#true} {7278#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} #87#return; {7278#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-14 15:16:12,277 INFO L290 TraceCheckUtils]: 66: Hoare triple {7278#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} assume !(~r~0 >= 2 * ~b~0); {7278#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-14 15:16:12,278 INFO L290 TraceCheckUtils]: 67: Hoare triple {7278#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {7336#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} is VALID [2022-04-14 15:16:12,278 INFO L290 TraceCheckUtils]: 68: Hoare triple {7336#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7336#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} is VALID [2022-04-14 15:16:12,278 INFO L290 TraceCheckUtils]: 69: Hoare triple {7336#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} assume !!(#t~post6 < 5);havoc #t~post6; {7336#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} is VALID [2022-04-14 15:16:12,278 INFO L272 TraceCheckUtils]: 70: Hoare triple {7336#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7127#true} is VALID [2022-04-14 15:16:12,278 INFO L290 TraceCheckUtils]: 71: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-14 15:16:12,279 INFO L290 TraceCheckUtils]: 72: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-14 15:16:12,279 INFO L290 TraceCheckUtils]: 73: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,279 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {7127#true} {7336#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} #79#return; {7336#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} is VALID [2022-04-14 15:16:12,280 INFO L272 TraceCheckUtils]: 75: Hoare triple {7336#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7361#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:16:12,280 INFO L290 TraceCheckUtils]: 76: Hoare triple {7361#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7365#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:16:12,280 INFO L290 TraceCheckUtils]: 77: Hoare triple {7365#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7128#false} is VALID [2022-04-14 15:16:12,280 INFO L290 TraceCheckUtils]: 78: Hoare triple {7128#false} assume !false; {7128#false} is VALID [2022-04-14 15:16:12,281 INFO L134 CoverageAnalysis]: Checked inductivity of 210 backedges. 20 proven. 10 refuted. 0 times theorem prover too weak. 180 trivial. 0 not checked. [2022-04-14 15:16:12,281 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 15:16:12,556 INFO L290 TraceCheckUtils]: 78: Hoare triple {7128#false} assume !false; {7128#false} is VALID [2022-04-14 15:16:12,557 INFO L290 TraceCheckUtils]: 77: Hoare triple {7365#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7128#false} is VALID [2022-04-14 15:16:12,557 INFO L290 TraceCheckUtils]: 76: Hoare triple {7361#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7365#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:16:12,558 INFO L272 TraceCheckUtils]: 75: Hoare triple {7381#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7361#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:16:12,558 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {7127#true} {7381#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #79#return; {7381#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:16:12,558 INFO L290 TraceCheckUtils]: 73: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,565 INFO L290 TraceCheckUtils]: 72: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-14 15:16:12,566 INFO L290 TraceCheckUtils]: 71: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-14 15:16:12,566 INFO L272 TraceCheckUtils]: 70: Hoare triple {7381#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7127#true} is VALID [2022-04-14 15:16:12,579 INFO L290 TraceCheckUtils]: 69: Hoare triple {7381#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post6 < 5);havoc #t~post6; {7381#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:16:12,579 INFO L290 TraceCheckUtils]: 68: Hoare triple {7381#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7381#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:16:12,586 INFO L290 TraceCheckUtils]: 67: Hoare triple {7406#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {7381#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:16:12,587 INFO L290 TraceCheckUtils]: 66: Hoare triple {7406#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} assume !(~r~0 >= 2 * ~b~0); {7406#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-14 15:16:12,587 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {7127#true} {7406#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #87#return; {7406#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-14 15:16:12,587 INFO L290 TraceCheckUtils]: 64: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,587 INFO L290 TraceCheckUtils]: 63: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-14 15:16:12,587 INFO L290 TraceCheckUtils]: 62: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-14 15:16:12,587 INFO L272 TraceCheckUtils]: 61: Hoare triple {7406#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {7127#true} is VALID [2022-04-14 15:16:12,588 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {7127#true} {7406#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #85#return; {7406#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-14 15:16:12,588 INFO L290 TraceCheckUtils]: 59: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,588 INFO L290 TraceCheckUtils]: 58: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-14 15:16:12,588 INFO L290 TraceCheckUtils]: 57: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-14 15:16:12,588 INFO L272 TraceCheckUtils]: 56: Hoare triple {7406#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7127#true} is VALID [2022-04-14 15:16:12,589 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {7127#true} {7406#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #83#return; {7406#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-14 15:16:12,589 INFO L290 TraceCheckUtils]: 54: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,589 INFO L290 TraceCheckUtils]: 53: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-14 15:16:12,589 INFO L290 TraceCheckUtils]: 52: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-14 15:16:12,589 INFO L272 TraceCheckUtils]: 51: Hoare triple {7406#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7127#true} is VALID [2022-04-14 15:16:12,589 INFO L290 TraceCheckUtils]: 50: Hoare triple {7406#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} assume !!(#t~post7 < 5);havoc #t~post7; {7406#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-14 15:16:12,589 INFO L290 TraceCheckUtils]: 49: Hoare triple {7406#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7406#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-14 15:16:12,592 INFO L290 TraceCheckUtils]: 48: Hoare triple {7464#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {7406#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-14 15:16:12,592 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {7127#true} {7464#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #89#return; {7464#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:16:12,592 INFO L290 TraceCheckUtils]: 46: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,593 INFO L290 TraceCheckUtils]: 45: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-14 15:16:12,593 INFO L290 TraceCheckUtils]: 44: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-14 15:16:12,593 INFO L272 TraceCheckUtils]: 43: Hoare triple {7464#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {7127#true} is VALID [2022-04-14 15:16:12,593 INFO L290 TraceCheckUtils]: 42: Hoare triple {7464#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} assume !!(~r~0 >= 2 * ~b~0); {7464#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:16:12,593 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7127#true} {7464#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #87#return; {7464#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:16:12,594 INFO L290 TraceCheckUtils]: 40: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,594 INFO L290 TraceCheckUtils]: 39: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-14 15:16:12,594 INFO L290 TraceCheckUtils]: 38: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-14 15:16:12,594 INFO L272 TraceCheckUtils]: 37: Hoare triple {7464#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {7127#true} is VALID [2022-04-14 15:16:12,594 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7127#true} {7464#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #85#return; {7464#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:16:12,594 INFO L290 TraceCheckUtils]: 35: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,594 INFO L290 TraceCheckUtils]: 34: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-14 15:16:12,594 INFO L290 TraceCheckUtils]: 33: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-14 15:16:12,594 INFO L272 TraceCheckUtils]: 32: Hoare triple {7464#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7127#true} is VALID [2022-04-14 15:16:12,595 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7127#true} {7464#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #83#return; {7464#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:16:12,595 INFO L290 TraceCheckUtils]: 30: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,595 INFO L290 TraceCheckUtils]: 29: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-14 15:16:12,595 INFO L290 TraceCheckUtils]: 28: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-14 15:16:12,595 INFO L272 TraceCheckUtils]: 27: Hoare triple {7464#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7127#true} is VALID [2022-04-14 15:16:12,596 INFO L290 TraceCheckUtils]: 26: Hoare triple {7464#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post7 < 5);havoc #t~post7; {7464#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:16:12,596 INFO L290 TraceCheckUtils]: 25: Hoare triple {7464#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7464#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:16:12,596 INFO L290 TraceCheckUtils]: 24: Hoare triple {7381#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {7464#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:16:12,597 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7127#true} {7381#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #81#return; {7381#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:16:12,597 INFO L290 TraceCheckUtils]: 22: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,597 INFO L290 TraceCheckUtils]: 21: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-14 15:16:12,597 INFO L290 TraceCheckUtils]: 20: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-14 15:16:12,597 INFO L272 TraceCheckUtils]: 19: Hoare triple {7381#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7127#true} is VALID [2022-04-14 15:16:12,598 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {7127#true} {7381#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #79#return; {7381#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:16:12,598 INFO L290 TraceCheckUtils]: 17: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,598 INFO L290 TraceCheckUtils]: 16: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-14 15:16:12,598 INFO L290 TraceCheckUtils]: 15: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-14 15:16:12,598 INFO L272 TraceCheckUtils]: 14: Hoare triple {7381#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7127#true} is VALID [2022-04-14 15:16:12,607 INFO L290 TraceCheckUtils]: 13: Hoare triple {7381#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post6 < 5);havoc #t~post6; {7381#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:16:12,607 INFO L290 TraceCheckUtils]: 12: Hoare triple {7381#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7381#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:16:12,608 INFO L290 TraceCheckUtils]: 11: Hoare triple {7127#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {7381#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:16:12,608 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7127#true} {7127#true} #77#return; {7127#true} is VALID [2022-04-14 15:16:12,608 INFO L290 TraceCheckUtils]: 9: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,608 INFO L290 TraceCheckUtils]: 8: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-14 15:16:12,608 INFO L290 TraceCheckUtils]: 7: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-14 15:16:12,608 INFO L272 TraceCheckUtils]: 6: Hoare triple {7127#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7127#true} is VALID [2022-04-14 15:16:12,608 INFO L290 TraceCheckUtils]: 5: Hoare triple {7127#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~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; {7127#true} is VALID [2022-04-14 15:16:12,608 INFO L272 TraceCheckUtils]: 4: Hoare triple {7127#true} call #t~ret8 := main(); {7127#true} is VALID [2022-04-14 15:16:12,608 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7127#true} {7127#true} #93#return; {7127#true} is VALID [2022-04-14 15:16:12,608 INFO L290 TraceCheckUtils]: 2: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-14 15:16:12,608 INFO L290 TraceCheckUtils]: 1: Hoare triple {7127#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(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {7127#true} is VALID [2022-04-14 15:16:12,608 INFO L272 TraceCheckUtils]: 0: Hoare triple {7127#true} call ULTIMATE.init(); {7127#true} is VALID [2022-04-14 15:16:12,609 INFO L134 CoverageAnalysis]: Checked inductivity of 210 backedges. 20 proven. 6 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-14 15:16:12,609 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:16:12,609 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [269637118] [2022-04-14 15:16:12,609 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:16:12,609 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [697431790] [2022-04-14 15:16:12,609 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [697431790] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 15:16:12,609 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 15:16:12,609 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7] total 11 [2022-04-14 15:16:12,609 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [70974766] [2022-04-14 15:16:12,609 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 15:16:12,610 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.4545454545454546) internal successors, (38), 10 states have internal predecessors, (38), 8 states have call successors, (24), 2 states have call predecessors, (24), 1 states have return successors, (21), 8 states have call predecessors, (21), 8 states have call successors, (21) Word has length 79 [2022-04-14 15:16:12,610 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:16:12,610 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 3.4545454545454546) internal successors, (38), 10 states have internal predecessors, (38), 8 states have call successors, (24), 2 states have call predecessors, (24), 1 states have return successors, (21), 8 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-14 15:16:12,675 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:16:12,676 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-14 15:16:12,676 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:16:12,676 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-14 15:16:12,676 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=29, Invalid=81, Unknown=0, NotChecked=0, Total=110 [2022-04-14 15:16:12,676 INFO L87 Difference]: Start difference. First operand 162 states and 187 transitions. Second operand has 11 states, 11 states have (on average 3.4545454545454546) internal successors, (38), 10 states have internal predecessors, (38), 8 states have call successors, (24), 2 states have call predecessors, (24), 1 states have return successors, (21), 8 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-14 15:16:13,951 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:16:13,951 INFO L93 Difference]: Finished difference Result 189 states and 221 transitions. [2022-04-14 15:16:13,952 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-14 15:16:13,952 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.4545454545454546) internal successors, (38), 10 states have internal predecessors, (38), 8 states have call successors, (24), 2 states have call predecessors, (24), 1 states have return successors, (21), 8 states have call predecessors, (21), 8 states have call successors, (21) Word has length 79 [2022-04-14 15:16:13,952 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:16:13,952 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.4545454545454546) internal successors, (38), 10 states have internal predecessors, (38), 8 states have call successors, (24), 2 states have call predecessors, (24), 1 states have return successors, (21), 8 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-14 15:16:13,953 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 117 transitions. [2022-04-14 15:16:13,953 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.4545454545454546) internal successors, (38), 10 states have internal predecessors, (38), 8 states have call successors, (24), 2 states have call predecessors, (24), 1 states have return successors, (21), 8 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-14 15:16:13,954 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 117 transitions. [2022-04-14 15:16:13,954 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 117 transitions. [2022-04-14 15:16:14,078 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 117 edges. 117 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:16:14,078 INFO L225 Difference]: With dead ends: 189 [2022-04-14 15:16:14,078 INFO L226 Difference]: Without dead ends: 0 [2022-04-14 15:16:14,079 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 161 GetRequests, 146 SyntacticMatches, 2 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 34 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=56, Invalid=154, Unknown=0, NotChecked=0, Total=210 [2022-04-14 15:16:14,079 INFO L913 BasicCegarLoop]: 53 mSDtfsCounter, 67 mSDsluCounter, 155 mSDsCounter, 0 mSdLazyCounter, 317 mSolverCounterSat, 84 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 68 SdHoareTripleChecker+Valid, 208 SdHoareTripleChecker+Invalid, 401 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 84 IncrementalHoareTripleChecker+Valid, 317 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-14 15:16:14,079 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [68 Valid, 208 Invalid, 401 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [84 Valid, 317 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-14 15:16:14,080 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-14 15:16:14,080 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-14 15:16:14,080 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:16:14,080 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 15:16:14,080 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 15:16:14,080 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 15:16:14,080 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:16:14,080 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-14 15:16:14,080 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 15:16:14,080 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:16:14,080 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:16:14,080 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-14 15:16:14,080 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-14 15:16:14,080 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:16:14,080 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-14 15:16:14,081 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 15:16:14,081 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:16:14,081 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:16:14,081 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:16:14,081 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:16:14,081 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 15:16:14,081 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-14 15:16:14,081 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 79 [2022-04-14 15:16:14,081 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:16:14,081 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-14 15:16:14,081 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 3.4545454545454546) internal successors, (38), 10 states have internal predecessors, (38), 8 states have call successors, (24), 2 states have call predecessors, (24), 1 states have return successors, (21), 8 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-14 15:16:14,081 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 15:16:14,081 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:16:14,083 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-14 15:16:14,099 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-14 15:16:14,283 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2022-04-14 15:16:14,285 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-14 15:16:14,924 INFO L882 garLoopResultBuilder]: For program point reach_errorEXIT(line 8) no Hoare annotation was computed. [2022-04-14 15:16:14,924 INFO L882 garLoopResultBuilder]: For program point reach_errorENTRY(line 8) no Hoare annotation was computed. [2022-04-14 15:16:14,924 INFO L882 garLoopResultBuilder]: For program point reach_errorFINAL(line 8) no Hoare annotation was computed. [2022-04-14 15:16:14,924 INFO L885 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 11 13) the Hoare annotation is: true [2022-04-14 15:16:14,924 INFO L882 garLoopResultBuilder]: For program point L12(line 12) no Hoare annotation was computed. [2022-04-14 15:16:14,924 INFO L882 garLoopResultBuilder]: For program point L12-2(lines 11 13) no Hoare annotation was computed. [2022-04-14 15:16:14,924 INFO L882 garLoopResultBuilder]: For program point assume_abort_if_notEXIT(lines 11 13) no Hoare annotation was computed. [2022-04-14 15:16:14,924 INFO L878 garLoopResultBuilder]: At program point L37-4(lines 37 61) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (and (= main_~x~0 main_~r~0) (= main_~q~0 0)) (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0)))) [2022-04-14 15:16:14,924 INFO L882 garLoopResultBuilder]: For program point mainEXIT(lines 23 65) no Hoare annotation was computed. [2022-04-14 15:16:14,924 INFO L878 garLoopResultBuilder]: At program point L54(line 54) the Hoare annotation is: (or (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= (* 2 .cse0) main_~r~0) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 .cse0))) (not (<= |old(~counter~0)| 0))) [2022-04-14 15:16:14,924 INFO L882 garLoopResultBuilder]: For program point L54-1(line 54) no Hoare annotation was computed. [2022-04-14 15:16:14,924 INFO L878 garLoopResultBuilder]: At program point L48(line 48) the Hoare annotation is: (or (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) (not (<= |old(~counter~0)| 0))) [2022-04-14 15:16:14,925 INFO L882 garLoopResultBuilder]: For program point L46-1(lines 46 58) no Hoare annotation was computed. [2022-04-14 15:16:14,925 INFO L882 garLoopResultBuilder]: For program point mainFINAL(lines 23 65) no Hoare annotation was computed. [2022-04-14 15:16:14,925 INFO L878 garLoopResultBuilder]: At program point L46-3(lines 46 58) the Hoare annotation is: (or (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) (not (<= |old(~counter~0)| 0))) [2022-04-14 15:16:14,925 INFO L882 garLoopResultBuilder]: For program point L46-4(lines 46 58) no Hoare annotation was computed. [2022-04-14 15:16:14,925 INFO L878 garLoopResultBuilder]: At program point L38(line 38) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0)))) [2022-04-14 15:16:14,925 INFO L878 garLoopResultBuilder]: At program point L38-1(line 38) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0)))) [2022-04-14 15:16:14,925 INFO L882 garLoopResultBuilder]: For program point L63(line 63) no Hoare annotation was computed. [2022-04-14 15:16:14,925 INFO L878 garLoopResultBuilder]: At program point L30(line 30) the Hoare annotation is: (or (= ~counter~0 |old(~counter~0)|) (not (<= |old(~counter~0)| 0))) [2022-04-14 15:16:14,925 INFO L878 garLoopResultBuilder]: At program point mainENTRY(lines 23 65) the Hoare annotation is: (or (= ~counter~0 |old(~counter~0)|) (not (<= |old(~counter~0)| 0))) [2022-04-14 15:16:14,925 INFO L882 garLoopResultBuilder]: For program point L30-1(line 30) no Hoare annotation was computed. [2022-04-14 15:16:14,925 INFO L882 garLoopResultBuilder]: For program point L49(lines 46 58) no Hoare annotation was computed. [2022-04-14 15:16:14,925 INFO L878 garLoopResultBuilder]: At program point L47(line 47) the Hoare annotation is: (or (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) (not (<= |old(~counter~0)| 0))) [2022-04-14 15:16:14,925 INFO L878 garLoopResultBuilder]: At program point L47-1(line 47) the Hoare annotation is: (or (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) (not (<= |old(~counter~0)| 0))) [2022-04-14 15:16:14,925 INFO L882 garLoopResultBuilder]: For program point L39(lines 37 61) no Hoare annotation was computed. [2022-04-14 15:16:14,925 INFO L882 garLoopResultBuilder]: For program point L37-1(lines 37 61) no Hoare annotation was computed. [2022-04-14 15:16:14,925 INFO L878 garLoopResultBuilder]: At program point L37-3(lines 37 61) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0)))) [2022-04-14 15:16:14,925 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2022-04-14 15:16:14,926 INFO L878 garLoopResultBuilder]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: (and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|)) [2022-04-14 15:16:14,926 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2022-04-14 15:16:14,926 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-04-14 15:16:14,926 INFO L878 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: (<= ~counter~0 0) [2022-04-14 15:16:14,926 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-14 15:16:14,926 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-04-14 15:16:14,926 INFO L882 garLoopResultBuilder]: For program point L16(lines 16 17) no Hoare annotation was computed. [2022-04-14 15:16:14,926 INFO L882 garLoopResultBuilder]: For program point L15(lines 15 18) no Hoare annotation was computed. [2022-04-14 15:16:14,926 INFO L885 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 14 20) the Hoare annotation is: true [2022-04-14 15:16:14,926 INFO L882 garLoopResultBuilder]: For program point L15-2(lines 14 20) no Hoare annotation was computed. [2022-04-14 15:16:14,926 INFO L882 garLoopResultBuilder]: For program point __VERIFIER_assertEXIT(lines 14 20) no Hoare annotation was computed. [2022-04-14 15:16:14,926 INFO L882 garLoopResultBuilder]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 17) no Hoare annotation was computed. [2022-04-14 15:16:14,928 INFO L719 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:16:14,929 INFO L177 ceAbstractionStarter]: Computing trace abstraction results [2022-04-14 15:16:14,931 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-14 15:16:14,931 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-14 15:16:14,939 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-14 15:16:14,940 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-14 15:16:14,940 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-14 15:16:14,940 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-14 15:16:14,940 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-14 15:16:14,941 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-14 15:16:14,941 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-14 15:16:14,941 WARN L170 areAnnotationChecker]: L30-1 has no Hoare annotation [2022-04-14 15:16:14,941 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-14 15:16:14,941 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-14 15:16:14,941 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-14 15:16:14,941 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-14 15:16:14,941 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-04-14 15:16:14,941 WARN L170 areAnnotationChecker]: L30-1 has no Hoare annotation [2022-04-14 15:16:14,941 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-14 15:16:14,941 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-14 15:16:14,941 WARN L170 areAnnotationChecker]: L15-2 has no Hoare annotation [2022-04-14 15:16:14,941 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-14 15:16:14,942 WARN L170 areAnnotationChecker]: L37-1 has no Hoare annotation [2022-04-14 15:16:14,942 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 15:16:14,942 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 15:16:14,942 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 15:16:14,942 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 15:16:14,942 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 15:16:14,942 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 15:16:14,942 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 15:16:14,942 WARN L170 areAnnotationChecker]: L63 has no Hoare annotation [2022-04-14 15:16:14,942 WARN L170 areAnnotationChecker]: L37-1 has no Hoare annotation [2022-04-14 15:16:14,942 WARN L170 areAnnotationChecker]: L37-1 has no Hoare annotation [2022-04-14 15:16:14,942 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-14 15:16:14,942 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-14 15:16:14,942 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-14 15:16:14,942 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2022-04-14 15:16:14,942 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2022-04-14 15:16:14,943 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2022-04-14 15:16:14,943 WARN L170 areAnnotationChecker]: L54-1 has no Hoare annotation [2022-04-14 15:16:14,943 WARN L170 areAnnotationChecker]: L63 has no Hoare annotation [2022-04-14 15:16:14,943 WARN L170 areAnnotationChecker]: L46-4 has no Hoare annotation [2022-04-14 15:16:14,943 WARN L170 areAnnotationChecker]: L46-1 has no Hoare annotation [2022-04-14 15:16:14,943 WARN L170 areAnnotationChecker]: L46-4 has no Hoare annotation [2022-04-14 15:16:14,943 WARN L170 areAnnotationChecker]: L54-1 has no Hoare annotation [2022-04-14 15:16:14,943 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-14 15:16:14,943 WARN L170 areAnnotationChecker]: L46-1 has no Hoare annotation [2022-04-14 15:16:14,943 WARN L170 areAnnotationChecker]: L46-1 has no Hoare annotation [2022-04-14 15:16:14,943 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-14 15:16:14,943 INFO L163 areAnnotationChecker]: CFG has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-14 15:16:14,949 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 03:16:14 BoogieIcfgContainer [2022-04-14 15:16:14,949 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-14 15:16:14,950 INFO L158 Benchmark]: Toolchain (without parser) took 78697.43ms. Allocated memory was 212.9MB in the beginning and 269.5MB in the end (delta: 56.6MB). Free memory was 154.3MB in the beginning and 215.5MB in the end (delta: -61.2MB). Peak memory consumption was 128.2MB. Max. memory is 8.0GB. [2022-04-14 15:16:14,950 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 212.9MB. Free memory was 170.5MB in the beginning and 170.4MB in the end (delta: 77.1kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-14 15:16:14,950 INFO L158 Benchmark]: CACSL2BoogieTranslator took 224.48ms. Allocated memory is still 212.9MB. Free memory was 154.1MB in the beginning and 183.1MB in the end (delta: -29.0MB). Peak memory consumption was 15.0MB. Max. memory is 8.0GB. [2022-04-14 15:16:14,950 INFO L158 Benchmark]: Boogie Preprocessor took 31.21ms. Allocated memory is still 212.9MB. Free memory was 183.1MB in the beginning and 181.5MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-14 15:16:14,951 INFO L158 Benchmark]: RCFGBuilder took 266.44ms. Allocated memory is still 212.9MB. Free memory was 181.5MB in the beginning and 169.2MB in the end (delta: 12.3MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-14 15:16:14,951 INFO L158 Benchmark]: TraceAbstraction took 78171.87ms. Allocated memory was 212.9MB in the beginning and 269.5MB in the end (delta: 56.6MB). Free memory was 168.9MB in the beginning and 216.0MB in the end (delta: -47.1MB). Peak memory consumption was 143.6MB. Max. memory is 8.0GB. [2022-04-14 15:16:14,952 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.09ms. Allocated memory is still 212.9MB. Free memory was 170.5MB in the beginning and 170.4MB in the end (delta: 77.1kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 224.48ms. Allocated memory is still 212.9MB. Free memory was 154.1MB in the beginning and 183.1MB in the end (delta: -29.0MB). Peak memory consumption was 15.0MB. Max. memory is 8.0GB. * Boogie Preprocessor took 31.21ms. Allocated memory is still 212.9MB. Free memory was 183.1MB in the beginning and 181.5MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 266.44ms. Allocated memory is still 212.9MB. Free memory was 181.5MB in the beginning and 169.2MB in the end (delta: 12.3MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * TraceAbstraction took 78171.87ms. Allocated memory was 212.9MB in the beginning and 269.5MB in the end (delta: 56.6MB). Free memory was 168.9MB in the beginning and 216.0MB in the end (delta: -47.1MB). Peak memory consumption was 143.6MB. 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 - PositiveResult [Line: 17]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 41 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 78.1s, OverallIterations: 12, TraceHistogramMax: 11, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 5.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.6s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 332 SdHoareTripleChecker+Valid, 1.2s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 308 mSDsluCounter, 1808 SdHoareTripleChecker+Invalid, 1.2s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 1293 mSDsCounter, 194 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1154 IncrementalHoareTripleChecker+Invalid, 1348 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 194 mSolverCounterUnsat, 515 mSDtfsCounter, 1154 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 747 GetRequests, 653 SyntacticMatches, 7 SemanticMatches, 87 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 132 ImplicationChecksByTransitivity, 0.5s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=186occurred in iteration=9, InterpolantAutomatonStates: 84, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.5s AutomataMinimizationTime, 12 MinimizatonAttempts, 24 StatesRemovedByMinimization, 7 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 16 LocationsWithAnnotation, 107 PreInvPairs, 165 NumberOfFragments, 250 HoareAnnotationTreeSize, 107 FomulaSimplifications, 0 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 16 FomulaSimplificationsInter, 2234 FormulaSimplificationTreeSizeReductionInter, 0.5s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 68.4s InterpolantComputationTime, 476 NumberOfCodeBlocks, 476 NumberOfCodeBlocksAsserted, 12 NumberOfCheckSat, 699 ConstructedInterpolants, 0 QuantifiedInterpolants, 1996 SizeOfPredicates, 29 NumberOfNonLiveVariables, 1473 ConjunctsInSsa, 112 ConjunctsInUnsatCore, 16 InterpolantComputations, 7 PerfectInterpolantSequences, 861/960 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 - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 46]: Loop Invariant Derived loop invariant: (((q * y + r == x && 1 <= r) && 1 <= y) && b == a * y) || !(\old(counter) <= 0) - InvariantResult [Line: 37]: Loop Invariant Derived loop invariant: !(\old(counter) <= 0) || ((q * y + r == x && 1 <= y) && b == a * y) RESULT: Ultimate proved your program to be correct! [2022-04-14 15:16:14,968 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Ended with exit code 0 Received shutdown request...