/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-34549b5 [2022-04-07 13:01:07,154 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-07 13:01:07,155 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-07 13:01:07,195 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-07 13:01:07,196 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-07 13:01:07,196 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-07 13:01:07,197 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-07 13:01:07,199 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-07 13:01:07,200 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-07 13:01:07,200 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-07 13:01:07,201 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-07 13:01:07,202 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-07 13:01:07,202 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-07 13:01:07,202 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-07 13:01:07,203 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-07 13:01:07,204 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-07 13:01:07,204 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-07 13:01:07,205 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-07 13:01:07,206 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-07 13:01:07,207 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-07 13:01:07,208 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-07 13:01:07,208 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-07 13:01:07,209 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-07 13:01:07,210 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-07 13:01:07,210 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-07 13:01:07,212 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-07 13:01:07,212 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-07 13:01:07,212 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-07 13:01:07,213 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-07 13:01:07,213 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-07 13:01:07,214 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-07 13:01:07,214 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-07 13:01:07,214 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-07 13:01:07,215 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-07 13:01:07,215 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-07 13:01:07,216 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-07 13:01:07,216 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-07 13:01:07,217 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-07 13:01:07,217 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-07 13:01:07,217 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-07 13:01:07,218 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-07 13:01:07,218 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-07 13:01:07,219 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-07 13:01:07,232 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-07 13:01:07,232 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-07 13:01:07,232 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-07 13:01:07,232 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-07 13:01:07,233 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-07 13:01:07,233 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-07 13:01:07,233 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-07 13:01:07,234 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-07 13:01:07,234 INFO L138 SettingsManager]: * Use SBE=true [2022-04-07 13:01:07,234 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-07 13:01:07,234 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-07 13:01:07,234 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-07 13:01:07,234 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-07 13:01:07,234 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-07 13:01:07,234 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-07 13:01:07,235 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-07 13:01:07,235 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-07 13:01:07,235 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-07 13:01:07,235 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-07 13:01:07,235 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-07 13:01:07,235 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-07 13:01:07,235 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-07 13:01:07,236 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-07 13:01:07,236 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-07 13:01:07,236 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 13:01:07,236 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-07 13:01:07,236 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-07 13:01:07,236 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-07 13:01:07,236 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-07 13:01:07,236 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-07 13:01:07,237 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-04-07 13:01:07,237 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-07 13:01:07,237 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-07 13:01:07,237 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-07 13:01:07,379 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-07 13:01:07,393 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-07 13:01:07,394 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-07 13:01:07,395 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-07 13:01:07,396 INFO L275 PluginConnector]: CDTParser initialized [2022-04-07 13:01:07,396 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-07 13:01:07,447 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9988f920f/ff6bd22c336049ccae1d61f5cedc75ae/FLAG73aa9bfeb [2022-04-07 13:01:07,817 INFO L306 CDTParser]: Found 1 translation units. [2022-04-07 13:01:07,817 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_unwindbound5.c [2022-04-07 13:01:07,824 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9988f920f/ff6bd22c336049ccae1d61f5cedc75ae/FLAG73aa9bfeb [2022-04-07 13:01:07,834 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9988f920f/ff6bd22c336049ccae1d61f5cedc75ae [2022-04-07 13:01:07,835 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-07 13:01:07,836 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-07 13:01:07,837 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-07 13:01:07,837 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-07 13:01:07,839 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-07 13:01:07,842 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 01:01:07" (1/1) ... [2022-04-07 13:01:07,843 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@236ef16e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:07, skipping insertion in model container [2022-04-07 13:01:07,843 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 01:01:07" (1/1) ... [2022-04-07 13:01:07,847 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-07 13:01:07,858 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-07 13:01:07,979 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-07 13:01:07,994 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 13:01:07,999 INFO L203 MainTranslator]: Completed pre-run [2022-04-07 13:01:08,006 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-07 13:01:08,011 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 13:01:08,019 INFO L208 MainTranslator]: Completed translation [2022-04-07 13:01:08,019 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:08 WrapperNode [2022-04-07 13:01:08,019 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-07 13:01:08,020 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-07 13:01:08,020 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-07 13:01:08,020 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-07 13:01:08,026 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:08" (1/1) ... [2022-04-07 13:01:08,026 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:08" (1/1) ... [2022-04-07 13:01:08,030 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:08" (1/1) ... [2022-04-07 13:01:08,030 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:08" (1/1) ... [2022-04-07 13:01:08,046 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:08" (1/1) ... [2022-04-07 13:01:08,051 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:08" (1/1) ... [2022-04-07 13:01:08,052 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:08" (1/1) ... [2022-04-07 13:01:08,053 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-07 13:01:08,054 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-07 13:01:08,054 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-07 13:01:08,054 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-07 13:01:08,054 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:08" (1/1) ... [2022-04-07 13:01:08,058 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 13:01:08,067 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:08,079 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-07 13:01:08,097 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-07 13:01:08,113 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-07 13:01:08,114 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-07 13:01:08,114 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-07 13:01:08,114 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-07 13:01:08,116 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-07 13:01:08,117 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-07 13:01:08,117 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-07 13:01:08,117 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-07 13:01:08,117 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-07 13:01:08,117 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-07 13:01:08,117 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-07 13:01:08,117 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-07 13:01:08,117 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-07 13:01:08,117 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-07 13:01:08,117 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-07 13:01:08,117 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-07 13:01:08,117 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-07 13:01:08,117 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-07 13:01:08,118 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-07 13:01:08,118 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-07 13:01:08,156 INFO L234 CfgBuilder]: Building ICFG [2022-04-07 13:01:08,157 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-07 13:01:08,301 INFO L275 CfgBuilder]: Performing block encoding [2022-04-07 13:01:08,306 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-07 13:01:08,306 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-07 13:01:08,308 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 01:01:08 BoogieIcfgContainer [2022-04-07 13:01:08,308 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-07 13:01:08,318 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-07 13:01:08,318 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-07 13:01:08,320 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-07 13:01:08,320 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.04 01:01:07" (1/3) ... [2022-04-07 13:01:08,320 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@67b8f750 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 01:01:08, skipping insertion in model container [2022-04-07 13:01:08,320 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 01:01:08" (2/3) ... [2022-04-07 13:01:08,321 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@67b8f750 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 01:01:08, skipping insertion in model container [2022-04-07 13:01:08,321 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 01:01:08" (3/3) ... [2022-04-07 13:01:08,322 INFO L111 eAbstractionObserver]: Analyzing ICFG cohendiv-ll_unwindbound5.c [2022-04-07 13:01:08,326 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-07 13:01:08,326 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-07 13:01:08,352 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-07 13:01:08,356 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-07 13:01:08,357 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-07 13:01:08,369 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-07 13:01:08,372 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-07 13:01:08,372 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:08,373 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 13:01:08,373 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:08,376 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:08,376 INFO L85 PathProgramCache]: Analyzing trace with hash -1588022502, now seen corresponding path program 1 times [2022-04-07 13:01:08,382 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:08,382 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1902104992] [2022-04-07 13:01:08,382 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:08,383 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:08,445 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:08,481 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 13:01:08,485 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:08,495 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-07 13:01:08,495 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-07 13:01:08,495 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {41#true} {41#true} #93#return; {41#true} is VALID [2022-04-07 13:01:08,496 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-07 13:01:08,497 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:08,502 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-07 13:01:08,502 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-07 13:01:08,502 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-07 13:01:08,502 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {41#true} #77#return; {42#false} is VALID [2022-04-07 13:01:08,503 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-07 13:01:08,504 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-07 13:01:08,504 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-07 13:01:08,504 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#true} {41#true} #93#return; {41#true} is VALID [2022-04-07 13:01:08,504 INFO L272 TraceCheckUtils]: 4: Hoare triple {41#true} call #t~ret8 := main(); {41#true} is VALID [2022-04-07 13:01:08,504 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-07 13:01:08,504 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-07 13:01:08,505 INFO L290 TraceCheckUtils]: 7: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-07 13:01:08,505 INFO L290 TraceCheckUtils]: 8: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-07 13:01:08,505 INFO L290 TraceCheckUtils]: 9: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-07 13:01:08,505 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42#false} {41#true} #77#return; {42#false} is VALID [2022-04-07 13:01:08,505 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-07 13:01:08,506 INFO L290 TraceCheckUtils]: 12: Hoare triple {42#false} assume !true; {42#false} is VALID [2022-04-07 13:01:08,506 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-07 13:01:08,506 INFO L290 TraceCheckUtils]: 14: Hoare triple {42#false} ~cond := #in~cond; {42#false} is VALID [2022-04-07 13:01:08,506 INFO L290 TraceCheckUtils]: 15: Hoare triple {42#false} assume 0 == ~cond; {42#false} is VALID [2022-04-07 13:01:08,506 INFO L290 TraceCheckUtils]: 16: Hoare triple {42#false} assume !false; {42#false} is VALID [2022-04-07 13:01:08,507 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-07 13:01:08,507 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:08,507 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1902104992] [2022-04-07 13:01:08,508 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1902104992] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 13:01:08,508 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 13:01:08,508 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-07 13:01:08,509 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1830997544] [2022-04-07 13:01:08,509 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 13:01:08,513 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-07 13:01:08,514 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:08,516 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-07 13:01:08,544 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-07 13:01:08,544 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-07 13:01:08,545 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:08,563 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-07 13:01:08,563 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 13:01:08,565 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-07 13:01:08,714 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:08,714 INFO L93 Difference]: Finished difference Result 68 states and 101 transitions. [2022-04-07 13:01:08,714 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-07 13:01:08,714 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-07 13:01:08,714 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:08,715 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-07 13:01:08,721 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 101 transitions. [2022-04-07 13:01:08,722 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-07 13:01:08,727 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 101 transitions. [2022-04-07 13:01:08,727 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 101 transitions. [2022-04-07 13:01:08,817 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-07 13:01:08,827 INFO L225 Difference]: With dead ends: 68 [2022-04-07 13:01:08,827 INFO L226 Difference]: Without dead ends: 34 [2022-04-07 13:01:08,830 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-07 13:01:08,833 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-07 13:01:08,833 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-07 13:01:08,844 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-07 13:01:08,859 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 33. [2022-04-07 13:01:08,859 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:08,860 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-07 13:01:08,861 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-07 13:01:08,861 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-07 13:01:08,867 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:08,867 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-07 13:01:08,867 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-07 13:01:08,868 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:08,868 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:08,869 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-07 13:01:08,869 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-07 13:01:08,872 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:08,872 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-07 13:01:08,873 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-07 13:01:08,873 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:08,873 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:08,874 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:08,874 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:08,874 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-07 13:01:08,876 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 42 transitions. [2022-04-07 13:01:08,877 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 42 transitions. Word has length 17 [2022-04-07 13:01:08,878 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:08,878 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 42 transitions. [2022-04-07 13:01:08,878 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-07 13:01:08,878 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 42 transitions. [2022-04-07 13:01:08,879 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-07 13:01:08,879 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:08,879 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-07 13:01:08,879 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-07 13:01:08,879 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:08,880 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:08,880 INFO L85 PathProgramCache]: Analyzing trace with hash 766070672, now seen corresponding path program 1 times [2022-04-07 13:01:08,880 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:08,880 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [299706853] [2022-04-07 13:01:08,881 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:08,881 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:08,895 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:08,895 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1339836344] [2022-04-07 13:01:08,895 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:08,896 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:08,896 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:08,897 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-07 13:01:08,898 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-07 13:01:08,933 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:08,934 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-07 13:01:08,942 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:08,944 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:09,112 INFO L272 TraceCheckUtils]: 0: Hoare triple {265#true} call ULTIMATE.init(); {265#true} is VALID [2022-04-07 13:01:09,114 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-07 13:01:09,114 INFO L290 TraceCheckUtils]: 2: Hoare triple {273#(<= ~counter~0 0)} assume true; {273#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:09,115 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {273#(<= ~counter~0 0)} {265#true} #93#return; {273#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:09,115 INFO L272 TraceCheckUtils]: 4: Hoare triple {273#(<= ~counter~0 0)} call #t~ret8 := main(); {273#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:09,115 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-07 13:01:09,116 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-07 13:01:09,116 INFO L290 TraceCheckUtils]: 7: Hoare triple {273#(<= ~counter~0 0)} ~cond := #in~cond; {273#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:09,117 INFO L290 TraceCheckUtils]: 8: Hoare triple {273#(<= ~counter~0 0)} assume !(0 == ~cond); {273#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:09,118 INFO L290 TraceCheckUtils]: 9: Hoare triple {273#(<= ~counter~0 0)} assume true; {273#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:09,118 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {273#(<= ~counter~0 0)} {273#(<= ~counter~0 0)} #77#return; {273#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:09,118 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-07 13:01:09,119 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-07 13:01:09,120 INFO L290 TraceCheckUtils]: 13: Hoare triple {307#(<= |main_#t~post6| 0)} assume !(#t~post6 < 5);havoc #t~post6; {266#false} is VALID [2022-04-07 13:01:09,120 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-07 13:01:09,120 INFO L290 TraceCheckUtils]: 15: Hoare triple {266#false} ~cond := #in~cond; {266#false} is VALID [2022-04-07 13:01:09,120 INFO L290 TraceCheckUtils]: 16: Hoare triple {266#false} assume 0 == ~cond; {266#false} is VALID [2022-04-07 13:01:09,120 INFO L290 TraceCheckUtils]: 17: Hoare triple {266#false} assume !false; {266#false} is VALID [2022-04-07 13:01:09,121 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-07 13:01:09,121 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 13:01:09,121 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:09,121 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [299706853] [2022-04-07 13:01:09,121 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:01:09,122 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1339836344] [2022-04-07 13:01:09,124 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1339836344] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 13:01:09,125 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 13:01:09,125 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-07 13:01:09,125 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [557244808] [2022-04-07 13:01:09,126 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 13:01:09,126 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-07 13:01:09,126 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:09,127 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-07 13:01:09,139 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-07 13:01:09,140 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-07 13:01:09,141 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:09,141 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-07 13:01:09,141 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-07 13:01:09,141 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-07 13:01:09,214 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:09,214 INFO L93 Difference]: Finished difference Result 42 states and 51 transitions. [2022-04-07 13:01:09,214 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-07 13:01:09,215 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-07 13:01:09,215 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:09,216 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-07 13:01:09,220 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 51 transitions. [2022-04-07 13:01:09,220 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-07 13:01:09,225 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 51 transitions. [2022-04-07 13:01:09,225 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 51 transitions. [2022-04-07 13:01:09,263 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 13:01:09,265 INFO L225 Difference]: With dead ends: 42 [2022-04-07 13:01:09,265 INFO L226 Difference]: Without dead ends: 35 [2022-04-07 13:01:09,265 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-07 13:01:09,266 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-07 13:01:09,266 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-07 13:01:09,267 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-07 13:01:09,279 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 35. [2022-04-07 13:01:09,279 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:09,280 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-07 13:01:09,280 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-07 13:01:09,280 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-07 13:01:09,282 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:09,282 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-07 13:01:09,282 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-07 13:01:09,283 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:09,283 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:09,283 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-07 13:01:09,284 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-07 13:01:09,285 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:09,285 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-07 13:01:09,285 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-07 13:01:09,286 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:09,286 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:09,286 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:09,286 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:09,286 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-07 13:01:09,288 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 44 transitions. [2022-04-07 13:01:09,288 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 44 transitions. Word has length 18 [2022-04-07 13:01:09,288 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:09,288 INFO L478 AbstractCegarLoop]: Abstraction has 35 states and 44 transitions. [2022-04-07 13:01:09,288 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-07 13:01:09,289 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-07 13:01:09,289 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-07 13:01:09,289 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:09,289 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-07 13:01:09,309 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-07 13:01:09,498 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-07 13:01:09,498 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:09,499 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:09,499 INFO L85 PathProgramCache]: Analyzing trace with hash 767560222, now seen corresponding path program 1 times [2022-04-07 13:01:09,499 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:09,499 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [353617272] [2022-04-07 13:01:09,499 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:09,499 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:09,514 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:09,514 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1949985852] [2022-04-07 13:01:09,514 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:09,514 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:09,514 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:09,515 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-07 13:01:09,516 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-07 13:01:09,556 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:09,557 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-07 13:01:09,566 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:09,567 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:09,673 INFO L272 TraceCheckUtils]: 0: Hoare triple {505#true} call ULTIMATE.init(); {505#true} is VALID [2022-04-07 13:01:09,674 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-07 13:01:09,674 INFO L290 TraceCheckUtils]: 2: Hoare triple {505#true} assume true; {505#true} is VALID [2022-04-07 13:01:09,674 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {505#true} {505#true} #93#return; {505#true} is VALID [2022-04-07 13:01:09,674 INFO L272 TraceCheckUtils]: 4: Hoare triple {505#true} call #t~ret8 := main(); {505#true} is VALID [2022-04-07 13:01:09,675 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-07 13:01:09,675 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-07 13:01:09,677 INFO L290 TraceCheckUtils]: 7: Hoare triple {505#true} ~cond := #in~cond; {505#true} is VALID [2022-04-07 13:01:09,677 INFO L290 TraceCheckUtils]: 8: Hoare triple {505#true} assume !(0 == ~cond); {505#true} is VALID [2022-04-07 13:01:09,677 INFO L290 TraceCheckUtils]: 9: Hoare triple {505#true} assume true; {505#true} is VALID [2022-04-07 13:01:09,677 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {505#true} {505#true} #77#return; {505#true} is VALID [2022-04-07 13:01:09,678 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-07 13:01:09,679 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-07 13:01:09,682 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-07 13:01:09,683 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-07 13:01:09,683 INFO L290 TraceCheckUtils]: 15: Hoare triple {553#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {557#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:09,684 INFO L290 TraceCheckUtils]: 16: Hoare triple {557#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {506#false} is VALID [2022-04-07 13:01:09,684 INFO L290 TraceCheckUtils]: 17: Hoare triple {506#false} assume !false; {506#false} is VALID [2022-04-07 13:01:09,684 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-07 13:01:09,684 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 13:01:09,684 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:09,686 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [353617272] [2022-04-07 13:01:09,686 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:01:09,686 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1949985852] [2022-04-07 13:01:09,686 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1949985852] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 13:01:09,686 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 13:01:09,686 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-07 13:01:09,686 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1728050632] [2022-04-07 13:01:09,686 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 13:01:09,687 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-07 13:01:09,687 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:09,687 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-07 13:01:09,699 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-07 13:01:09,699 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 13:01:09,699 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:09,699 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 13:01:09,699 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-07 13:01:09,700 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-07 13:01:09,841 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:09,841 INFO L93 Difference]: Finished difference Result 45 states and 56 transitions. [2022-04-07 13:01:09,841 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 13:01:09,842 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-07 13:01:09,842 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:09,842 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-07 13:01:09,843 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-07 13:01:09,844 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-07 13:01:09,845 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-07 13:01:09,845 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 56 transitions. [2022-04-07 13:01:09,892 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-07 13:01:09,893 INFO L225 Difference]: With dead ends: 45 [2022-04-07 13:01:09,893 INFO L226 Difference]: Without dead ends: 43 [2022-04-07 13:01:09,893 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-07 13:01:09,894 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-07 13:01:09,894 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-07 13:01:09,895 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-07 13:01:09,904 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 40. [2022-04-07 13:01:09,904 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:09,905 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-07 13:01:09,905 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-07 13:01:09,905 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-07 13:01:09,907 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:09,907 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-07 13:01:09,907 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-07 13:01:09,908 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:09,908 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:09,908 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-07 13:01:09,908 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-07 13:01:09,910 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:09,910 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-07 13:01:09,910 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-07 13:01:09,911 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:09,911 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:09,911 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:09,911 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:09,911 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-07 13:01:09,912 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 49 transitions. [2022-04-07 13:01:09,913 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 49 transitions. Word has length 18 [2022-04-07 13:01:09,913 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:09,913 INFO L478 AbstractCegarLoop]: Abstraction has 40 states and 49 transitions. [2022-04-07 13:01:09,913 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-07 13:01:09,913 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 49 transitions. [2022-04-07 13:01:09,913 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-07 13:01:09,913 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:09,914 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-07 13:01:09,929 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-07 13:01:10,127 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-07 13:01:10,128 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:10,128 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:10,128 INFO L85 PathProgramCache]: Analyzing trace with hash -1016228092, now seen corresponding path program 1 times [2022-04-07 13:01:10,128 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:10,128 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1573910457] [2022-04-07 13:01:10,128 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:10,129 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:10,149 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:10,149 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2079146534] [2022-04-07 13:01:10,149 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:10,150 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:10,150 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:10,150 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-07 13:01:10,151 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-07 13:01:10,183 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:10,187 INFO L263 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-07 13:01:10,194 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:10,194 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:10,272 INFO L272 TraceCheckUtils]: 0: Hoare triple {776#true} call ULTIMATE.init(); {776#true} is VALID [2022-04-07 13:01:10,272 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-07 13:01:10,272 INFO L290 TraceCheckUtils]: 2: Hoare triple {776#true} assume true; {776#true} is VALID [2022-04-07 13:01:10,272 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {776#true} {776#true} #93#return; {776#true} is VALID [2022-04-07 13:01:10,273 INFO L272 TraceCheckUtils]: 4: Hoare triple {776#true} call #t~ret8 := main(); {776#true} is VALID [2022-04-07 13:01:10,273 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-07 13:01:10,273 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-07 13:01:10,273 INFO L290 TraceCheckUtils]: 7: Hoare triple {776#true} ~cond := #in~cond; {776#true} is VALID [2022-04-07 13:01:10,273 INFO L290 TraceCheckUtils]: 8: Hoare triple {776#true} assume !(0 == ~cond); {776#true} is VALID [2022-04-07 13:01:10,273 INFO L290 TraceCheckUtils]: 9: Hoare triple {776#true} assume true; {776#true} is VALID [2022-04-07 13:01:10,273 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {776#true} {776#true} #77#return; {776#true} is VALID [2022-04-07 13:01:10,274 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-07 13:01:10,274 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-07 13:01:10,274 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-07 13:01:10,275 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-07 13:01:10,277 INFO L290 TraceCheckUtils]: 15: Hoare triple {776#true} ~cond := #in~cond; {776#true} is VALID [2022-04-07 13:01:10,278 INFO L290 TraceCheckUtils]: 16: Hoare triple {776#true} assume !(0 == ~cond); {776#true} is VALID [2022-04-07 13:01:10,282 INFO L290 TraceCheckUtils]: 17: Hoare triple {776#true} assume true; {776#true} is VALID [2022-04-07 13:01:10,283 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-07 13:01:10,284 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-07 13:01:10,284 INFO L290 TraceCheckUtils]: 20: Hoare triple {839#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {843#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:10,285 INFO L290 TraceCheckUtils]: 21: Hoare triple {843#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {777#false} is VALID [2022-04-07 13:01:10,285 INFO L290 TraceCheckUtils]: 22: Hoare triple {777#false} assume !false; {777#false} is VALID [2022-04-07 13:01:10,286 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-07 13:01:10,286 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 13:01:10,286 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:10,287 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1573910457] [2022-04-07 13:01:10,287 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:01:10,287 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2079146534] [2022-04-07 13:01:10,287 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2079146534] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 13:01:10,287 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 13:01:10,287 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-07 13:01:10,287 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [102464768] [2022-04-07 13:01:10,287 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 13:01:10,288 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-07 13:01:10,288 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:10,288 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-07 13:01:10,302 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-07 13:01:10,302 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 13:01:10,302 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:10,303 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 13:01:10,303 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-07 13:01:10,303 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-07 13:01:10,478 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:10,478 INFO L93 Difference]: Finished difference Result 58 states and 74 transitions. [2022-04-07 13:01:10,478 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 13:01:10,479 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-07 13:01:10,479 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:10,479 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-07 13:01:10,481 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 71 transitions. [2022-04-07 13:01:10,481 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-07 13:01:10,483 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 71 transitions. [2022-04-07 13:01:10,483 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 71 transitions. [2022-04-07 13:01:10,532 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-07 13:01:10,534 INFO L225 Difference]: With dead ends: 58 [2022-04-07 13:01:10,534 INFO L226 Difference]: Without dead ends: 55 [2022-04-07 13:01:10,534 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-07 13:01:10,535 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 13 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 52 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s 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.0s IncrementalHoareTripleChecker+Time [2022-04-07 13:01:10,535 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.0s Time] [2022-04-07 13:01:10,536 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-07 13:01:10,542 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 54. [2022-04-07 13:01:10,542 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:10,542 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-07 13:01:10,543 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-07 13:01:10,543 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-07 13:01:10,545 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:10,545 INFO L93 Difference]: Finished difference Result 55 states and 70 transitions. [2022-04-07 13:01:10,545 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 70 transitions. [2022-04-07 13:01:10,545 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:10,546 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:10,546 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-07 13:01:10,546 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-07 13:01:10,548 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:10,548 INFO L93 Difference]: Finished difference Result 55 states and 70 transitions. [2022-04-07 13:01:10,548 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 70 transitions. [2022-04-07 13:01:10,549 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:10,549 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:10,549 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:10,549 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:10,549 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-07 13:01:10,551 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 69 transitions. [2022-04-07 13:01:10,551 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 69 transitions. Word has length 23 [2022-04-07 13:01:10,551 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:10,551 INFO L478 AbstractCegarLoop]: Abstraction has 54 states and 69 transitions. [2022-04-07 13:01:10,551 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-07 13:01:10,551 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 69 transitions. [2022-04-07 13:01:10,552 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-07 13:01:10,552 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:10,552 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-07 13:01:10,579 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-07 13:01:10,771 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-07 13:01:10,771 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:10,772 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:10,772 INFO L85 PathProgramCache]: Analyzing trace with hash 2019703110, now seen corresponding path program 1 times [2022-04-07 13:01:10,772 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:10,772 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [876115466] [2022-04-07 13:01:10,772 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:10,772 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:10,784 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:10,784 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [734872481] [2022-04-07 13:01:10,784 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:10,784 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:10,784 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:10,785 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-07 13:01:10,786 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-07 13:01:10,818 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:10,819 INFO L263 TraceCheckSpWp]: Trace formula consists of 114 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-07 13:01:10,824 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:10,825 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:10,925 INFO L272 TraceCheckUtils]: 0: Hoare triple {1126#true} call ULTIMATE.init(); {1126#true} is VALID [2022-04-07 13:01:10,925 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-07 13:01:10,925 INFO L290 TraceCheckUtils]: 2: Hoare triple {1126#true} assume true; {1126#true} is VALID [2022-04-07 13:01:10,926 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1126#true} {1126#true} #93#return; {1126#true} is VALID [2022-04-07 13:01:10,926 INFO L272 TraceCheckUtils]: 4: Hoare triple {1126#true} call #t~ret8 := main(); {1126#true} is VALID [2022-04-07 13:01:10,926 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-07 13:01:10,926 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-07 13:01:10,927 INFO L290 TraceCheckUtils]: 7: Hoare triple {1126#true} ~cond := #in~cond; {1126#true} is VALID [2022-04-07 13:01:10,927 INFO L290 TraceCheckUtils]: 8: Hoare triple {1126#true} assume !(0 == ~cond); {1126#true} is VALID [2022-04-07 13:01:10,927 INFO L290 TraceCheckUtils]: 9: Hoare triple {1126#true} assume true; {1126#true} is VALID [2022-04-07 13:01:10,927 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1126#true} {1126#true} #77#return; {1126#true} is VALID [2022-04-07 13:01:10,927 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-07 13:01:10,927 INFO L290 TraceCheckUtils]: 12: Hoare triple {1126#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1126#true} is VALID [2022-04-07 13:01:10,927 INFO L290 TraceCheckUtils]: 13: Hoare triple {1126#true} assume !!(#t~post6 < 5);havoc #t~post6; {1126#true} is VALID [2022-04-07 13:01:10,927 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-07 13:01:10,927 INFO L290 TraceCheckUtils]: 15: Hoare triple {1126#true} ~cond := #in~cond; {1126#true} is VALID [2022-04-07 13:01:10,927 INFO L290 TraceCheckUtils]: 16: Hoare triple {1126#true} assume !(0 == ~cond); {1126#true} is VALID [2022-04-07 13:01:10,928 INFO L290 TraceCheckUtils]: 17: Hoare triple {1126#true} assume true; {1126#true} is VALID [2022-04-07 13:01:10,928 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1126#true} {1126#true} #79#return; {1126#true} is VALID [2022-04-07 13:01:10,928 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-07 13:01:10,928 INFO L290 TraceCheckUtils]: 20: Hoare triple {1126#true} ~cond := #in~cond; {1126#true} is VALID [2022-04-07 13:01:10,928 INFO L290 TraceCheckUtils]: 21: Hoare triple {1126#true} assume !(0 == ~cond); {1126#true} is VALID [2022-04-07 13:01:10,928 INFO L290 TraceCheckUtils]: 22: Hoare triple {1126#true} assume true; {1126#true} is VALID [2022-04-07 13:01:10,928 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1126#true} {1126#true} #81#return; {1126#true} is VALID [2022-04-07 13:01:10,930 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-07 13:01:10,931 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-07 13:01:10,931 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-07 13:01:10,932 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-07 13:01:10,932 INFO L290 TraceCheckUtils]: 28: Hoare triple {1213#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1217#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:10,932 INFO L290 TraceCheckUtils]: 29: Hoare triple {1217#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1127#false} is VALID [2022-04-07 13:01:10,932 INFO L290 TraceCheckUtils]: 30: Hoare triple {1127#false} assume !false; {1127#false} is VALID [2022-04-07 13:01:10,933 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-07 13:01:10,933 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 13:01:10,933 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:10,933 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [876115466] [2022-04-07 13:01:10,933 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:01:10,933 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [734872481] [2022-04-07 13:01:10,933 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [734872481] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 13:01:10,933 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 13:01:10,933 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-07 13:01:10,933 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [454518891] [2022-04-07 13:01:10,934 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 13:01:10,934 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-07 13:01:10,934 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:10,934 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-07 13:01:10,958 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-07 13:01:10,958 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 13:01:10,958 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:10,959 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 13:01:10,959 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-07 13:01:10,959 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-07 13:01:11,137 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:11,137 INFO L93 Difference]: Finished difference Result 83 states and 113 transitions. [2022-04-07 13:01:11,137 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 13:01:11,138 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-07 13:01:11,138 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:11,138 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-07 13:01:11,139 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 72 transitions. [2022-04-07 13:01:11,139 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-07 13:01:11,140 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 72 transitions. [2022-04-07 13:01:11,140 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 72 transitions. [2022-04-07 13:01:11,190 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-07 13:01:11,192 INFO L225 Difference]: With dead ends: 83 [2022-04-07 13:01:11,192 INFO L226 Difference]: Without dead ends: 81 [2022-04-07 13:01:11,192 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-07 13:01:11,193 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-07 13:01:11,193 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-07 13:01:11,193 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 81 states. [2022-04-07 13:01:11,203 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 81 to 74. [2022-04-07 13:01:11,203 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:11,203 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-07 13:01:11,203 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-07 13:01:11,204 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-07 13:01:11,207 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:11,207 INFO L93 Difference]: Finished difference Result 81 states and 111 transitions. [2022-04-07 13:01:11,207 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 111 transitions. [2022-04-07 13:01:11,208 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:11,208 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:11,208 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-07 13:01:11,208 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-07 13:01:11,211 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:11,211 INFO L93 Difference]: Finished difference Result 81 states and 111 transitions. [2022-04-07 13:01:11,211 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 111 transitions. [2022-04-07 13:01:11,212 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:11,212 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:11,212 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:11,212 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:11,212 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-07 13:01:11,215 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 100 transitions. [2022-04-07 13:01:11,215 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 100 transitions. Word has length 31 [2022-04-07 13:01:11,215 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:11,215 INFO L478 AbstractCegarLoop]: Abstraction has 74 states and 100 transitions. [2022-04-07 13:01:11,215 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-07 13:01:11,215 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 100 transitions. [2022-04-07 13:01:11,216 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-07 13:01:11,216 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:11,216 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-07 13:01:11,234 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-07 13:01:11,416 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-07 13:01:11,417 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:11,417 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:11,417 INFO L85 PathProgramCache]: Analyzing trace with hash 202176206, now seen corresponding path program 1 times [2022-04-07 13:01:11,417 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:11,417 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [55853175] [2022-04-07 13:01:11,417 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:11,417 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:11,428 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:11,428 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1052268275] [2022-04-07 13:01:11,428 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:11,428 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:11,428 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:11,429 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-07 13:01:11,430 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-07 13:01:11,466 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:11,467 INFO L263 TraceCheckSpWp]: Trace formula consists of 123 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-07 13:01:11,480 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:11,481 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:11,632 INFO L272 TraceCheckUtils]: 0: Hoare triple {1622#true} call ULTIMATE.init(); {1622#true} is VALID [2022-04-07 13:01:11,633 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-07 13:01:11,633 INFO L290 TraceCheckUtils]: 2: Hoare triple {1630#(<= ~counter~0 0)} assume true; {1630#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:11,634 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1630#(<= ~counter~0 0)} {1622#true} #93#return; {1630#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:11,635 INFO L272 TraceCheckUtils]: 4: Hoare triple {1630#(<= ~counter~0 0)} call #t~ret8 := main(); {1630#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:11,635 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-07 13:01:11,643 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-07 13:01:11,644 INFO L290 TraceCheckUtils]: 7: Hoare triple {1630#(<= ~counter~0 0)} ~cond := #in~cond; {1630#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:11,644 INFO L290 TraceCheckUtils]: 8: Hoare triple {1630#(<= ~counter~0 0)} assume !(0 == ~cond); {1630#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:11,644 INFO L290 TraceCheckUtils]: 9: Hoare triple {1630#(<= ~counter~0 0)} assume true; {1630#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:11,645 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1630#(<= ~counter~0 0)} {1630#(<= ~counter~0 0)} #77#return; {1630#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:11,645 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-07 13:01:11,645 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-07 13:01:11,646 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-07 13:01:11,646 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-07 13:01:11,647 INFO L290 TraceCheckUtils]: 15: Hoare triple {1664#(<= ~counter~0 1)} ~cond := #in~cond; {1664#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:11,647 INFO L290 TraceCheckUtils]: 16: Hoare triple {1664#(<= ~counter~0 1)} assume !(0 == ~cond); {1664#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:11,647 INFO L290 TraceCheckUtils]: 17: Hoare triple {1664#(<= ~counter~0 1)} assume true; {1664#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:11,648 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1664#(<= ~counter~0 1)} {1664#(<= ~counter~0 1)} #79#return; {1664#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:11,648 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-07 13:01:11,648 INFO L290 TraceCheckUtils]: 20: Hoare triple {1664#(<= ~counter~0 1)} ~cond := #in~cond; {1664#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:11,649 INFO L290 TraceCheckUtils]: 21: Hoare triple {1664#(<= ~counter~0 1)} assume !(0 == ~cond); {1664#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:11,649 INFO L290 TraceCheckUtils]: 22: Hoare triple {1664#(<= ~counter~0 1)} assume true; {1664#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:11,650 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1664#(<= ~counter~0 1)} {1664#(<= ~counter~0 1)} #81#return; {1664#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:11,650 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-07 13:01:11,650 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-07 13:01:11,651 INFO L290 TraceCheckUtils]: 26: Hoare triple {1704#(<= |main_#t~post7| 1)} assume !(#t~post7 < 5);havoc #t~post7; {1623#false} is VALID [2022-04-07 13:01:11,651 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-07 13:01:11,651 INFO L290 TraceCheckUtils]: 28: Hoare triple {1623#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1623#false} is VALID [2022-04-07 13:01:11,651 INFO L290 TraceCheckUtils]: 29: Hoare triple {1623#false} assume !(#t~post6 < 5);havoc #t~post6; {1623#false} is VALID [2022-04-07 13:01:11,651 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-07 13:01:11,651 INFO L290 TraceCheckUtils]: 31: Hoare triple {1623#false} ~cond := #in~cond; {1623#false} is VALID [2022-04-07 13:01:11,651 INFO L290 TraceCheckUtils]: 32: Hoare triple {1623#false} assume 0 == ~cond; {1623#false} is VALID [2022-04-07 13:01:11,651 INFO L290 TraceCheckUtils]: 33: Hoare triple {1623#false} assume !false; {1623#false} is VALID [2022-04-07 13:01:11,652 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-07 13:01:11,652 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 13:01:11,652 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:11,652 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [55853175] [2022-04-07 13:01:11,652 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:01:11,652 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1052268275] [2022-04-07 13:01:11,652 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1052268275] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 13:01:11,652 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 13:01:11,652 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-07 13:01:11,652 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1319205095] [2022-04-07 13:01:11,652 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 13:01:11,653 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-07 13:01:11,653 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:11,653 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-07 13:01:11,673 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-07 13:01:11,674 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 13:01:11,674 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:11,674 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 13:01:11,674 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-07 13:01:11,674 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-07 13:01:11,784 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:11,785 INFO L93 Difference]: Finished difference Result 113 states and 153 transitions. [2022-04-07 13:01:11,785 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 13:01:11,785 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-07 13:01:11,785 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:11,785 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-07 13:01:11,786 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 85 transitions. [2022-04-07 13:01:11,787 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-07 13:01:11,788 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 85 transitions. [2022-04-07 13:01:11,788 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 85 transitions. [2022-04-07 13:01:11,843 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-07 13:01:11,846 INFO L225 Difference]: With dead ends: 113 [2022-04-07 13:01:11,846 INFO L226 Difference]: Without dead ends: 78 [2022-04-07 13:01:11,847 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-07 13:01:11,850 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-07 13:01:11,850 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-07 13:01:11,851 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2022-04-07 13:01:11,867 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 78. [2022-04-07 13:01:11,867 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:11,867 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-07 13:01:11,867 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-07 13:01:11,868 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-07 13:01:11,870 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:11,870 INFO L93 Difference]: Finished difference Result 78 states and 102 transitions. [2022-04-07 13:01:11,870 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 102 transitions. [2022-04-07 13:01:11,870 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:11,871 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:11,871 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-07 13:01:11,871 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-07 13:01:11,873 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:11,873 INFO L93 Difference]: Finished difference Result 78 states and 102 transitions. [2022-04-07 13:01:11,873 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 102 transitions. [2022-04-07 13:01:11,874 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:11,874 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:11,874 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:11,874 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:11,874 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-07 13:01:11,876 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 102 transitions. [2022-04-07 13:01:11,876 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 102 transitions. Word has length 34 [2022-04-07 13:01:11,877 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:11,877 INFO L478 AbstractCegarLoop]: Abstraction has 78 states and 102 transitions. [2022-04-07 13:01:11,877 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-07 13:01:11,877 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 102 transitions. [2022-04-07 13:01:11,877 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-07 13:01:11,877 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:11,877 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-07 13:01:11,899 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-07 13:01:12,099 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-07 13:01:12,100 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:12,100 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:12,100 INFO L85 PathProgramCache]: Analyzing trace with hash 1813008070, now seen corresponding path program 1 times [2022-04-07 13:01:12,100 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:12,100 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1621131862] [2022-04-07 13:01:12,100 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:12,100 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:12,115 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:12,115 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1615618841] [2022-04-07 13:01:12,115 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:12,115 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:12,116 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:12,116 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-07 13:01:12,117 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-07 13:01:12,152 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:12,153 INFO L263 TraceCheckSpWp]: Trace formula consists of 132 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 13:01:12,165 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:12,166 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:12,317 INFO L272 TraceCheckUtils]: 0: Hoare triple {2168#true} call ULTIMATE.init(); {2168#true} is VALID [2022-04-07 13:01:12,317 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-07 13:01:12,317 INFO L290 TraceCheckUtils]: 2: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-07 13:01:12,319 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2168#true} {2168#true} #93#return; {2168#true} is VALID [2022-04-07 13:01:12,319 INFO L272 TraceCheckUtils]: 4: Hoare triple {2168#true} call #t~ret8 := main(); {2168#true} is VALID [2022-04-07 13:01:12,319 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-07 13:01:12,320 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-07 13:01:12,320 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-07 13:01:12,320 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-07 13:01:12,322 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-07 13:01:12,322 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-07 13:01:12,323 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-07 13:01:12,323 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-07 13:01:12,324 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-07 13:01:12,324 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-07 13:01:12,324 INFO L290 TraceCheckUtils]: 15: Hoare triple {2168#true} ~cond := #in~cond; {2168#true} is VALID [2022-04-07 13:01:12,324 INFO L290 TraceCheckUtils]: 16: Hoare triple {2168#true} assume !(0 == ~cond); {2168#true} is VALID [2022-04-07 13:01:12,324 INFO L290 TraceCheckUtils]: 17: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-07 13:01:12,325 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2168#true} {2205#(<= 1 main_~y~0)} #79#return; {2205#(<= 1 main_~y~0)} is VALID [2022-04-07 13:01:12,325 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-07 13:01:12,325 INFO L290 TraceCheckUtils]: 20: Hoare triple {2168#true} ~cond := #in~cond; {2168#true} is VALID [2022-04-07 13:01:12,325 INFO L290 TraceCheckUtils]: 21: Hoare triple {2168#true} assume !(0 == ~cond); {2168#true} is VALID [2022-04-07 13:01:12,325 INFO L290 TraceCheckUtils]: 22: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-07 13:01:12,326 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2168#true} {2205#(<= 1 main_~y~0)} #81#return; {2205#(<= 1 main_~y~0)} is VALID [2022-04-07 13:01:12,327 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-07 13:01:12,327 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-07 13:01:12,327 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-07 13:01:12,328 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-07 13:01:12,328 INFO L290 TraceCheckUtils]: 28: Hoare triple {2168#true} ~cond := #in~cond; {2168#true} is VALID [2022-04-07 13:01:12,328 INFO L290 TraceCheckUtils]: 29: Hoare triple {2168#true} assume !(0 == ~cond); {2168#true} is VALID [2022-04-07 13:01:12,328 INFO L290 TraceCheckUtils]: 30: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-07 13:01:12,328 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2168#true} {2248#(<= 1 main_~r~0)} #83#return; {2248#(<= 1 main_~r~0)} is VALID [2022-04-07 13:01:12,329 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-07 13:01:12,329 INFO L290 TraceCheckUtils]: 33: Hoare triple {2168#true} ~cond := #in~cond; {2168#true} is VALID [2022-04-07 13:01:12,329 INFO L290 TraceCheckUtils]: 34: Hoare triple {2168#true} assume !(0 == ~cond); {2168#true} is VALID [2022-04-07 13:01:12,329 INFO L290 TraceCheckUtils]: 35: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-07 13:01:12,330 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2168#true} {2248#(<= 1 main_~r~0)} #85#return; {2248#(<= 1 main_~r~0)} is VALID [2022-04-07 13:01:12,330 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-07 13:01:12,331 INFO L290 TraceCheckUtils]: 38: Hoare triple {2288#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2292#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:12,331 INFO L290 TraceCheckUtils]: 39: Hoare triple {2292#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2169#false} is VALID [2022-04-07 13:01:12,331 INFO L290 TraceCheckUtils]: 40: Hoare triple {2169#false} assume !false; {2169#false} is VALID [2022-04-07 13:01:12,332 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-07 13:01:12,332 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 13:01:12,333 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:12,333 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1621131862] [2022-04-07 13:01:12,333 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:01:12,333 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1615618841] [2022-04-07 13:01:12,333 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1615618841] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 13:01:12,333 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 13:01:12,333 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-07 13:01:12,333 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [553854264] [2022-04-07 13:01:12,333 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 13:01:12,334 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-07 13:01:12,334 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:12,334 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-07 13:01:12,353 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-07 13:01:12,353 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-07 13:01:12,353 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:12,353 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-07 13:01:12,353 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-07 13:01:12,354 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-07 13:01:12,618 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:12,618 INFO L93 Difference]: Finished difference Result 84 states and 107 transitions. [2022-04-07 13:01:12,618 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-07 13:01:12,618 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-07 13:01:12,618 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:12,618 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-07 13:01:12,619 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-07 13:01:12,619 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-07 13:01:12,620 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-07 13:01:12,620 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-07 13:01:12,650 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-07 13:01:12,651 INFO L225 Difference]: With dead ends: 84 [2022-04-07 13:01:12,652 INFO L226 Difference]: Without dead ends: 82 [2022-04-07 13:01:12,652 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-07 13:01:12,652 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-07 13:01:12,652 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-07 13:01:12,661 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 82 states. [2022-04-07 13:01:12,695 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 82 to 82. [2022-04-07 13:01:12,695 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:12,695 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-07 13:01:12,695 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-07 13:01:12,695 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-07 13:01:12,698 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:12,698 INFO L93 Difference]: Finished difference Result 82 states and 105 transitions. [2022-04-07 13:01:12,698 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 105 transitions. [2022-04-07 13:01:12,698 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:12,698 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:12,698 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-07 13:01:12,698 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-07 13:01:12,701 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:12,701 INFO L93 Difference]: Finished difference Result 82 states and 105 transitions. [2022-04-07 13:01:12,701 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 105 transitions. [2022-04-07 13:01:12,701 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:12,701 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:12,701 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:12,701 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:12,701 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-07 13:01:12,703 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 82 states to 82 states and 105 transitions. [2022-04-07 13:01:12,703 INFO L78 Accepts]: Start accepts. Automaton has 82 states and 105 transitions. Word has length 41 [2022-04-07 13:01:12,704 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:12,704 INFO L478 AbstractCegarLoop]: Abstraction has 82 states and 105 transitions. [2022-04-07 13:01:12,704 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-07 13:01:12,704 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 105 transitions. [2022-04-07 13:01:12,704 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-07 13:01:12,704 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:12,705 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-07 13:01:12,720 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-07 13:01:12,915 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-07 13:01:12,916 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:12,916 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:12,916 INFO L85 PathProgramCache]: Analyzing trace with hash -683043127, now seen corresponding path program 1 times [2022-04-07 13:01:12,916 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:12,916 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1680538245] [2022-04-07 13:01:12,916 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:12,916 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:12,929 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:12,929 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1668057822] [2022-04-07 13:01:12,929 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:12,929 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:12,930 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:12,930 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-07 13:01:12,931 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-07 13:01:12,965 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:12,966 INFO L263 TraceCheckSpWp]: Trace formula consists of 142 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 13:01:12,988 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:12,991 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:13,233 INFO L272 TraceCheckUtils]: 0: Hoare triple {2712#true} call ULTIMATE.init(); {2712#true} is VALID [2022-04-07 13:01:13,234 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-07 13:01:13,234 INFO L290 TraceCheckUtils]: 2: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:13,234 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2712#true} {2712#true} #93#return; {2712#true} is VALID [2022-04-07 13:01:13,234 INFO L272 TraceCheckUtils]: 4: Hoare triple {2712#true} call #t~ret8 := main(); {2712#true} is VALID [2022-04-07 13:01:13,234 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-07 13:01:13,234 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-07 13:01:13,234 INFO L290 TraceCheckUtils]: 7: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-07 13:01:13,234 INFO L290 TraceCheckUtils]: 8: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-07 13:01:13,234 INFO L290 TraceCheckUtils]: 9: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:13,234 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2712#true} {2712#true} #77#return; {2712#true} is VALID [2022-04-07 13:01:13,234 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-07 13:01:13,235 INFO L290 TraceCheckUtils]: 12: Hoare triple {2712#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2712#true} is VALID [2022-04-07 13:01:13,235 INFO L290 TraceCheckUtils]: 13: Hoare triple {2712#true} assume !!(#t~post6 < 5);havoc #t~post6; {2712#true} is VALID [2022-04-07 13:01:13,235 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-07 13:01:13,235 INFO L290 TraceCheckUtils]: 15: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-07 13:01:13,235 INFO L290 TraceCheckUtils]: 16: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-07 13:01:13,235 INFO L290 TraceCheckUtils]: 17: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:13,235 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2712#true} {2712#true} #79#return; {2712#true} is VALID [2022-04-07 13:01:13,235 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-07 13:01:13,235 INFO L290 TraceCheckUtils]: 20: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-07 13:01:13,235 INFO L290 TraceCheckUtils]: 21: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-07 13:01:13,236 INFO L290 TraceCheckUtils]: 22: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:13,236 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2712#true} {2712#true} #81#return; {2712#true} is VALID [2022-04-07 13:01:13,236 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-07 13:01:13,236 INFO L290 TraceCheckUtils]: 25: Hoare triple {2712#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2712#true} is VALID [2022-04-07 13:01:13,236 INFO L290 TraceCheckUtils]: 26: Hoare triple {2712#true} assume !!(#t~post7 < 5);havoc #t~post7; {2712#true} is VALID [2022-04-07 13:01:13,236 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-07 13:01:13,243 INFO L290 TraceCheckUtils]: 28: Hoare triple {2712#true} ~cond := #in~cond; {2801#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:13,244 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-07 13:01:13,244 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-07 13:01:13,244 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-07 13:01:13,245 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-07 13:01:13,245 INFO L290 TraceCheckUtils]: 33: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-07 13:01:13,245 INFO L290 TraceCheckUtils]: 34: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-07 13:01:13,245 INFO L290 TraceCheckUtils]: 35: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:13,245 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-07 13:01:13,245 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-07 13:01:13,246 INFO L290 TraceCheckUtils]: 38: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-07 13:01:13,246 INFO L290 TraceCheckUtils]: 39: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-07 13:01:13,246 INFO L290 TraceCheckUtils]: 40: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:13,246 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-07 13:01:13,247 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-07 13:01:13,247 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-07 13:01:13,248 INFO L290 TraceCheckUtils]: 44: Hoare triple {2850#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2854#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:13,248 INFO L290 TraceCheckUtils]: 45: Hoare triple {2854#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2713#false} is VALID [2022-04-07 13:01:13,248 INFO L290 TraceCheckUtils]: 46: Hoare triple {2713#false} assume !false; {2713#false} is VALID [2022-04-07 13:01:13,248 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-07 13:01:13,248 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 13:01:17,714 INFO L290 TraceCheckUtils]: 46: Hoare triple {2713#false} assume !false; {2713#false} is VALID [2022-04-07 13:01:17,715 INFO L290 TraceCheckUtils]: 45: Hoare triple {2854#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2713#false} is VALID [2022-04-07 13:01:17,715 INFO L290 TraceCheckUtils]: 44: Hoare triple {2850#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2854#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:17,715 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-07 13:01:17,716 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-07 13:01:17,716 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-07 13:01:17,721 INFO L290 TraceCheckUtils]: 40: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:17,721 INFO L290 TraceCheckUtils]: 39: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-07 13:01:17,721 INFO L290 TraceCheckUtils]: 38: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-07 13:01:17,722 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-07 13:01:17,725 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-07 13:01:17,726 INFO L290 TraceCheckUtils]: 35: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:17,727 INFO L290 TraceCheckUtils]: 34: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-07 13:01:17,727 INFO L290 TraceCheckUtils]: 33: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-07 13:01:17,727 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-07 13:01:17,728 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-07 13:01:17,729 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-07 13:01:17,730 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-07 13:01:17,730 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-07 13:01:17,730 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-07 13:01:17,730 INFO L290 TraceCheckUtils]: 26: Hoare triple {2712#true} assume !!(#t~post7 < 5);havoc #t~post7; {2712#true} is VALID [2022-04-07 13:01:17,730 INFO L290 TraceCheckUtils]: 25: Hoare triple {2712#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2712#true} is VALID [2022-04-07 13:01:17,730 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-07 13:01:17,730 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2712#true} {2712#true} #81#return; {2712#true} is VALID [2022-04-07 13:01:17,730 INFO L290 TraceCheckUtils]: 22: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:17,730 INFO L290 TraceCheckUtils]: 21: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-07 13:01:17,730 INFO L290 TraceCheckUtils]: 20: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-07 13:01:17,731 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-07 13:01:17,731 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2712#true} {2712#true} #79#return; {2712#true} is VALID [2022-04-07 13:01:17,731 INFO L290 TraceCheckUtils]: 17: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:17,731 INFO L290 TraceCheckUtils]: 16: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-07 13:01:17,731 INFO L290 TraceCheckUtils]: 15: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-07 13:01:17,731 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-07 13:01:17,731 INFO L290 TraceCheckUtils]: 13: Hoare triple {2712#true} assume !!(#t~post6 < 5);havoc #t~post6; {2712#true} is VALID [2022-04-07 13:01:17,731 INFO L290 TraceCheckUtils]: 12: Hoare triple {2712#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2712#true} is VALID [2022-04-07 13:01:17,731 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-07 13:01:17,731 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2712#true} {2712#true} #77#return; {2712#true} is VALID [2022-04-07 13:01:17,731 INFO L290 TraceCheckUtils]: 9: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:17,731 INFO L290 TraceCheckUtils]: 8: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-07 13:01:17,731 INFO L290 TraceCheckUtils]: 7: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-07 13:01:17,732 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-07 13:01:17,732 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-07 13:01:17,732 INFO L272 TraceCheckUtils]: 4: Hoare triple {2712#true} call #t~ret8 := main(); {2712#true} is VALID [2022-04-07 13:01:17,732 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2712#true} {2712#true} #93#return; {2712#true} is VALID [2022-04-07 13:01:17,732 INFO L290 TraceCheckUtils]: 2: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-07 13:01:17,732 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-07 13:01:17,732 INFO L272 TraceCheckUtils]: 0: Hoare triple {2712#true} call ULTIMATE.init(); {2712#true} is VALID [2022-04-07 13:01:17,732 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-07 13:01:17,732 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:17,732 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1680538245] [2022-04-07 13:01:17,732 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:01:17,732 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1668057822] [2022-04-07 13:01:17,733 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1668057822] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 13:01:17,733 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 13:01:17,733 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-07 13:01:17,733 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [108511208] [2022-04-07 13:01:17,733 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 13:01:17,733 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-07 13:01:17,739 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:17,739 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-07 13:01:17,763 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-07 13:01:17,763 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-07 13:01:17,764 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:17,764 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-07 13:01:17,764 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-04-07 13:01:17,764 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-07 13:01:18,058 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:18,058 INFO L93 Difference]: Finished difference Result 88 states and 110 transitions. [2022-04-07 13:01:18,058 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-07 13:01:18,059 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-07 13:01:18,059 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:18,059 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-07 13:01:18,060 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-07 13:01:18,060 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-07 13:01:18,061 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-07 13:01:18,061 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-07 13:01:18,094 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-07 13:01:18,096 INFO L225 Difference]: With dead ends: 88 [2022-04-07 13:01:18,096 INFO L226 Difference]: Without dead ends: 86 [2022-04-07 13:01:18,096 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-07 13:01:18,096 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-07 13:01:18,097 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-07 13:01:18,097 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 86 states. [2022-04-07 13:01:18,132 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 86 to 86. [2022-04-07 13:01:18,132 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:18,132 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-07 13:01:18,133 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-07 13:01:18,133 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-07 13:01:18,135 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:18,135 INFO L93 Difference]: Finished difference Result 86 states and 108 transitions. [2022-04-07 13:01:18,135 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-07 13:01:18,136 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:18,136 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:18,136 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-07 13:01:18,136 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-07 13:01:18,138 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:18,138 INFO L93 Difference]: Finished difference Result 86 states and 108 transitions. [2022-04-07 13:01:18,138 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-07 13:01:18,139 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:18,139 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:18,139 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:18,139 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:18,139 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-07 13:01:18,141 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 86 states to 86 states and 108 transitions. [2022-04-07 13:01:18,141 INFO L78 Accepts]: Start accepts. Automaton has 86 states and 108 transitions. Word has length 47 [2022-04-07 13:01:18,141 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:18,141 INFO L478 AbstractCegarLoop]: Abstraction has 86 states and 108 transitions. [2022-04-07 13:01:18,142 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-07 13:01:18,142 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-07 13:01:18,142 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-07 13:01:18,143 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:18,143 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-07 13:01:18,160 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-07 13:01:18,343 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-07 13:01:18,343 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:18,344 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:18,344 INFO L85 PathProgramCache]: Analyzing trace with hash -589126939, now seen corresponding path program 1 times [2022-04-07 13:01:18,344 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:18,344 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1581858341] [2022-04-07 13:01:18,344 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:18,344 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:18,353 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:18,353 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1316020026] [2022-04-07 13:01:18,354 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:18,354 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:18,354 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:18,354 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-07 13:01:18,355 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-07 13:01:18,407 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:18,408 INFO L263 TraceCheckSpWp]: Trace formula consists of 151 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 13:01:18,417 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:18,417 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:18,609 INFO L272 TraceCheckUtils]: 0: Hoare triple {3435#true} call ULTIMATE.init(); {3435#true} is VALID [2022-04-07 13:01:18,610 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-07 13:01:18,610 INFO L290 TraceCheckUtils]: 2: Hoare triple {3443#(<= ~counter~0 0)} assume true; {3443#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:18,611 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3443#(<= ~counter~0 0)} {3435#true} #93#return; {3443#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:18,611 INFO L272 TraceCheckUtils]: 4: Hoare triple {3443#(<= ~counter~0 0)} call #t~ret8 := main(); {3443#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:18,611 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-07 13:01:18,612 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-07 13:01:18,612 INFO L290 TraceCheckUtils]: 7: Hoare triple {3443#(<= ~counter~0 0)} ~cond := #in~cond; {3443#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:18,612 INFO L290 TraceCheckUtils]: 8: Hoare triple {3443#(<= ~counter~0 0)} assume !(0 == ~cond); {3443#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:18,612 INFO L290 TraceCheckUtils]: 9: Hoare triple {3443#(<= ~counter~0 0)} assume true; {3443#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:18,613 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3443#(<= ~counter~0 0)} {3443#(<= ~counter~0 0)} #77#return; {3443#(<= ~counter~0 0)} is VALID [2022-04-07 13:01:18,613 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-07 13:01:18,613 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-07 13:01:18,614 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-07 13:01:18,614 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-07 13:01:18,615 INFO L290 TraceCheckUtils]: 15: Hoare triple {3477#(<= ~counter~0 1)} ~cond := #in~cond; {3477#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:18,615 INFO L290 TraceCheckUtils]: 16: Hoare triple {3477#(<= ~counter~0 1)} assume !(0 == ~cond); {3477#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:18,615 INFO L290 TraceCheckUtils]: 17: Hoare triple {3477#(<= ~counter~0 1)} assume true; {3477#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:18,616 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3477#(<= ~counter~0 1)} {3477#(<= ~counter~0 1)} #79#return; {3477#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:18,616 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-07 13:01:18,616 INFO L290 TraceCheckUtils]: 20: Hoare triple {3477#(<= ~counter~0 1)} ~cond := #in~cond; {3477#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:18,617 INFO L290 TraceCheckUtils]: 21: Hoare triple {3477#(<= ~counter~0 1)} assume !(0 == ~cond); {3477#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:18,618 INFO L290 TraceCheckUtils]: 22: Hoare triple {3477#(<= ~counter~0 1)} assume true; {3477#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:18,618 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3477#(<= ~counter~0 1)} {3477#(<= ~counter~0 1)} #81#return; {3477#(<= ~counter~0 1)} is VALID [2022-04-07 13:01:18,618 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-07 13:01:18,619 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-07 13:01:18,619 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-07 13:01:18,620 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-07 13:01:18,620 INFO L290 TraceCheckUtils]: 28: Hoare triple {3517#(<= ~counter~0 2)} ~cond := #in~cond; {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:18,620 INFO L290 TraceCheckUtils]: 29: Hoare triple {3517#(<= ~counter~0 2)} assume !(0 == ~cond); {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:18,620 INFO L290 TraceCheckUtils]: 30: Hoare triple {3517#(<= ~counter~0 2)} assume true; {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:18,621 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3517#(<= ~counter~0 2)} {3517#(<= ~counter~0 2)} #83#return; {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:18,621 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-07 13:01:18,622 INFO L290 TraceCheckUtils]: 33: Hoare triple {3517#(<= ~counter~0 2)} ~cond := #in~cond; {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:18,622 INFO L290 TraceCheckUtils]: 34: Hoare triple {3517#(<= ~counter~0 2)} assume !(0 == ~cond); {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:18,622 INFO L290 TraceCheckUtils]: 35: Hoare triple {3517#(<= ~counter~0 2)} assume true; {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:18,623 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3517#(<= ~counter~0 2)} {3517#(<= ~counter~0 2)} #85#return; {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:18,623 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-07 13:01:18,623 INFO L290 TraceCheckUtils]: 38: Hoare triple {3517#(<= ~counter~0 2)} ~cond := #in~cond; {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:18,624 INFO L290 TraceCheckUtils]: 39: Hoare triple {3517#(<= ~counter~0 2)} assume !(0 == ~cond); {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:18,624 INFO L290 TraceCheckUtils]: 40: Hoare triple {3517#(<= ~counter~0 2)} assume true; {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:18,624 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3517#(<= ~counter~0 2)} {3517#(<= ~counter~0 2)} #87#return; {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:18,624 INFO L290 TraceCheckUtils]: 42: Hoare triple {3517#(<= ~counter~0 2)} assume !(~r~0 >= 2 * ~b~0); {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:18,625 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-07 13:01:18,625 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-07 13:01:18,625 INFO L290 TraceCheckUtils]: 45: Hoare triple {3575#(<= |main_#t~post6| 2)} assume !(#t~post6 < 5);havoc #t~post6; {3436#false} is VALID [2022-04-07 13:01:18,625 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-07 13:01:18,626 INFO L290 TraceCheckUtils]: 47: Hoare triple {3436#false} ~cond := #in~cond; {3436#false} is VALID [2022-04-07 13:01:18,626 INFO L290 TraceCheckUtils]: 48: Hoare triple {3436#false} assume 0 == ~cond; {3436#false} is VALID [2022-04-07 13:01:18,626 INFO L290 TraceCheckUtils]: 49: Hoare triple {3436#false} assume !false; {3436#false} is VALID [2022-04-07 13:01:18,626 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-07 13:01:18,626 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 13:01:18,885 INFO L290 TraceCheckUtils]: 49: Hoare triple {3436#false} assume !false; {3436#false} is VALID [2022-04-07 13:01:18,885 INFO L290 TraceCheckUtils]: 48: Hoare triple {3436#false} assume 0 == ~cond; {3436#false} is VALID [2022-04-07 13:01:18,885 INFO L290 TraceCheckUtils]: 47: Hoare triple {3436#false} ~cond := #in~cond; {3436#false} is VALID [2022-04-07 13:01:18,885 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-07 13:01:18,886 INFO L290 TraceCheckUtils]: 45: Hoare triple {3603#(< |main_#t~post6| 5)} assume !(#t~post6 < 5);havoc #t~post6; {3436#false} is VALID [2022-04-07 13:01:18,886 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-07 13:01:18,886 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-07 13:01:18,886 INFO L290 TraceCheckUtils]: 42: Hoare triple {3607#(< ~counter~0 5)} assume !(~r~0 >= 2 * ~b~0); {3607#(< ~counter~0 5)} is VALID [2022-04-07 13:01:18,890 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3435#true} {3607#(< ~counter~0 5)} #87#return; {3607#(< ~counter~0 5)} is VALID [2022-04-07 13:01:18,891 INFO L290 TraceCheckUtils]: 40: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-07 13:01:18,891 INFO L290 TraceCheckUtils]: 39: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-07 13:01:18,891 INFO L290 TraceCheckUtils]: 38: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-07 13:01:18,891 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-07 13:01:18,891 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3435#true} {3607#(< ~counter~0 5)} #85#return; {3607#(< ~counter~0 5)} is VALID [2022-04-07 13:01:18,891 INFO L290 TraceCheckUtils]: 35: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-07 13:01:18,891 INFO L290 TraceCheckUtils]: 34: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-07 13:01:18,892 INFO L290 TraceCheckUtils]: 33: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-07 13:01:18,892 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-07 13:01:18,896 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3435#true} {3607#(< ~counter~0 5)} #83#return; {3607#(< ~counter~0 5)} is VALID [2022-04-07 13:01:18,896 INFO L290 TraceCheckUtils]: 30: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-07 13:01:18,896 INFO L290 TraceCheckUtils]: 29: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-07 13:01:18,896 INFO L290 TraceCheckUtils]: 28: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-07 13:01:18,896 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-07 13:01:18,896 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-07 13:01:18,897 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-07 13:01:18,897 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-07 13:01:18,897 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3435#true} {3665#(< ~counter~0 4)} #81#return; {3665#(< ~counter~0 4)} is VALID [2022-04-07 13:01:18,897 INFO L290 TraceCheckUtils]: 22: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-07 13:01:18,898 INFO L290 TraceCheckUtils]: 21: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-07 13:01:18,898 INFO L290 TraceCheckUtils]: 20: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-07 13:01:18,898 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-07 13:01:18,898 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3435#true} {3665#(< ~counter~0 4)} #79#return; {3665#(< ~counter~0 4)} is VALID [2022-04-07 13:01:18,898 INFO L290 TraceCheckUtils]: 17: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-07 13:01:18,898 INFO L290 TraceCheckUtils]: 16: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-07 13:01:18,898 INFO L290 TraceCheckUtils]: 15: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-07 13:01:18,898 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-07 13:01:18,899 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-07 13:01:18,899 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-07 13:01:18,900 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-07 13:01:18,901 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3435#true} {3517#(<= ~counter~0 2)} #77#return; {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:18,901 INFO L290 TraceCheckUtils]: 9: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-07 13:01:18,901 INFO L290 TraceCheckUtils]: 8: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-07 13:01:18,901 INFO L290 TraceCheckUtils]: 7: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-07 13:01:18,901 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-07 13:01:18,904 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-07 13:01:18,904 INFO L272 TraceCheckUtils]: 4: Hoare triple {3517#(<= ~counter~0 2)} call #t~ret8 := main(); {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:18,904 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3517#(<= ~counter~0 2)} {3435#true} #93#return; {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:18,904 INFO L290 TraceCheckUtils]: 2: Hoare triple {3517#(<= ~counter~0 2)} assume true; {3517#(<= ~counter~0 2)} is VALID [2022-04-07 13:01:18,906 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-07 13:01:18,906 INFO L272 TraceCheckUtils]: 0: Hoare triple {3435#true} call ULTIMATE.init(); {3435#true} is VALID [2022-04-07 13:01:18,906 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-07 13:01:18,906 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:01:18,906 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1581858341] [2022-04-07 13:01:18,906 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:01:18,906 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1316020026] [2022-04-07 13:01:18,906 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1316020026] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 13:01:18,906 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 13:01:18,906 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 9 [2022-04-07 13:01:18,906 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [663461057] [2022-04-07 13:01:18,907 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 13:01:18,907 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-07 13:01:18,907 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:01:18,907 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-07 13:01:18,955 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-07 13:01:18,955 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-07 13:01:18,955 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:01:18,956 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-07 13:01:18,956 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-04-07 13:01:18,956 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-07 13:01:19,326 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:19,326 INFO L93 Difference]: Finished difference Result 202 states and 238 transitions. [2022-04-07 13:01:19,326 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-07 13:01:19,326 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-07 13:01:19,326 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:01:19,326 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-07 13:01:19,328 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 139 transitions. [2022-04-07 13:01:19,328 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-07 13:01:19,330 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 139 transitions. [2022-04-07 13:01:19,330 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 139 transitions. [2022-04-07 13:01:19,420 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-07 13:01:19,426 INFO L225 Difference]: With dead ends: 202 [2022-04-07 13:01:19,426 INFO L226 Difference]: Without dead ends: 195 [2022-04-07 13:01:19,427 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-07 13:01:19,427 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-07 13:01:19,427 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-07 13:01:19,428 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 195 states. [2022-04-07 13:01:19,512 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 195 to 186. [2022-04-07 13:01:19,513 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:01:19,515 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-07 13:01:19,515 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-07 13:01:19,516 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-07 13:01:19,525 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:19,525 INFO L93 Difference]: Finished difference Result 195 states and 228 transitions. [2022-04-07 13:01:19,526 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 228 transitions. [2022-04-07 13:01:19,527 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:19,527 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:19,527 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-07 13:01:19,527 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-07 13:01:19,531 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:01:19,531 INFO L93 Difference]: Finished difference Result 195 states and 228 transitions. [2022-04-07 13:01:19,531 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 228 transitions. [2022-04-07 13:01:19,532 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:01:19,532 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:01:19,532 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:01:19,532 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:01:19,532 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-07 13:01:19,535 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 186 states to 186 states and 221 transitions. [2022-04-07 13:01:19,535 INFO L78 Accepts]: Start accepts. Automaton has 186 states and 221 transitions. Word has length 50 [2022-04-07 13:01:19,535 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:01:19,535 INFO L478 AbstractCegarLoop]: Abstraction has 186 states and 221 transitions. [2022-04-07 13:01:19,536 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-07 13:01:19,536 INFO L276 IsEmpty]: Start isEmpty. Operand 186 states and 221 transitions. [2022-04-07 13:01:19,536 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-07 13:01:19,536 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:01:19,536 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-07 13:01:19,556 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-07 13:01:19,756 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-07 13:01:19,756 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:01:19,757 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:01:19,757 INFO L85 PathProgramCache]: Analyzing trace with hash -484699953, now seen corresponding path program 1 times [2022-04-07 13:01:19,757 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:01:19,757 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1829073763] [2022-04-07 13:01:19,757 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:19,757 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:01:19,766 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:01:19,766 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1844826898] [2022-04-07 13:01:19,766 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:01:19,766 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:01:19,767 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:01:19,772 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-07 13:01:19,775 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-07 13:01:19,825 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:19,826 INFO L263 TraceCheckSpWp]: Trace formula consists of 160 conjuncts, 22 conjunts are in the unsatisfiable core [2022-04-07 13:01:19,833 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:01:19,834 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:01:20,311 INFO L272 TraceCheckUtils]: 0: Hoare triple {4692#true} call ULTIMATE.init(); {4692#true} is VALID [2022-04-07 13:01:20,311 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-07 13:01:20,311 INFO L290 TraceCheckUtils]: 2: Hoare triple {4692#true} assume true; {4692#true} is VALID [2022-04-07 13:01:20,311 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4692#true} {4692#true} #93#return; {4692#true} is VALID [2022-04-07 13:01:20,311 INFO L272 TraceCheckUtils]: 4: Hoare triple {4692#true} call #t~ret8 := main(); {4692#true} is VALID [2022-04-07 13:01:20,312 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-07 13:01:20,312 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-07 13:01:20,312 INFO L290 TraceCheckUtils]: 7: Hoare triple {4692#true} ~cond := #in~cond; {4692#true} is VALID [2022-04-07 13:01:20,312 INFO L290 TraceCheckUtils]: 8: Hoare triple {4692#true} assume !(0 == ~cond); {4692#true} is VALID [2022-04-07 13:01:20,312 INFO L290 TraceCheckUtils]: 9: Hoare triple {4692#true} assume true; {4692#true} is VALID [2022-04-07 13:01:20,312 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4692#true} {4692#true} #77#return; {4692#true} is VALID [2022-04-07 13:01:20,312 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-07 13:01:20,312 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-07 13:01:20,313 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-07 13:01:20,313 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-07 13:01:20,313 INFO L290 TraceCheckUtils]: 15: Hoare triple {4692#true} ~cond := #in~cond; {4692#true} is VALID [2022-04-07 13:01:20,313 INFO L290 TraceCheckUtils]: 16: Hoare triple {4692#true} assume !(0 == ~cond); {4692#true} is VALID [2022-04-07 13:01:20,313 INFO L290 TraceCheckUtils]: 17: Hoare triple {4692#true} assume true; {4692#true} is VALID [2022-04-07 13:01:20,319 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-07 13:01:20,319 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-07 13:01:20,319 INFO L290 TraceCheckUtils]: 20: Hoare triple {4692#true} ~cond := #in~cond; {4692#true} is VALID [2022-04-07 13:01:20,320 INFO L290 TraceCheckUtils]: 21: Hoare triple {4692#true} assume !(0 == ~cond); {4692#true} is VALID [2022-04-07 13:01:20,320 INFO L290 TraceCheckUtils]: 22: Hoare triple {4692#true} assume true; {4692#true} is VALID [2022-04-07 13:01:20,320 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-07 13:01:20,320 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-07 13:01:20,321 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-07 13:01:20,321 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-07 13:01:20,321 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-07 13:01:20,321 INFO L290 TraceCheckUtils]: 28: Hoare triple {4692#true} ~cond := #in~cond; {4692#true} is VALID [2022-04-07 13:01:20,321 INFO L290 TraceCheckUtils]: 29: Hoare triple {4692#true} assume !(0 == ~cond); {4692#true} is VALID [2022-04-07 13:01:20,321 INFO L290 TraceCheckUtils]: 30: Hoare triple {4692#true} assume true; {4692#true} is VALID [2022-04-07 13:01:20,322 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-07 13:01:20,322 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-07 13:01:20,322 INFO L290 TraceCheckUtils]: 33: Hoare triple {4692#true} ~cond := #in~cond; {4692#true} is VALID [2022-04-07 13:01:20,322 INFO L290 TraceCheckUtils]: 34: Hoare triple {4692#true} assume !(0 == ~cond); {4692#true} is VALID [2022-04-07 13:01:20,322 INFO L290 TraceCheckUtils]: 35: Hoare triple {4692#true} assume true; {4692#true} is VALID [2022-04-07 13:01:20,322 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-07 13:01:20,322 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-07 13:01:20,322 INFO L290 TraceCheckUtils]: 38: Hoare triple {4692#true} ~cond := #in~cond; {4692#true} is VALID [2022-04-07 13:01:20,322 INFO L290 TraceCheckUtils]: 39: Hoare triple {4692#true} assume !(0 == ~cond); {4692#true} is VALID [2022-04-07 13:01:20,323 INFO L290 TraceCheckUtils]: 40: Hoare triple {4692#true} assume true; {4692#true} is VALID [2022-04-07 13:01:20,323 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-07 13:01:20,323 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-07 13:01:20,324 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-07 13:01:20,324 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-07 13:01:20,325 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-07 13:01:20,325 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-07 13:01:20,325 INFO L290 TraceCheckUtils]: 47: Hoare triple {4692#true} ~cond := #in~cond; {4842#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:20,325 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-07 13:01:20,326 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-07 13:01:20,326 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-07 13:01:20,327 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-07 13:01:20,327 INFO L290 TraceCheckUtils]: 52: Hoare triple {4857#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4861#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:01:20,327 INFO L290 TraceCheckUtils]: 53: Hoare triple {4861#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4693#false} is VALID [2022-04-07 13:01:20,327 INFO L290 TraceCheckUtils]: 54: Hoare triple {4693#false} assume !false; {4693#false} is VALID [2022-04-07 13:01:20,328 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-07 13:01:20,328 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 13:02:13,876 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:02:13,876 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1829073763] [2022-04-07 13:02:13,876 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:02:13,876 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1844826898] [2022-04-07 13:02:13,876 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1844826898] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-07 13:02:13,876 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-07 13:02:13,876 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11] total 11 [2022-04-07 13:02:13,876 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1330617143] [2022-04-07 13:02:13,876 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-07 13:02:13,877 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-07 13:02:13,877 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:02:13,877 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-07 13:02:13,915 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-07 13:02:13,915 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-07 13:02:13,916 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:02:13,916 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-07 13:02:13,916 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=58, Invalid=182, Unknown=0, NotChecked=0, Total=240 [2022-04-07 13:02:13,916 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-07 13:02:14,678 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:14,679 INFO L93 Difference]: Finished difference Result 242 states and 288 transitions. [2022-04-07 13:02:14,679 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-07 13:02:14,679 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-07 13:02:14,679 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:02:14,679 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-07 13:02:14,680 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 121 transitions. [2022-04-07 13:02:14,681 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-07 13:02:14,682 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 121 transitions. [2022-04-07 13:02:14,682 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 121 transitions. [2022-04-07 13:02:14,776 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-07 13:02:14,778 INFO L225 Difference]: With dead ends: 242 [2022-04-07 13:02:14,778 INFO L226 Difference]: Without dead ends: 158 [2022-04-07 13:02:14,779 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 88 GetRequests, 70 SyntacticMatches, 2 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 62 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=71, Invalid=235, Unknown=0, NotChecked=0, Total=306 [2022-04-07 13:02:14,779 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-07 13:02:14,779 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-07 13:02:14,780 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 158 states. [2022-04-07 13:02:14,841 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 158 to 157. [2022-04-07 13:02:14,841 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:02:14,841 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-07 13:02:14,842 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-07 13:02:14,842 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-07 13:02:14,845 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:14,845 INFO L93 Difference]: Finished difference Result 158 states and 185 transitions. [2022-04-07 13:02:14,845 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 185 transitions. [2022-04-07 13:02:14,845 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:02:14,846 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:02:14,846 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-07 13:02:14,846 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-07 13:02:14,851 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:14,851 INFO L93 Difference]: Finished difference Result 158 states and 185 transitions. [2022-04-07 13:02:14,851 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 185 transitions. [2022-04-07 13:02:14,852 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:02:14,852 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:02:14,852 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:02:14,852 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:02:14,852 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-07 13:02:14,855 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 157 states to 157 states and 184 transitions. [2022-04-07 13:02:14,855 INFO L78 Accepts]: Start accepts. Automaton has 157 states and 184 transitions. Word has length 55 [2022-04-07 13:02:14,855 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:02:14,855 INFO L478 AbstractCegarLoop]: Abstraction has 157 states and 184 transitions. [2022-04-07 13:02:14,855 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-07 13:02:14,855 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 184 transitions. [2022-04-07 13:02:14,856 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-07 13:02:14,856 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:02:14,856 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-07 13:02:14,871 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-07 13:02:15,071 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-07 13:02:15,071 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:02:15,072 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:02:15,072 INFO L85 PathProgramCache]: Analyzing trace with hash 611309655, now seen corresponding path program 1 times [2022-04-07 13:02:15,072 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:02:15,072 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2009705242] [2022-04-07 13:02:15,072 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:02:15,072 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:02:15,091 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:02:15,091 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1647253930] [2022-04-07 13:02:15,091 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:02:15,091 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:02:15,091 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:02:15,112 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-07 13:02:15,114 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-07 13:02:15,156 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:02:15,157 INFO L263 TraceCheckSpWp]: Trace formula consists of 178 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 13:02:15,167 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:02:15,168 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:02:15,406 INFO L272 TraceCheckUtils]: 0: Hoare triple {5856#true} call ULTIMATE.init(); {5856#true} is VALID [2022-04-07 13:02:15,407 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-07 13:02:15,408 INFO L290 TraceCheckUtils]: 2: Hoare triple {5864#(<= ~counter~0 0)} assume true; {5864#(<= ~counter~0 0)} is VALID [2022-04-07 13:02:15,409 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5864#(<= ~counter~0 0)} {5856#true} #93#return; {5864#(<= ~counter~0 0)} is VALID [2022-04-07 13:02:15,409 INFO L272 TraceCheckUtils]: 4: Hoare triple {5864#(<= ~counter~0 0)} call #t~ret8 := main(); {5864#(<= ~counter~0 0)} is VALID [2022-04-07 13:02:15,409 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-07 13:02:15,410 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-07 13:02:15,410 INFO L290 TraceCheckUtils]: 7: Hoare triple {5864#(<= ~counter~0 0)} ~cond := #in~cond; {5864#(<= ~counter~0 0)} is VALID [2022-04-07 13:02:15,411 INFO L290 TraceCheckUtils]: 8: Hoare triple {5864#(<= ~counter~0 0)} assume !(0 == ~cond); {5864#(<= ~counter~0 0)} is VALID [2022-04-07 13:02:15,411 INFO L290 TraceCheckUtils]: 9: Hoare triple {5864#(<= ~counter~0 0)} assume true; {5864#(<= ~counter~0 0)} is VALID [2022-04-07 13:02:15,411 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5864#(<= ~counter~0 0)} {5864#(<= ~counter~0 0)} #77#return; {5864#(<= ~counter~0 0)} is VALID [2022-04-07 13:02:15,412 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-07 13:02:15,412 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-07 13:02:15,413 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-07 13:02:15,413 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-07 13:02:15,414 INFO L290 TraceCheckUtils]: 15: Hoare triple {5898#(<= ~counter~0 1)} ~cond := #in~cond; {5898#(<= ~counter~0 1)} is VALID [2022-04-07 13:02:15,414 INFO L290 TraceCheckUtils]: 16: Hoare triple {5898#(<= ~counter~0 1)} assume !(0 == ~cond); {5898#(<= ~counter~0 1)} is VALID [2022-04-07 13:02:15,415 INFO L290 TraceCheckUtils]: 17: Hoare triple {5898#(<= ~counter~0 1)} assume true; {5898#(<= ~counter~0 1)} is VALID [2022-04-07 13:02:15,415 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {5898#(<= ~counter~0 1)} {5898#(<= ~counter~0 1)} #79#return; {5898#(<= ~counter~0 1)} is VALID [2022-04-07 13:02:15,416 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-07 13:02:15,416 INFO L290 TraceCheckUtils]: 20: Hoare triple {5898#(<= ~counter~0 1)} ~cond := #in~cond; {5898#(<= ~counter~0 1)} is VALID [2022-04-07 13:02:15,417 INFO L290 TraceCheckUtils]: 21: Hoare triple {5898#(<= ~counter~0 1)} assume !(0 == ~cond); {5898#(<= ~counter~0 1)} is VALID [2022-04-07 13:02:15,417 INFO L290 TraceCheckUtils]: 22: Hoare triple {5898#(<= ~counter~0 1)} assume true; {5898#(<= ~counter~0 1)} is VALID [2022-04-07 13:02:15,418 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5898#(<= ~counter~0 1)} {5898#(<= ~counter~0 1)} #81#return; {5898#(<= ~counter~0 1)} is VALID [2022-04-07 13:02:15,418 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-07 13:02:15,419 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-07 13:02:15,419 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-07 13:02:15,420 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-07 13:02:15,420 INFO L290 TraceCheckUtils]: 28: Hoare triple {5938#(<= ~counter~0 2)} ~cond := #in~cond; {5938#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:15,420 INFO L290 TraceCheckUtils]: 29: Hoare triple {5938#(<= ~counter~0 2)} assume !(0 == ~cond); {5938#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:15,420 INFO L290 TraceCheckUtils]: 30: Hoare triple {5938#(<= ~counter~0 2)} assume true; {5938#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:15,421 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {5938#(<= ~counter~0 2)} {5938#(<= ~counter~0 2)} #83#return; {5938#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:15,421 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-07 13:02:15,422 INFO L290 TraceCheckUtils]: 33: Hoare triple {5938#(<= ~counter~0 2)} ~cond := #in~cond; {5938#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:15,422 INFO L290 TraceCheckUtils]: 34: Hoare triple {5938#(<= ~counter~0 2)} assume !(0 == ~cond); {5938#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:15,422 INFO L290 TraceCheckUtils]: 35: Hoare triple {5938#(<= ~counter~0 2)} assume true; {5938#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:15,423 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {5938#(<= ~counter~0 2)} {5938#(<= ~counter~0 2)} #85#return; {5938#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:15,423 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-07 13:02:15,423 INFO L290 TraceCheckUtils]: 38: Hoare triple {5938#(<= ~counter~0 2)} ~cond := #in~cond; {5938#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:15,424 INFO L290 TraceCheckUtils]: 39: Hoare triple {5938#(<= ~counter~0 2)} assume !(0 == ~cond); {5938#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:15,424 INFO L290 TraceCheckUtils]: 40: Hoare triple {5938#(<= ~counter~0 2)} assume true; {5938#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:15,424 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {5938#(<= ~counter~0 2)} {5938#(<= ~counter~0 2)} #87#return; {5938#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:15,425 INFO L290 TraceCheckUtils]: 42: Hoare triple {5938#(<= ~counter~0 2)} assume !!(~r~0 >= 2 * ~b~0); {5938#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:15,425 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-07 13:02:15,425 INFO L290 TraceCheckUtils]: 44: Hoare triple {5938#(<= ~counter~0 2)} ~cond := #in~cond; {5938#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:15,426 INFO L290 TraceCheckUtils]: 45: Hoare triple {5938#(<= ~counter~0 2)} assume !(0 == ~cond); {5938#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:15,426 INFO L290 TraceCheckUtils]: 46: Hoare triple {5938#(<= ~counter~0 2)} assume true; {5938#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:15,426 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {5938#(<= ~counter~0 2)} {5938#(<= ~counter~0 2)} #89#return; {5938#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:15,427 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-07 13:02:15,427 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-07 13:02:15,427 INFO L290 TraceCheckUtils]: 50: Hoare triple {6011#(<= |main_#t~post7| 2)} assume !(#t~post7 < 5);havoc #t~post7; {5857#false} is VALID [2022-04-07 13:02:15,428 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-07 13:02:15,428 INFO L290 TraceCheckUtils]: 52: Hoare triple {5857#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5857#false} is VALID [2022-04-07 13:02:15,428 INFO L290 TraceCheckUtils]: 53: Hoare triple {5857#false} assume !!(#t~post6 < 5);havoc #t~post6; {5857#false} is VALID [2022-04-07 13:02:15,428 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-07 13:02:15,428 INFO L290 TraceCheckUtils]: 55: Hoare triple {5857#false} ~cond := #in~cond; {5857#false} is VALID [2022-04-07 13:02:15,428 INFO L290 TraceCheckUtils]: 56: Hoare triple {5857#false} assume !(0 == ~cond); {5857#false} is VALID [2022-04-07 13:02:15,428 INFO L290 TraceCheckUtils]: 57: Hoare triple {5857#false} assume true; {5857#false} is VALID [2022-04-07 13:02:15,428 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {5857#false} {5857#false} #79#return; {5857#false} is VALID [2022-04-07 13:02:15,444 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-07 13:02:15,445 INFO L290 TraceCheckUtils]: 60: Hoare triple {5857#false} ~cond := #in~cond; {5857#false} is VALID [2022-04-07 13:02:15,445 INFO L290 TraceCheckUtils]: 61: Hoare triple {5857#false} assume 0 == ~cond; {5857#false} is VALID [2022-04-07 13:02:15,445 INFO L290 TraceCheckUtils]: 62: Hoare triple {5857#false} assume !false; {5857#false} is VALID [2022-04-07 13:02:15,445 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-07 13:02:15,445 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 13:02:15,665 INFO L290 TraceCheckUtils]: 62: Hoare triple {5857#false} assume !false; {5857#false} is VALID [2022-04-07 13:02:15,665 INFO L290 TraceCheckUtils]: 61: Hoare triple {5857#false} assume 0 == ~cond; {5857#false} is VALID [2022-04-07 13:02:15,665 INFO L290 TraceCheckUtils]: 60: Hoare triple {5857#false} ~cond := #in~cond; {5857#false} is VALID [2022-04-07 13:02:15,665 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-07 13:02:15,665 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {5856#true} {5857#false} #79#return; {5857#false} is VALID [2022-04-07 13:02:15,665 INFO L290 TraceCheckUtils]: 57: Hoare triple {5856#true} assume true; {5856#true} is VALID [2022-04-07 13:02:15,666 INFO L290 TraceCheckUtils]: 56: Hoare triple {5856#true} assume !(0 == ~cond); {5856#true} is VALID [2022-04-07 13:02:15,666 INFO L290 TraceCheckUtils]: 55: Hoare triple {5856#true} ~cond := #in~cond; {5856#true} is VALID [2022-04-07 13:02:15,666 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-07 13:02:15,666 INFO L290 TraceCheckUtils]: 53: Hoare triple {5857#false} assume !!(#t~post6 < 5);havoc #t~post6; {5857#false} is VALID [2022-04-07 13:02:15,666 INFO L290 TraceCheckUtils]: 52: Hoare triple {5857#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5857#false} is VALID [2022-04-07 13:02:15,666 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-07 13:02:15,667 INFO L290 TraceCheckUtils]: 50: Hoare triple {6087#(< |main_#t~post7| 5)} assume !(#t~post7 < 5);havoc #t~post7; {5857#false} is VALID [2022-04-07 13:02:15,667 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-07 13:02:15,668 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-07 13:02:15,668 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {5856#true} {6091#(< ~counter~0 5)} #89#return; {6091#(< ~counter~0 5)} is VALID [2022-04-07 13:02:15,668 INFO L290 TraceCheckUtils]: 46: Hoare triple {5856#true} assume true; {5856#true} is VALID [2022-04-07 13:02:15,668 INFO L290 TraceCheckUtils]: 45: Hoare triple {5856#true} assume !(0 == ~cond); {5856#true} is VALID [2022-04-07 13:02:15,668 INFO L290 TraceCheckUtils]: 44: Hoare triple {5856#true} ~cond := #in~cond; {5856#true} is VALID [2022-04-07 13:02:15,668 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-07 13:02:15,668 INFO L290 TraceCheckUtils]: 42: Hoare triple {6091#(< ~counter~0 5)} assume !!(~r~0 >= 2 * ~b~0); {6091#(< ~counter~0 5)} is VALID [2022-04-07 13:02:15,669 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {5856#true} {6091#(< ~counter~0 5)} #87#return; {6091#(< ~counter~0 5)} is VALID [2022-04-07 13:02:15,669 INFO L290 TraceCheckUtils]: 40: Hoare triple {5856#true} assume true; {5856#true} is VALID [2022-04-07 13:02:15,669 INFO L290 TraceCheckUtils]: 39: Hoare triple {5856#true} assume !(0 == ~cond); {5856#true} is VALID [2022-04-07 13:02:15,669 INFO L290 TraceCheckUtils]: 38: Hoare triple {5856#true} ~cond := #in~cond; {5856#true} is VALID [2022-04-07 13:02:15,669 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-07 13:02:15,670 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {5856#true} {6091#(< ~counter~0 5)} #85#return; {6091#(< ~counter~0 5)} is VALID [2022-04-07 13:02:15,670 INFO L290 TraceCheckUtils]: 35: Hoare triple {5856#true} assume true; {5856#true} is VALID [2022-04-07 13:02:15,670 INFO L290 TraceCheckUtils]: 34: Hoare triple {5856#true} assume !(0 == ~cond); {5856#true} is VALID [2022-04-07 13:02:15,670 INFO L290 TraceCheckUtils]: 33: Hoare triple {5856#true} ~cond := #in~cond; {5856#true} is VALID [2022-04-07 13:02:15,670 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-07 13:02:15,670 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {5856#true} {6091#(< ~counter~0 5)} #83#return; {6091#(< ~counter~0 5)} is VALID [2022-04-07 13:02:15,670 INFO L290 TraceCheckUtils]: 30: Hoare triple {5856#true} assume true; {5856#true} is VALID [2022-04-07 13:02:15,670 INFO L290 TraceCheckUtils]: 29: Hoare triple {5856#true} assume !(0 == ~cond); {5856#true} is VALID [2022-04-07 13:02:15,670 INFO L290 TraceCheckUtils]: 28: Hoare triple {5856#true} ~cond := #in~cond; {5856#true} is VALID [2022-04-07 13:02:15,671 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-07 13:02:15,675 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-07 13:02:15,675 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-07 13:02:15,676 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-07 13:02:15,676 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5856#true} {6164#(< ~counter~0 4)} #81#return; {6164#(< ~counter~0 4)} is VALID [2022-04-07 13:02:15,676 INFO L290 TraceCheckUtils]: 22: Hoare triple {5856#true} assume true; {5856#true} is VALID [2022-04-07 13:02:15,676 INFO L290 TraceCheckUtils]: 21: Hoare triple {5856#true} assume !(0 == ~cond); {5856#true} is VALID [2022-04-07 13:02:15,676 INFO L290 TraceCheckUtils]: 20: Hoare triple {5856#true} ~cond := #in~cond; {5856#true} is VALID [2022-04-07 13:02:15,676 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-07 13:02:15,677 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {5856#true} {6164#(< ~counter~0 4)} #79#return; {6164#(< ~counter~0 4)} is VALID [2022-04-07 13:02:15,677 INFO L290 TraceCheckUtils]: 17: Hoare triple {5856#true} assume true; {5856#true} is VALID [2022-04-07 13:02:15,677 INFO L290 TraceCheckUtils]: 16: Hoare triple {5856#true} assume !(0 == ~cond); {5856#true} is VALID [2022-04-07 13:02:15,677 INFO L290 TraceCheckUtils]: 15: Hoare triple {5856#true} ~cond := #in~cond; {5856#true} is VALID [2022-04-07 13:02:15,677 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-07 13:02:15,677 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-07 13:02:15,678 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-07 13:02:15,678 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-07 13:02:15,678 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5856#true} {5938#(<= ~counter~0 2)} #77#return; {5938#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:15,678 INFO L290 TraceCheckUtils]: 9: Hoare triple {5856#true} assume true; {5856#true} is VALID [2022-04-07 13:02:15,678 INFO L290 TraceCheckUtils]: 8: Hoare triple {5856#true} assume !(0 == ~cond); {5856#true} is VALID [2022-04-07 13:02:15,679 INFO L290 TraceCheckUtils]: 7: Hoare triple {5856#true} ~cond := #in~cond; {5856#true} is VALID [2022-04-07 13:02:15,679 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-07 13:02:15,679 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-07 13:02:15,679 INFO L272 TraceCheckUtils]: 4: Hoare triple {5938#(<= ~counter~0 2)} call #t~ret8 := main(); {5938#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:15,679 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5938#(<= ~counter~0 2)} {5856#true} #93#return; {5938#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:15,680 INFO L290 TraceCheckUtils]: 2: Hoare triple {5938#(<= ~counter~0 2)} assume true; {5938#(<= ~counter~0 2)} is VALID [2022-04-07 13:02:15,680 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-07 13:02:15,680 INFO L272 TraceCheckUtils]: 0: Hoare triple {5856#true} call ULTIMATE.init(); {5856#true} is VALID [2022-04-07 13:02:15,680 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-07 13:02:15,680 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:02:15,681 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2009705242] [2022-04-07 13:02:15,681 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:02:15,681 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1647253930] [2022-04-07 13:02:15,681 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1647253930] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 13:02:15,681 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 13:02:15,681 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 9 [2022-04-07 13:02:15,681 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2032272328] [2022-04-07 13:02:15,681 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 13:02:15,682 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-07 13:02:15,682 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:02:15,682 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-07 13:02:15,742 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-07 13:02:15,742 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-07 13:02:15,742 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:02:15,743 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-07 13:02:15,743 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-04-07 13:02:15,743 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-07 13:02:16,077 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:16,077 INFO L93 Difference]: Finished difference Result 225 states and 268 transitions. [2022-04-07 13:02:16,077 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-07 13:02:16,078 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-07 13:02:16,078 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:02:16,078 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-07 13:02:16,081 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 148 transitions. [2022-04-07 13:02:16,081 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-07 13:02:16,083 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 148 transitions. [2022-04-07 13:02:16,083 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 148 transitions. [2022-04-07 13:02:16,177 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-07 13:02:16,180 INFO L225 Difference]: With dead ends: 225 [2022-04-07 13:02:16,180 INFO L226 Difference]: Without dead ends: 164 [2022-04-07 13:02:16,180 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-07 13:02:16,181 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-07 13:02:16,181 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-07 13:02:16,181 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 164 states. [2022-04-07 13:02:16,268 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 164 to 162. [2022-04-07 13:02:16,268 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:02:16,269 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-07 13:02:16,269 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-07 13:02:16,269 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-07 13:02:16,272 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:16,272 INFO L93 Difference]: Finished difference Result 164 states and 188 transitions. [2022-04-07 13:02:16,272 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 188 transitions. [2022-04-07 13:02:16,272 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:02:16,272 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:02:16,273 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-07 13:02:16,273 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-07 13:02:16,275 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:16,275 INFO L93 Difference]: Finished difference Result 164 states and 188 transitions. [2022-04-07 13:02:16,275 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 188 transitions. [2022-04-07 13:02:16,276 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:02:16,276 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:02:16,276 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:02:16,276 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:02:16,276 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-07 13:02:16,279 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 162 states to 162 states and 187 transitions. [2022-04-07 13:02:16,279 INFO L78 Accepts]: Start accepts. Automaton has 162 states and 187 transitions. Word has length 63 [2022-04-07 13:02:16,279 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:02:16,279 INFO L478 AbstractCegarLoop]: Abstraction has 162 states and 187 transitions. [2022-04-07 13:02:16,279 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-07 13:02:16,279 INFO L276 IsEmpty]: Start isEmpty. Operand 162 states and 187 transitions. [2022-04-07 13:02:16,280 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-04-07 13:02:16,280 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 13:02:16,280 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-07 13:02:16,317 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-07 13:02:16,489 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-07 13:02:16,489 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 13:02:16,490 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 13:02:16,490 INFO L85 PathProgramCache]: Analyzing trace with hash 1777426592, now seen corresponding path program 1 times [2022-04-07 13:02:16,490 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 13:02:16,490 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [117789871] [2022-04-07 13:02:16,490 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:02:16,490 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 13:02:16,500 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 13:02:16,501 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [206043601] [2022-04-07 13:02:16,501 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 13:02:16,501 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 13:02:16,501 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 13:02:16,502 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-07 13:02:16,502 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-07 13:02:16,544 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:02:16,545 INFO L263 TraceCheckSpWp]: Trace formula consists of 206 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-07 13:02:16,555 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 13:02:16,558 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 13:02:16,912 INFO L272 TraceCheckUtils]: 0: Hoare triple {7127#true} call ULTIMATE.init(); {7127#true} is VALID [2022-04-07 13:02:16,912 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-07 13:02:16,912 INFO L290 TraceCheckUtils]: 2: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:16,912 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7127#true} {7127#true} #93#return; {7127#true} is VALID [2022-04-07 13:02:16,912 INFO L272 TraceCheckUtils]: 4: Hoare triple {7127#true} call #t~ret8 := main(); {7127#true} is VALID [2022-04-07 13:02:16,912 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-07 13:02:16,912 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-07 13:02:16,912 INFO L290 TraceCheckUtils]: 7: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-07 13:02:16,912 INFO L290 TraceCheckUtils]: 8: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-07 13:02:16,912 INFO L290 TraceCheckUtils]: 9: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:16,912 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7127#true} {7127#true} #77#return; {7127#true} is VALID [2022-04-07 13:02:16,913 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-07 13:02:16,913 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-07 13:02:16,913 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-07 13:02:16,914 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-07 13:02:16,914 INFO L290 TraceCheckUtils]: 15: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-07 13:02:16,914 INFO L290 TraceCheckUtils]: 16: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-07 13:02:16,914 INFO L290 TraceCheckUtils]: 17: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:16,914 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-07 13:02:16,914 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-07 13:02:16,914 INFO L290 TraceCheckUtils]: 20: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-07 13:02:16,914 INFO L290 TraceCheckUtils]: 21: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-07 13:02:16,914 INFO L290 TraceCheckUtils]: 22: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:16,915 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-07 13:02:16,915 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-07 13:02:16,916 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-07 13:02:16,916 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-07 13:02:16,916 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-07 13:02:16,916 INFO L290 TraceCheckUtils]: 28: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-07 13:02:16,916 INFO L290 TraceCheckUtils]: 29: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-07 13:02:16,916 INFO L290 TraceCheckUtils]: 30: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:16,917 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-07 13:02:16,917 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-07 13:02:16,917 INFO L290 TraceCheckUtils]: 33: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-07 13:02:16,917 INFO L290 TraceCheckUtils]: 34: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-07 13:02:16,918 INFO L290 TraceCheckUtils]: 35: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:16,918 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-07 13:02:16,918 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-07 13:02:16,918 INFO L290 TraceCheckUtils]: 38: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-07 13:02:16,918 INFO L290 TraceCheckUtils]: 39: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-07 13:02:16,918 INFO L290 TraceCheckUtils]: 40: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:16,919 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-07 13:02:16,919 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-07 13:02:16,919 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-07 13:02:16,919 INFO L290 TraceCheckUtils]: 44: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-07 13:02:16,919 INFO L290 TraceCheckUtils]: 45: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-07 13:02:16,919 INFO L290 TraceCheckUtils]: 46: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:16,920 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-07 13:02:16,920 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-07 13:02:16,921 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-07 13:02:16,921 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-07 13:02:16,921 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-07 13:02:16,921 INFO L290 TraceCheckUtils]: 52: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-07 13:02:16,921 INFO L290 TraceCheckUtils]: 53: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-07 13:02:16,921 INFO L290 TraceCheckUtils]: 54: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:16,927 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-07 13:02:16,927 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-07 13:02:16,928 INFO L290 TraceCheckUtils]: 57: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-07 13:02:16,928 INFO L290 TraceCheckUtils]: 58: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-07 13:02:16,928 INFO L290 TraceCheckUtils]: 59: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:16,928 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-07 13:02:16,928 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-07 13:02:16,928 INFO L290 TraceCheckUtils]: 62: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-07 13:02:16,928 INFO L290 TraceCheckUtils]: 63: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-07 13:02:16,928 INFO L290 TraceCheckUtils]: 64: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:16,929 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-07 13:02:16,929 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-07 13:02:16,930 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-07 13:02:16,930 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-07 13:02:16,931 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-07 13:02:16,931 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-07 13:02:16,931 INFO L290 TraceCheckUtils]: 71: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-07 13:02:16,931 INFO L290 TraceCheckUtils]: 72: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-07 13:02:16,931 INFO L290 TraceCheckUtils]: 73: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:16,931 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-07 13:02:16,932 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-07 13:02:16,932 INFO L290 TraceCheckUtils]: 76: Hoare triple {7361#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7365#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:02:16,933 INFO L290 TraceCheckUtils]: 77: Hoare triple {7365#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7128#false} is VALID [2022-04-07 13:02:16,933 INFO L290 TraceCheckUtils]: 78: Hoare triple {7128#false} assume !false; {7128#false} is VALID [2022-04-07 13:02:16,933 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-07 13:02:16,933 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 13:02:17,236 INFO L290 TraceCheckUtils]: 78: Hoare triple {7128#false} assume !false; {7128#false} is VALID [2022-04-07 13:02:17,236 INFO L290 TraceCheckUtils]: 77: Hoare triple {7365#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7128#false} is VALID [2022-04-07 13:02:17,237 INFO L290 TraceCheckUtils]: 76: Hoare triple {7361#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7365#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 13:02:17,237 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-07 13:02:17,238 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-07 13:02:17,238 INFO L290 TraceCheckUtils]: 73: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:17,238 INFO L290 TraceCheckUtils]: 72: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-07 13:02:17,238 INFO L290 TraceCheckUtils]: 71: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-07 13:02:17,238 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-07 13:02:17,238 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-07 13:02:17,239 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-07 13:02:17,246 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-07 13:02:17,246 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-07 13:02:17,247 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-07 13:02:17,247 INFO L290 TraceCheckUtils]: 64: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:17,247 INFO L290 TraceCheckUtils]: 63: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-07 13:02:17,247 INFO L290 TraceCheckUtils]: 62: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-07 13:02:17,247 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-07 13:02:17,247 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-07 13:02:17,247 INFO L290 TraceCheckUtils]: 59: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:17,247 INFO L290 TraceCheckUtils]: 58: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-07 13:02:17,248 INFO L290 TraceCheckUtils]: 57: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-07 13:02:17,248 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-07 13:02:17,248 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-07 13:02:17,248 INFO L290 TraceCheckUtils]: 54: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:17,248 INFO L290 TraceCheckUtils]: 53: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-07 13:02:17,248 INFO L290 TraceCheckUtils]: 52: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-07 13:02:17,248 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-07 13:02:17,249 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-07 13:02:17,249 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-07 13:02:17,251 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-07 13:02:17,252 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-07 13:02:17,252 INFO L290 TraceCheckUtils]: 46: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:17,252 INFO L290 TraceCheckUtils]: 45: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-07 13:02:17,252 INFO L290 TraceCheckUtils]: 44: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-07 13:02:17,252 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-07 13:02:17,252 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-07 13:02:17,253 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-07 13:02:17,253 INFO L290 TraceCheckUtils]: 40: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:17,253 INFO L290 TraceCheckUtils]: 39: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-07 13:02:17,253 INFO L290 TraceCheckUtils]: 38: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-07 13:02:17,253 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-07 13:02:17,254 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-07 13:02:17,254 INFO L290 TraceCheckUtils]: 35: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:17,254 INFO L290 TraceCheckUtils]: 34: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-07 13:02:17,254 INFO L290 TraceCheckUtils]: 33: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-07 13:02:17,254 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-07 13:02:17,254 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-07 13:02:17,255 INFO L290 TraceCheckUtils]: 30: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:17,255 INFO L290 TraceCheckUtils]: 29: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-07 13:02:17,255 INFO L290 TraceCheckUtils]: 28: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-07 13:02:17,255 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-07 13:02:17,255 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-07 13:02:17,255 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-07 13:02:17,256 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-07 13:02:17,256 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-07 13:02:17,256 INFO L290 TraceCheckUtils]: 22: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:17,256 INFO L290 TraceCheckUtils]: 21: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-07 13:02:17,256 INFO L290 TraceCheckUtils]: 20: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-07 13:02:17,256 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-07 13:02:17,257 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-07 13:02:17,257 INFO L290 TraceCheckUtils]: 17: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:17,257 INFO L290 TraceCheckUtils]: 16: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-07 13:02:17,257 INFO L290 TraceCheckUtils]: 15: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-07 13:02:17,257 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-07 13:02:17,257 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-07 13:02:17,258 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-07 13:02:17,258 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-07 13:02:17,258 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7127#true} {7127#true} #77#return; {7127#true} is VALID [2022-04-07 13:02:17,258 INFO L290 TraceCheckUtils]: 9: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:17,258 INFO L290 TraceCheckUtils]: 8: Hoare triple {7127#true} assume !(0 == ~cond); {7127#true} is VALID [2022-04-07 13:02:17,258 INFO L290 TraceCheckUtils]: 7: Hoare triple {7127#true} ~cond := #in~cond; {7127#true} is VALID [2022-04-07 13:02:17,258 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-07 13:02:17,258 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-07 13:02:17,258 INFO L272 TraceCheckUtils]: 4: Hoare triple {7127#true} call #t~ret8 := main(); {7127#true} is VALID [2022-04-07 13:02:17,259 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7127#true} {7127#true} #93#return; {7127#true} is VALID [2022-04-07 13:02:17,259 INFO L290 TraceCheckUtils]: 2: Hoare triple {7127#true} assume true; {7127#true} is VALID [2022-04-07 13:02:17,259 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-07 13:02:17,259 INFO L272 TraceCheckUtils]: 0: Hoare triple {7127#true} call ULTIMATE.init(); {7127#true} is VALID [2022-04-07 13:02:17,259 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-07 13:02:17,259 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 13:02:17,259 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [117789871] [2022-04-07 13:02:17,259 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 13:02:17,259 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [206043601] [2022-04-07 13:02:17,259 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [206043601] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 13:02:17,259 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 13:02:17,259 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7] total 11 [2022-04-07 13:02:17,260 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1950065351] [2022-04-07 13:02:17,260 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 13:02:17,260 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-07 13:02:17,260 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 13:02:17,260 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-07 13:02:17,327 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-07 13:02:17,327 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-07 13:02:17,327 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 13:02:17,327 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-07 13:02:17,327 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=29, Invalid=81, Unknown=0, NotChecked=0, Total=110 [2022-04-07 13:02:17,328 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-07 13:02:18,614 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:18,615 INFO L93 Difference]: Finished difference Result 189 states and 221 transitions. [2022-04-07 13:02:18,615 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-07 13:02:18,615 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-07 13:02:18,615 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 13:02:18,615 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-07 13:02:18,616 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 117 transitions. [2022-04-07 13:02:18,616 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-07 13:02:18,618 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 117 transitions. [2022-04-07 13:02:18,618 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 117 transitions. [2022-04-07 13:02:18,750 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-07 13:02:18,750 INFO L225 Difference]: With dead ends: 189 [2022-04-07 13:02:18,750 INFO L226 Difference]: Without dead ends: 0 [2022-04-07 13:02:18,751 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-07 13:02:18,751 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-07 13:02:18,751 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-07 13:02:18,752 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-07 13:02:18,752 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-07 13:02:18,752 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 13:02:18,752 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-07 13:02:18,752 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-07 13:02:18,752 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-07 13:02:18,752 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:18,752 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 13:02:18,752 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 13:02:18,752 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:02:18,752 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:02:18,752 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-07 13:02:18,753 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-07 13:02:18,753 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 13:02:18,753 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 13:02:18,753 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 13:02:18,753 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:02:18,753 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 13:02:18,753 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 13:02:18,753 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 13:02:18,753 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-07 13:02:18,753 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-07 13:02:18,753 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 79 [2022-04-07 13:02:18,753 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 13:02:18,753 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-07 13:02:18,753 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-07 13:02:18,754 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 13:02:18,754 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 13:02:18,755 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-07 13:02:18,774 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Ended with exit code 0 [2022-04-07 13:02:18,971 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-07 13:02:18,973 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-07 13:02:19,529 INFO L882 garLoopResultBuilder]: For program point reach_errorEXIT(line 8) no Hoare annotation was computed. [2022-04-07 13:02:19,529 INFO L882 garLoopResultBuilder]: For program point reach_errorENTRY(line 8) no Hoare annotation was computed. [2022-04-07 13:02:19,529 INFO L882 garLoopResultBuilder]: For program point reach_errorFINAL(line 8) no Hoare annotation was computed. [2022-04-07 13:02:19,529 INFO L885 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 11 13) the Hoare annotation is: true [2022-04-07 13:02:19,529 INFO L882 garLoopResultBuilder]: For program point L12(line 12) no Hoare annotation was computed. [2022-04-07 13:02:19,529 INFO L882 garLoopResultBuilder]: For program point L12-2(lines 11 13) no Hoare annotation was computed. [2022-04-07 13:02:19,529 INFO L882 garLoopResultBuilder]: For program point assume_abort_if_notEXIT(lines 11 13) no Hoare annotation was computed. [2022-04-07 13:02:19,529 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-07 13:02:19,529 INFO L882 garLoopResultBuilder]: For program point mainEXIT(lines 23 65) no Hoare annotation was computed. [2022-04-07 13:02:19,530 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-07 13:02:19,530 INFO L882 garLoopResultBuilder]: For program point L54-1(line 54) no Hoare annotation was computed. [2022-04-07 13:02:19,530 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-07 13:02:19,530 INFO L882 garLoopResultBuilder]: For program point L46-1(lines 46 58) no Hoare annotation was computed. [2022-04-07 13:02:19,530 INFO L882 garLoopResultBuilder]: For program point mainFINAL(lines 23 65) no Hoare annotation was computed. [2022-04-07 13:02:19,530 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-07 13:02:19,530 INFO L882 garLoopResultBuilder]: For program point L46-4(lines 46 58) no Hoare annotation was computed. [2022-04-07 13:02:19,530 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-07 13:02:19,530 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-07 13:02:19,530 INFO L882 garLoopResultBuilder]: For program point L63(line 63) no Hoare annotation was computed. [2022-04-07 13:02:19,530 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-07 13:02:19,530 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-07 13:02:19,530 INFO L882 garLoopResultBuilder]: For program point L30-1(line 30) no Hoare annotation was computed. [2022-04-07 13:02:19,530 INFO L882 garLoopResultBuilder]: For program point L49(lines 46 58) no Hoare annotation was computed. [2022-04-07 13:02:19,530 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-07 13:02:19,530 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-07 13:02:19,531 INFO L882 garLoopResultBuilder]: For program point L39(lines 37 61) no Hoare annotation was computed. [2022-04-07 13:02:19,531 INFO L882 garLoopResultBuilder]: For program point L37-1(lines 37 61) no Hoare annotation was computed. [2022-04-07 13:02:19,531 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-07 13:02:19,531 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2022-04-07 13:02:19,531 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-07 13:02:19,531 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2022-04-07 13:02:19,531 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-04-07 13:02:19,531 INFO L878 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: (<= ~counter~0 0) [2022-04-07 13:02:19,531 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-07 13:02:19,531 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-04-07 13:02:19,531 INFO L882 garLoopResultBuilder]: For program point L16(lines 16 17) no Hoare annotation was computed. [2022-04-07 13:02:19,531 INFO L882 garLoopResultBuilder]: For program point L15(lines 15 18) no Hoare annotation was computed. [2022-04-07 13:02:19,531 INFO L885 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 14 20) the Hoare annotation is: true [2022-04-07 13:02:19,531 INFO L882 garLoopResultBuilder]: For program point L15-2(lines 14 20) no Hoare annotation was computed. [2022-04-07 13:02:19,531 INFO L882 garLoopResultBuilder]: For program point __VERIFIER_assertEXIT(lines 14 20) no Hoare annotation was computed. [2022-04-07 13:02:19,531 INFO L882 garLoopResultBuilder]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 17) no Hoare annotation was computed. [2022-04-07 13:02:19,533 INFO L719 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 13:02:19,534 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-07 13:02:19,536 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-07 13:02:19,536 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-07 13:02:19,545 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-07 13:02:19,546 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-07 13:02:19,546 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-07 13:02:19,546 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-07 13:02:19,546 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-07 13:02:19,547 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-07 13:02:19,547 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-07 13:02:19,547 WARN L170 areAnnotationChecker]: L30-1 has no Hoare annotation [2022-04-07 13:02:19,547 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-07 13:02:19,547 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-07 13:02:19,547 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-07 13:02:19,547 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-07 13:02:19,547 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-04-07 13:02:19,547 WARN L170 areAnnotationChecker]: L30-1 has no Hoare annotation [2022-04-07 13:02:19,547 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-07 13:02:19,547 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-07 13:02:19,547 WARN L170 areAnnotationChecker]: L15-2 has no Hoare annotation [2022-04-07 13:02:19,547 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-07 13:02:19,548 WARN L170 areAnnotationChecker]: L37-1 has no Hoare annotation [2022-04-07 13:02:19,548 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 13:02:19,548 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 13:02:19,548 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 13:02:19,548 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 13:02:19,548 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 13:02:19,548 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 13:02:19,548 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-07 13:02:19,548 WARN L170 areAnnotationChecker]: L63 has no Hoare annotation [2022-04-07 13:02:19,548 WARN L170 areAnnotationChecker]: L37-1 has no Hoare annotation [2022-04-07 13:02:19,548 WARN L170 areAnnotationChecker]: L37-1 has no Hoare annotation [2022-04-07 13:02:19,548 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-07 13:02:19,548 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-07 13:02:19,548 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-07 13:02:19,548 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2022-04-07 13:02:19,548 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2022-04-07 13:02:19,548 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2022-04-07 13:02:19,548 WARN L170 areAnnotationChecker]: L54-1 has no Hoare annotation [2022-04-07 13:02:19,548 WARN L170 areAnnotationChecker]: L63 has no Hoare annotation [2022-04-07 13:02:19,548 WARN L170 areAnnotationChecker]: L46-4 has no Hoare annotation [2022-04-07 13:02:19,549 WARN L170 areAnnotationChecker]: L46-1 has no Hoare annotation [2022-04-07 13:02:19,549 WARN L170 areAnnotationChecker]: L46-4 has no Hoare annotation [2022-04-07 13:02:19,549 WARN L170 areAnnotationChecker]: L54-1 has no Hoare annotation [2022-04-07 13:02:19,549 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-07 13:02:19,549 WARN L170 areAnnotationChecker]: L46-1 has no Hoare annotation [2022-04-07 13:02:19,549 WARN L170 areAnnotationChecker]: L46-1 has no Hoare annotation [2022-04-07 13:02:19,549 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-07 13:02:19,549 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-07 13:02:19,555 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 01:02:19 BoogieIcfgContainer [2022-04-07 13:02:19,555 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-07 13:02:19,556 INFO L158 Benchmark]: Toolchain (without parser) took 71719.80ms. Allocated memory was 177.2MB in the beginning and 215.0MB in the end (delta: 37.7MB). Free memory was 127.8MB in the beginning and 81.2MB in the end (delta: 46.5MB). Peak memory consumption was 85.3MB. Max. memory is 8.0GB. [2022-04-07 13:02:19,556 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 177.2MB. Free memory is still 144.5MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-07 13:02:19,556 INFO L158 Benchmark]: CACSL2BoogieTranslator took 182.30ms. Allocated memory is still 177.2MB. Free memory was 127.6MB in the beginning and 152.5MB in the end (delta: -24.9MB). Peak memory consumption was 12.4MB. Max. memory is 8.0GB. [2022-04-07 13:02:19,556 INFO L158 Benchmark]: Boogie Preprocessor took 33.47ms. Allocated memory is still 177.2MB. Free memory was 152.5MB in the beginning and 151.0MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-07 13:02:19,557 INFO L158 Benchmark]: RCFGBuilder took 254.15ms. Allocated memory is still 177.2MB. Free memory was 151.0MB in the beginning and 138.9MB in the end (delta: 12.1MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-07 13:02:19,557 INFO L158 Benchmark]: TraceAbstraction took 71237.58ms. Allocated memory was 177.2MB in the beginning and 215.0MB in the end (delta: 37.7MB). Free memory was 138.4MB in the beginning and 81.2MB in the end (delta: 57.1MB). Peak memory consumption was 95.9MB. Max. memory is 8.0GB. [2022-04-07 13:02:19,558 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 177.2MB. Free memory is still 144.5MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 182.30ms. Allocated memory is still 177.2MB. Free memory was 127.6MB in the beginning and 152.5MB in the end (delta: -24.9MB). Peak memory consumption was 12.4MB. Max. memory is 8.0GB. * Boogie Preprocessor took 33.47ms. Allocated memory is still 177.2MB. Free memory was 152.5MB in the beginning and 151.0MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 254.15ms. Allocated memory is still 177.2MB. Free memory was 151.0MB in the beginning and 138.9MB in the end (delta: 12.1MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * TraceAbstraction took 71237.58ms. Allocated memory was 177.2MB in the beginning and 215.0MB in the end (delta: 37.7MB). Free memory was 138.4MB in the beginning and 81.2MB in the end (delta: 57.1MB). Peak memory consumption was 95.9MB. 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: 71.2s, OverallIterations: 12, TraceHistogramMax: 11, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 5.1s, 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, 61.5s 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-07 13:02:19,576 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...