/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_valuebound20.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 12:17:03,516 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 12:17:03,518 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 12:17:03,572 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 12:17:03,573 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 12:17:03,575 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 12:17:03,578 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 12:17:03,582 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 12:17:03,584 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 12:17:03,586 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 12:17:03,586 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 12:17:03,587 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 12:17:03,587 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 12:17:03,588 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 12:17:03,589 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 12:17:03,590 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 12:17:03,590 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 12:17:03,591 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 12:17:03,592 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 12:17:03,593 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 12:17:03,594 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 12:17:03,598 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 12:17:03,600 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 12:17:03,602 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 12:17:03,604 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 12:17:03,610 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 12:17:03,610 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 12:17:03,610 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 12:17:03,611 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 12:17:03,611 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 12:17:03,612 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 12:17:03,612 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 12:17:03,613 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 12:17:03,614 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 12:17:03,614 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 12:17:03,615 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 12:17:03,615 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 12:17:03,616 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 12:17:03,616 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 12:17:03,616 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 12:17:03,616 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 12:17:03,618 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 12:17:03,620 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2022-04-27 12:17:03,642 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 12:17:03,643 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 12:17:03,643 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-27 12:17:03,643 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-27 12:17:03,644 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 12:17:03,644 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 12:17:03,644 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 12:17:03,644 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 12:17:03,644 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 12:17:03,645 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 12:17:03,645 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 12:17:03,645 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 12:17:03,645 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 12:17:03,645 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 12:17:03,646 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 12:17:03,646 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 12:17:03,646 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 12:17:03,647 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 12:17:03,647 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 12:17:03,647 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 12:17:03,647 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 12:17:03,647 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 12:17:03,647 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 12:17:03,647 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 12:17:03,647 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 12:17:03,648 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 12:17:03,648 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 12:17:03,648 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 12:17:03,648 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 12:17:03,648 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 12:17:03,648 INFO L138 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2022-04-27 12:17:03,648 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-27 12:17:03,648 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 12:17:03,648 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-27 12:17:03,872 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 12:17:03,893 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 12:17:03,895 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 12:17:03,895 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 12:17:03,896 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 12:17:03,896 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound20.c [2022-04-27 12:17:03,941 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4f4faed1b/3614147c6040441a951bd1e24b0528d2/FLAGc52b5720c [2022-04-27 12:17:04,335 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 12:17:04,336 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound20.c [2022-04-27 12:17:04,341 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4f4faed1b/3614147c6040441a951bd1e24b0528d2/FLAGc52b5720c [2022-04-27 12:17:04,769 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4f4faed1b/3614147c6040441a951bd1e24b0528d2 [2022-04-27 12:17:04,770 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 12:17:04,771 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-27 12:17:04,772 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 12:17:04,772 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 12:17:04,790 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 12:17:04,791 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 12:17:04" (1/1) ... [2022-04-27 12:17:04,792 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@313573f1 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:17:04, skipping insertion in model container [2022-04-27 12:17:04,792 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 12:17:04" (1/1) ... [2022-04-27 12:17:04,797 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 12:17:04,809 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 12:17:04,971 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_valuebound20.c[576,589] [2022-04-27 12:17:04,995 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 12:17:05,002 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 12:17:05,019 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_valuebound20.c[576,589] [2022-04-27 12:17:05,029 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 12:17:05,040 INFO L208 MainTranslator]: Completed translation [2022-04-27 12:17:05,040 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:17:05 WrapperNode [2022-04-27 12:17:05,041 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 12:17:05,041 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 12:17:05,041 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 12:17:05,041 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 12:17:05,049 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:17:05" (1/1) ... [2022-04-27 12:17:05,049 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:17:05" (1/1) ... [2022-04-27 12:17:05,055 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:17:05" (1/1) ... [2022-04-27 12:17:05,055 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:17:05" (1/1) ... [2022-04-27 12:17:05,068 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:17:05" (1/1) ... [2022-04-27 12:17:05,072 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:17:05" (1/1) ... [2022-04-27 12:17:05,072 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:17:05" (1/1) ... [2022-04-27 12:17:05,076 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 12:17:05,077 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 12:17:05,077 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 12:17:05,077 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 12:17:05,079 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:17:05" (1/1) ... [2022-04-27 12:17:05,084 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 12:17:05,092 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:17:05,133 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-27 12:17:05,215 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-27 12:17:05,242 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 12:17:05,243 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 12:17:05,243 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 12:17:05,243 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 12:17:05,245 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 12:17:05,245 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 12:17:05,245 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 12:17:05,245 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 12:17:05,245 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 12:17:05,246 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 12:17:05,246 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 12:17:05,246 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 12:17:05,246 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 12:17:05,246 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 12:17:05,246 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 12:17:05,246 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 12:17:05,246 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 12:17:05,246 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 12:17:05,246 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 12:17:05,246 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 12:17:05,305 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 12:17:05,307 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 12:17:05,470 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 12:17:05,476 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 12:17:05,476 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-27 12:17:05,478 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 12:17:05 BoogieIcfgContainer [2022-04-27 12:17:05,478 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 12:17:05,479 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 12:17:05,479 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 12:17:05,482 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 12:17:05,482 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 12:17:04" (1/3) ... [2022-04-27 12:17:05,483 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1ed94cdb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 12:17:05, skipping insertion in model container [2022-04-27 12:17:05,483 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:17:05" (2/3) ... [2022-04-27 12:17:05,483 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1ed94cdb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 12:17:05, skipping insertion in model container [2022-04-27 12:17:05,483 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 12:17:05" (3/3) ... [2022-04-27 12:17:05,484 INFO L111 eAbstractionObserver]: Analyzing ICFG cohendiv-ll_valuebound20.c [2022-04-27 12:17:05,495 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 12:17:05,496 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 12:17:05,534 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 12:17:05,539 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@b52aeb1, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@7609151a [2022-04-27 12:17:05,539 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 12:17:05,547 INFO L276 IsEmpty]: Start isEmpty. Operand has 39 states, 21 states have (on average 1.4285714285714286) internal successors, (30), 22 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-27 12:17:05,553 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-27 12:17:05,553 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:17:05,553 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:17:05,554 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:17:05,558 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:17:05,558 INFO L85 PathProgramCache]: Analyzing trace with hash -1768835633, now seen corresponding path program 1 times [2022-04-27 12:17:05,566 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:17:05,567 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [219963225] [2022-04-27 12:17:05,567 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:17:05,568 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:17:05,692 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:17:05,753 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 12:17:05,762 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:17:05,775 INFO L290 TraceCheckUtils]: 0: Hoare triple {59#(and (= |#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); {42#true} is VALID [2022-04-27 12:17:05,775 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume true; {42#true} is VALID [2022-04-27 12:17:05,776 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {42#true} {42#true} #98#return; {42#true} is VALID [2022-04-27 12:17:05,776 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 12:17:05,779 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:17:05,784 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-27 12:17:05,784 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-27 12:17:05,785 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-27 12:17:05,785 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {42#true} #78#return; {43#false} is VALID [2022-04-27 12:17:05,785 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-27 12:17:05,787 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:17:05,791 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-27 12:17:05,792 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-27 12:17:05,792 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-27 12:17:05,792 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #80#return; {43#false} is VALID [2022-04-27 12:17:05,793 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-27 12:17:05,799 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:17:05,808 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-27 12:17:05,809 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-27 12:17:05,809 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-27 12:17:05,809 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #82#return; {43#false} is VALID [2022-04-27 12:17:05,810 INFO L272 TraceCheckUtils]: 0: Hoare triple {42#true} call ULTIMATE.init(); {59#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 12:17:05,811 INFO L290 TraceCheckUtils]: 1: Hoare triple {59#(and (= |#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); {42#true} is VALID [2022-04-27 12:17:05,811 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} assume true; {42#true} is VALID [2022-04-27 12:17:05,811 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} #98#return; {42#true} is VALID [2022-04-27 12:17:05,811 INFO L272 TraceCheckUtils]: 4: Hoare triple {42#true} call #t~ret6 := main(); {42#true} is VALID [2022-04-27 12:17:05,811 INFO L290 TraceCheckUtils]: 5: Hoare triple {42#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; {42#true} is VALID [2022-04-27 12:17:05,812 INFO L272 TraceCheckUtils]: 6: Hoare triple {42#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 20 then 1 else 0)); {42#true} is VALID [2022-04-27 12:17:05,812 INFO L290 TraceCheckUtils]: 7: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-27 12:17:05,812 INFO L290 TraceCheckUtils]: 8: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-27 12:17:05,813 INFO L290 TraceCheckUtils]: 9: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-27 12:17:05,813 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {43#false} {42#true} #78#return; {43#false} is VALID [2022-04-27 12:17:05,813 INFO L290 TraceCheckUtils]: 11: Hoare triple {43#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {43#false} is VALID [2022-04-27 12:17:05,813 INFO L272 TraceCheckUtils]: 12: Hoare triple {43#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 20 then 1 else 0)); {42#true} is VALID [2022-04-27 12:17:05,813 INFO L290 TraceCheckUtils]: 13: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-27 12:17:05,817 INFO L290 TraceCheckUtils]: 14: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-27 12:17:05,818 INFO L290 TraceCheckUtils]: 15: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-27 12:17:05,818 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {43#false} {43#false} #80#return; {43#false} is VALID [2022-04-27 12:17:05,818 INFO L272 TraceCheckUtils]: 17: Hoare triple {43#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {42#true} is VALID [2022-04-27 12:17:05,818 INFO L290 TraceCheckUtils]: 18: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-27 12:17:05,819 INFO L290 TraceCheckUtils]: 19: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-27 12:17:05,819 INFO L290 TraceCheckUtils]: 20: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-27 12:17:05,819 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {43#false} {43#false} #82#return; {43#false} is VALID [2022-04-27 12:17:05,820 INFO L290 TraceCheckUtils]: 22: Hoare triple {43#false} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {43#false} is VALID [2022-04-27 12:17:05,820 INFO L290 TraceCheckUtils]: 23: Hoare triple {43#false} assume false; {43#false} is VALID [2022-04-27 12:17:05,820 INFO L272 TraceCheckUtils]: 24: Hoare triple {43#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {43#false} is VALID [2022-04-27 12:17:05,820 INFO L290 TraceCheckUtils]: 25: Hoare triple {43#false} ~cond := #in~cond; {43#false} is VALID [2022-04-27 12:17:05,820 INFO L290 TraceCheckUtils]: 26: Hoare triple {43#false} assume 0 == ~cond; {43#false} is VALID [2022-04-27 12:17:05,821 INFO L290 TraceCheckUtils]: 27: Hoare triple {43#false} assume !false; {43#false} is VALID [2022-04-27 12:17:05,821 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 12:17:05,821 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:17:05,822 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [219963225] [2022-04-27 12:17:05,822 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [219963225] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:17:05,823 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:17:05,823 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 12:17:05,824 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [496966153] [2022-04-27 12:17:05,825 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:17:05,829 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-27 12:17:05,830 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:17:05,832 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 12:17:05,862 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:17:05,863 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 12:17:05,863 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:17:05,886 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 12:17:05,887 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 12:17:05,889 INFO L87 Difference]: Start difference. First operand has 39 states, 21 states have (on average 1.4285714285714286) internal successors, (30), 22 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 12:17:06,039 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:06,039 INFO L93 Difference]: Finished difference Result 71 states and 110 transitions. [2022-04-27 12:17:06,039 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 12:17:06,040 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-27 12:17:06,040 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:17:06,041 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 12:17:06,047 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-27 12:17:06,048 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 12:17:06,051 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-27 12:17:06,052 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 110 transitions. [2022-04-27 12:17:06,148 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:17:06,158 INFO L225 Difference]: With dead ends: 71 [2022-04-27 12:17:06,158 INFO L226 Difference]: Without dead ends: 34 [2022-04-27 12:17:06,161 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 12 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 12:17:06,165 INFO L413 NwaCegarLoop]: 38 mSDtfsCounter, 21 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 12 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 41 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 12 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:17:06,166 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [31 Valid, 41 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 12 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:17:06,177 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-27 12:17:06,200 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2022-04-27 12:17:06,201 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:17:06,201 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:17:06,202 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:17:06,202 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:17:06,207 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:06,207 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-27 12:17:06,207 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-27 12:17:06,208 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:17:06,208 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:17:06,208 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 34 states. [2022-04-27 12:17:06,209 INFO L87 Difference]: Start difference. First operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 34 states. [2022-04-27 12:17:06,212 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:06,212 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-27 12:17:06,213 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-27 12:17:06,213 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:17:06,213 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:17:06,213 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:17:06,214 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:17:06,214 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:17:06,220 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 43 transitions. [2022-04-27 12:17:06,222 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 43 transitions. Word has length 28 [2022-04-27 12:17:06,223 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:17:06,223 INFO L495 AbstractCegarLoop]: Abstraction has 34 states and 43 transitions. [2022-04-27 12:17:06,224 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 12:17:06,225 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-27 12:17:06,226 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-27 12:17:06,226 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:17:06,227 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:17:06,227 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 12:17:06,227 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:17:06,228 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:17:06,228 INFO L85 PathProgramCache]: Analyzing trace with hash 1378913883, now seen corresponding path program 1 times [2022-04-27 12:17:06,228 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:17:06,228 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1769050908] [2022-04-27 12:17:06,228 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:17:06,229 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:17:06,274 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:17:06,274 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2142873040] [2022-04-27 12:17:06,275 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:17:06,275 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:17:06,275 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:17:06,307 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:17:06,335 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-27 12:17:06,364 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:17:06,366 INFO L263 TraceCheckSpWp]: Trace formula consists of 92 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-27 12:17:06,397 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:17:06,401 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:17:06,742 INFO L272 TraceCheckUtils]: 0: Hoare triple {284#true} call ULTIMATE.init(); {284#true} is VALID [2022-04-27 12:17:06,743 INFO L290 TraceCheckUtils]: 1: Hoare triple {284#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3); {284#true} is VALID [2022-04-27 12:17:06,743 INFO L290 TraceCheckUtils]: 2: Hoare triple {284#true} assume true; {284#true} is VALID [2022-04-27 12:17:06,743 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {284#true} {284#true} #98#return; {284#true} is VALID [2022-04-27 12:17:06,743 INFO L272 TraceCheckUtils]: 4: Hoare triple {284#true} call #t~ret6 := main(); {284#true} is VALID [2022-04-27 12:17:06,744 INFO L290 TraceCheckUtils]: 5: Hoare triple {284#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; {284#true} is VALID [2022-04-27 12:17:06,744 INFO L272 TraceCheckUtils]: 6: Hoare triple {284#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 20 then 1 else 0)); {284#true} is VALID [2022-04-27 12:17:06,744 INFO L290 TraceCheckUtils]: 7: Hoare triple {284#true} ~cond := #in~cond; {284#true} is VALID [2022-04-27 12:17:06,744 INFO L290 TraceCheckUtils]: 8: Hoare triple {284#true} assume !(0 == ~cond); {284#true} is VALID [2022-04-27 12:17:06,744 INFO L290 TraceCheckUtils]: 9: Hoare triple {284#true} assume true; {284#true} is VALID [2022-04-27 12:17:06,745 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {284#true} {284#true} #78#return; {284#true} is VALID [2022-04-27 12:17:06,745 INFO L290 TraceCheckUtils]: 11: Hoare triple {284#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {284#true} is VALID [2022-04-27 12:17:06,745 INFO L272 TraceCheckUtils]: 12: Hoare triple {284#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 20 then 1 else 0)); {284#true} is VALID [2022-04-27 12:17:06,747 INFO L290 TraceCheckUtils]: 13: Hoare triple {284#true} ~cond := #in~cond; {328#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:17:06,748 INFO L290 TraceCheckUtils]: 14: Hoare triple {328#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {332#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:17:06,748 INFO L290 TraceCheckUtils]: 15: Hoare triple {332#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {332#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:17:06,749 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {332#(not (= |assume_abort_if_not_#in~cond| 0))} {284#true} #80#return; {339#(and (<= 0 main_~y~0) (<= main_~y~0 20))} is VALID [2022-04-27 12:17:06,749 INFO L272 TraceCheckUtils]: 17: Hoare triple {339#(and (<= 0 main_~y~0) (<= main_~y~0 20))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {284#true} is VALID [2022-04-27 12:17:06,750 INFO L290 TraceCheckUtils]: 18: Hoare triple {284#true} ~cond := #in~cond; {328#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:17:06,750 INFO L290 TraceCheckUtils]: 19: Hoare triple {328#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {332#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:17:06,751 INFO L290 TraceCheckUtils]: 20: Hoare triple {332#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {332#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:17:06,751 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {332#(not (= |assume_abort_if_not_#in~cond| 0))} {339#(and (<= 0 main_~y~0) (<= main_~y~0 20))} #82#return; {355#(and (<= main_~y~0 20) (<= 1 main_~y~0))} is VALID [2022-04-27 12:17:06,752 INFO L290 TraceCheckUtils]: 22: Hoare triple {355#(and (<= main_~y~0 20) (<= 1 main_~y~0))} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {359#(and (= main_~a~0 0) (= main_~b~0 0) (<= main_~y~0 20) (<= 1 main_~y~0))} is VALID [2022-04-27 12:17:06,753 INFO L290 TraceCheckUtils]: 23: Hoare triple {359#(and (= main_~a~0 0) (= main_~b~0 0) (<= main_~y~0 20) (<= 1 main_~y~0))} assume !false; {359#(and (= main_~a~0 0) (= main_~b~0 0) (<= main_~y~0 20) (<= 1 main_~y~0))} is VALID [2022-04-27 12:17:06,754 INFO L272 TraceCheckUtils]: 24: Hoare triple {359#(and (= main_~a~0 0) (= main_~b~0 0) (<= main_~y~0 20) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {366#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:17:06,754 INFO L290 TraceCheckUtils]: 25: Hoare triple {366#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {370#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:17:06,755 INFO L290 TraceCheckUtils]: 26: Hoare triple {370#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {285#false} is VALID [2022-04-27 12:17:06,755 INFO L290 TraceCheckUtils]: 27: Hoare triple {285#false} assume !false; {285#false} is VALID [2022-04-27 12:17:06,756 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 12:17:06,756 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:17:06,756 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:17:06,756 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1769050908] [2022-04-27 12:17:06,756 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:17:06,757 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2142873040] [2022-04-27 12:17:06,757 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2142873040] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:17:06,757 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:17:06,757 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-27 12:17:06,758 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1265143211] [2022-04-27 12:17:06,758 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:17:06,759 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-27 12:17:06,759 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:17:06,759 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 12:17:06,781 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:17:06,782 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 12:17:06,782 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:17:06,782 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 12:17:06,783 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-04-27 12:17:06,783 INFO L87 Difference]: Start difference. First operand 34 states and 43 transitions. Second operand has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 12:17:07,254 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:07,254 INFO L93 Difference]: Finished difference Result 45 states and 56 transitions. [2022-04-27 12:17:07,254 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 12:17:07,255 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-27 12:17:07,255 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:17:07,255 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 12:17:07,258 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 56 transitions. [2022-04-27 12:17:07,258 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 12:17:07,260 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 56 transitions. [2022-04-27 12:17:07,260 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 56 transitions. [2022-04-27 12:17:07,323 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:17:07,325 INFO L225 Difference]: With dead ends: 45 [2022-04-27 12:17:07,325 INFO L226 Difference]: Without dead ends: 43 [2022-04-27 12:17:07,326 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 29 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-27 12:17:07,326 INFO L413 NwaCegarLoop]: 36 mSDtfsCounter, 28 mSDsluCounter, 133 mSDsCounter, 0 mSdLazyCounter, 120 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 37 SdHoareTripleChecker+Valid, 169 SdHoareTripleChecker+Invalid, 128 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 120 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:17:07,327 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [37 Valid, 169 Invalid, 128 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 120 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:17:07,327 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-27 12:17:07,348 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 40. [2022-04-27 12:17:07,348 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:17:07,349 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-27 12:17:07,351 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-27 12:17:07,352 INFO L87 Difference]: Start difference. First operand 43 states. Second operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-27 12:17:07,358 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:07,358 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-27 12:17:07,358 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-27 12:17:07,359 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:17:07,359 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:17:07,360 INFO L74 IsIncluded]: Start isIncluded. First operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 43 states. [2022-04-27 12:17:07,360 INFO L87 Difference]: Start difference. First operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 43 states. [2022-04-27 12:17:07,363 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:07,364 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-27 12:17:07,364 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-27 12:17:07,364 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:17:07,365 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:17:07,365 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:17:07,365 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:17:07,365 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-27 12:17:07,367 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 49 transitions. [2022-04-27 12:17:07,367 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 49 transitions. Word has length 28 [2022-04-27 12:17:07,368 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:17:07,368 INFO L495 AbstractCegarLoop]: Abstraction has 40 states and 49 transitions. [2022-04-27 12:17:07,368 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 12:17:07,368 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 49 transitions. [2022-04-27 12:17:07,369 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-27 12:17:07,369 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:17:07,369 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:17:07,396 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-27 12:17:07,591 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:17:07,592 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:17:07,592 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:17:07,593 INFO L85 PathProgramCache]: Analyzing trace with hash -1928335320, now seen corresponding path program 1 times [2022-04-27 12:17:07,593 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:17:07,593 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [118435830] [2022-04-27 12:17:07,593 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:17:07,593 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:17:07,641 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:17:07,641 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1193406833] [2022-04-27 12:17:07,641 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:17:07,642 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:17:07,642 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:17:07,651 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:17:07,653 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-27 12:17:07,707 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:17:07,708 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-27 12:17:07,718 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:17:07,720 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:17:07,974 INFO L272 TraceCheckUtils]: 0: Hoare triple {595#true} call ULTIMATE.init(); {595#true} is VALID [2022-04-27 12:17:07,974 INFO L290 TraceCheckUtils]: 1: Hoare triple {595#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); {595#true} is VALID [2022-04-27 12:17:07,975 INFO L290 TraceCheckUtils]: 2: Hoare triple {595#true} assume true; {595#true} is VALID [2022-04-27 12:17:07,975 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {595#true} {595#true} #98#return; {595#true} is VALID [2022-04-27 12:17:07,975 INFO L272 TraceCheckUtils]: 4: Hoare triple {595#true} call #t~ret6 := main(); {595#true} is VALID [2022-04-27 12:17:07,975 INFO L290 TraceCheckUtils]: 5: Hoare triple {595#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; {595#true} is VALID [2022-04-27 12:17:07,975 INFO L272 TraceCheckUtils]: 6: Hoare triple {595#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 20 then 1 else 0)); {595#true} is VALID [2022-04-27 12:17:07,975 INFO L290 TraceCheckUtils]: 7: Hoare triple {595#true} ~cond := #in~cond; {595#true} is VALID [2022-04-27 12:17:07,976 INFO L290 TraceCheckUtils]: 8: Hoare triple {595#true} assume !(0 == ~cond); {595#true} is VALID [2022-04-27 12:17:07,976 INFO L290 TraceCheckUtils]: 9: Hoare triple {595#true} assume true; {595#true} is VALID [2022-04-27 12:17:07,976 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {595#true} {595#true} #78#return; {595#true} is VALID [2022-04-27 12:17:07,976 INFO L290 TraceCheckUtils]: 11: Hoare triple {595#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {595#true} is VALID [2022-04-27 12:17:07,976 INFO L272 TraceCheckUtils]: 12: Hoare triple {595#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 20 then 1 else 0)); {595#true} is VALID [2022-04-27 12:17:07,977 INFO L290 TraceCheckUtils]: 13: Hoare triple {595#true} ~cond := #in~cond; {639#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:17:07,978 INFO L290 TraceCheckUtils]: 14: Hoare triple {639#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {643#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:17:07,978 INFO L290 TraceCheckUtils]: 15: Hoare triple {643#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {643#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:17:07,979 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {643#(not (= |assume_abort_if_not_#in~cond| 0))} {595#true} #80#return; {650#(and (<= 0 main_~y~0) (<= main_~y~0 20))} is VALID [2022-04-27 12:17:07,979 INFO L272 TraceCheckUtils]: 17: Hoare triple {650#(and (<= 0 main_~y~0) (<= main_~y~0 20))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {595#true} is VALID [2022-04-27 12:17:07,979 INFO L290 TraceCheckUtils]: 18: Hoare triple {595#true} ~cond := #in~cond; {639#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:17:07,980 INFO L290 TraceCheckUtils]: 19: Hoare triple {639#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {643#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:17:07,980 INFO L290 TraceCheckUtils]: 20: Hoare triple {643#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {643#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:17:07,981 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {643#(not (= |assume_abort_if_not_#in~cond| 0))} {650#(and (<= 0 main_~y~0) (<= main_~y~0 20))} #82#return; {666#(and (<= main_~y~0 20) (<= 1 main_~y~0))} is VALID [2022-04-27 12:17:07,982 INFO L290 TraceCheckUtils]: 22: Hoare triple {666#(and (<= main_~y~0 20) (<= 1 main_~y~0))} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {670#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 20) (<= 1 main_~y~0))} is VALID [2022-04-27 12:17:07,983 INFO L290 TraceCheckUtils]: 23: Hoare triple {670#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 20) (<= 1 main_~y~0))} assume !false; {670#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 20) (<= 1 main_~y~0))} is VALID [2022-04-27 12:17:07,983 INFO L272 TraceCheckUtils]: 24: Hoare triple {670#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 20) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {595#true} is VALID [2022-04-27 12:17:07,983 INFO L290 TraceCheckUtils]: 25: Hoare triple {595#true} ~cond := #in~cond; {595#true} is VALID [2022-04-27 12:17:07,983 INFO L290 TraceCheckUtils]: 26: Hoare triple {595#true} assume !(0 == ~cond); {595#true} is VALID [2022-04-27 12:17:07,983 INFO L290 TraceCheckUtils]: 27: Hoare triple {595#true} assume true; {595#true} is VALID [2022-04-27 12:17:07,984 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {595#true} {670#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 20) (<= 1 main_~y~0))} #84#return; {670#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 20) (<= 1 main_~y~0))} is VALID [2022-04-27 12:17:07,987 INFO L272 TraceCheckUtils]: 29: Hoare triple {670#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 20) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {692#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:17:07,988 INFO L290 TraceCheckUtils]: 30: Hoare triple {692#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {696#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:17:07,988 INFO L290 TraceCheckUtils]: 31: Hoare triple {696#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {596#false} is VALID [2022-04-27 12:17:07,988 INFO L290 TraceCheckUtils]: 32: Hoare triple {596#false} assume !false; {596#false} is VALID [2022-04-27 12:17:07,989 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-27 12:17:07,989 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:17:07,991 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:17:07,991 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [118435830] [2022-04-27 12:17:07,991 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:17:07,991 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1193406833] [2022-04-27 12:17:07,991 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1193406833] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:17:07,991 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:17:07,991 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-27 12:17:07,992 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1604987527] [2022-04-27 12:17:07,992 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:17:07,994 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) Word has length 33 [2022-04-27 12:17:07,994 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:17:07,994 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 12:17:08,034 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:17:08,034 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 12:17:08,034 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:17:08,035 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 12:17:08,035 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-04-27 12:17:08,035 INFO L87 Difference]: Start difference. First operand 40 states and 49 transitions. Second operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 12:17:08,463 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:08,463 INFO L93 Difference]: Finished difference Result 57 states and 72 transitions. [2022-04-27 12:17:08,463 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 12:17:08,464 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) Word has length 33 [2022-04-27 12:17:08,464 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:17:08,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 12:17:08,466 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 69 transitions. [2022-04-27 12:17:08,466 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 12:17:08,468 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 69 transitions. [2022-04-27 12:17:08,468 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 69 transitions. [2022-04-27 12:17:08,530 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:17:08,532 INFO L225 Difference]: With dead ends: 57 [2022-04-27 12:17:08,532 INFO L226 Difference]: Without dead ends: 54 [2022-04-27 12:17:08,532 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 34 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-27 12:17:08,533 INFO L413 NwaCegarLoop]: 39 mSDtfsCounter, 29 mSDsluCounter, 141 mSDsCounter, 0 mSdLazyCounter, 143 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 180 SdHoareTripleChecker+Invalid, 152 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 143 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:17:08,533 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [41 Valid, 180 Invalid, 152 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 143 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:17:08,534 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2022-04-27 12:17:08,555 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 53. [2022-04-27 12:17:08,556 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:17:08,556 INFO L82 GeneralOperation]: Start isEquivalent. First operand 54 states. Second operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-27 12:17:08,557 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-27 12:17:08,557 INFO L87 Difference]: Start difference. First operand 54 states. Second operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-27 12:17:08,560 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:08,560 INFO L93 Difference]: Finished difference Result 54 states and 68 transitions. [2022-04-27 12:17:08,560 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 68 transitions. [2022-04-27 12:17:08,561 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:17:08,561 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:17:08,561 INFO L74 IsIncluded]: Start isIncluded. First operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 54 states. [2022-04-27 12:17:08,562 INFO L87 Difference]: Start difference. First operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 54 states. [2022-04-27 12:17:08,564 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:08,564 INFO L93 Difference]: Finished difference Result 54 states and 68 transitions. [2022-04-27 12:17:08,564 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 68 transitions. [2022-04-27 12:17:08,565 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:17:08,565 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:17:08,565 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:17:08,565 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:17:08,565 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-27 12:17:08,568 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 67 transitions. [2022-04-27 12:17:08,568 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 67 transitions. Word has length 33 [2022-04-27 12:17:08,568 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:17:08,568 INFO L495 AbstractCegarLoop]: Abstraction has 53 states and 67 transitions. [2022-04-27 12:17:08,568 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 12:17:08,568 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 67 transitions. [2022-04-27 12:17:08,569 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-27 12:17:08,569 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:17:08,569 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 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-27 12:17:08,592 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-27 12:17:08,783 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-27 12:17:08,784 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:17:08,784 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:17:08,784 INFO L85 PathProgramCache]: Analyzing trace with hash -1297647068, now seen corresponding path program 1 times [2022-04-27 12:17:08,784 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:17:08,784 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [134575121] [2022-04-27 12:17:08,785 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:17:08,785 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:17:08,805 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:17:08,805 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2068610986] [2022-04-27 12:17:08,806 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:17:08,806 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:17:08,806 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:17:08,815 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:17:08,831 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-27 12:17:08,868 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:17:08,868 INFO L263 TraceCheckSpWp]: Trace formula consists of 116 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 12:17:08,877 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:17:08,878 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:17:09,079 INFO L272 TraceCheckUtils]: 0: Hoare triple {981#true} call ULTIMATE.init(); {981#true} is VALID [2022-04-27 12:17:09,079 INFO L290 TraceCheckUtils]: 1: Hoare triple {981#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); {981#true} is VALID [2022-04-27 12:17:09,079 INFO L290 TraceCheckUtils]: 2: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-27 12:17:09,079 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {981#true} {981#true} #98#return; {981#true} is VALID [2022-04-27 12:17:09,080 INFO L272 TraceCheckUtils]: 4: Hoare triple {981#true} call #t~ret6 := main(); {981#true} is VALID [2022-04-27 12:17:09,080 INFO L290 TraceCheckUtils]: 5: Hoare triple {981#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; {981#true} is VALID [2022-04-27 12:17:09,080 INFO L272 TraceCheckUtils]: 6: Hoare triple {981#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 20 then 1 else 0)); {981#true} is VALID [2022-04-27 12:17:09,080 INFO L290 TraceCheckUtils]: 7: Hoare triple {981#true} ~cond := #in~cond; {981#true} is VALID [2022-04-27 12:17:09,080 INFO L290 TraceCheckUtils]: 8: Hoare triple {981#true} assume !(0 == ~cond); {981#true} is VALID [2022-04-27 12:17:09,080 INFO L290 TraceCheckUtils]: 9: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-27 12:17:09,080 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {981#true} {981#true} #78#return; {981#true} is VALID [2022-04-27 12:17:09,080 INFO L290 TraceCheckUtils]: 11: Hoare triple {981#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {981#true} is VALID [2022-04-27 12:17:09,080 INFO L272 TraceCheckUtils]: 12: Hoare triple {981#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 20 then 1 else 0)); {981#true} is VALID [2022-04-27 12:17:09,080 INFO L290 TraceCheckUtils]: 13: Hoare triple {981#true} ~cond := #in~cond; {981#true} is VALID [2022-04-27 12:17:09,081 INFO L290 TraceCheckUtils]: 14: Hoare triple {981#true} assume !(0 == ~cond); {981#true} is VALID [2022-04-27 12:17:09,081 INFO L290 TraceCheckUtils]: 15: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-27 12:17:09,081 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {981#true} {981#true} #80#return; {981#true} is VALID [2022-04-27 12:17:09,081 INFO L272 TraceCheckUtils]: 17: Hoare triple {981#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {981#true} is VALID [2022-04-27 12:17:09,081 INFO L290 TraceCheckUtils]: 18: Hoare triple {981#true} ~cond := #in~cond; {981#true} is VALID [2022-04-27 12:17:09,081 INFO L290 TraceCheckUtils]: 19: Hoare triple {981#true} assume !(0 == ~cond); {981#true} is VALID [2022-04-27 12:17:09,081 INFO L290 TraceCheckUtils]: 20: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-27 12:17:09,081 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {981#true} {981#true} #82#return; {981#true} is VALID [2022-04-27 12:17:09,081 INFO L290 TraceCheckUtils]: 22: Hoare triple {981#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {981#true} is VALID [2022-04-27 12:17:09,082 INFO L290 TraceCheckUtils]: 23: Hoare triple {981#true} assume !false; {981#true} is VALID [2022-04-27 12:17:09,082 INFO L272 TraceCheckUtils]: 24: Hoare triple {981#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {981#true} is VALID [2022-04-27 12:17:09,082 INFO L290 TraceCheckUtils]: 25: Hoare triple {981#true} ~cond := #in~cond; {981#true} is VALID [2022-04-27 12:17:09,082 INFO L290 TraceCheckUtils]: 26: Hoare triple {981#true} assume !(0 == ~cond); {981#true} is VALID [2022-04-27 12:17:09,082 INFO L290 TraceCheckUtils]: 27: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-27 12:17:09,082 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {981#true} {981#true} #84#return; {981#true} is VALID [2022-04-27 12:17:09,082 INFO L272 TraceCheckUtils]: 29: Hoare triple {981#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {981#true} is VALID [2022-04-27 12:17:09,082 INFO L290 TraceCheckUtils]: 30: Hoare triple {981#true} ~cond := #in~cond; {981#true} is VALID [2022-04-27 12:17:09,082 INFO L290 TraceCheckUtils]: 31: Hoare triple {981#true} assume !(0 == ~cond); {981#true} is VALID [2022-04-27 12:17:09,083 INFO L290 TraceCheckUtils]: 32: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-27 12:17:09,083 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {981#true} {981#true} #86#return; {981#true} is VALID [2022-04-27 12:17:09,083 INFO L290 TraceCheckUtils]: 34: Hoare triple {981#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1088#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-27 12:17:09,083 INFO L290 TraceCheckUtils]: 35: Hoare triple {1088#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} assume !false; {1088#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-27 12:17:09,084 INFO L272 TraceCheckUtils]: 36: Hoare triple {1088#(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)); {1095#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:17:09,084 INFO L290 TraceCheckUtils]: 37: Hoare triple {1095#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1099#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:17:09,085 INFO L290 TraceCheckUtils]: 38: Hoare triple {1099#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {982#false} is VALID [2022-04-27 12:17:09,085 INFO L290 TraceCheckUtils]: 39: Hoare triple {982#false} assume !false; {982#false} is VALID [2022-04-27 12:17:09,085 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-27 12:17:09,085 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:17:09,085 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:17:09,085 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [134575121] [2022-04-27 12:17:09,085 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:17:09,085 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2068610986] [2022-04-27 12:17:09,085 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2068610986] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:17:09,085 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:17:09,086 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 12:17:09,086 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1458238272] [2022-04-27 12:17:09,086 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:17:09,086 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 40 [2022-04-27 12:17:09,086 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:17:09,087 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-27 12:17:09,107 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:17:09,107 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:17:09,107 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:17:09,108 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:17:09,108 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 12:17:09,108 INFO L87 Difference]: Start difference. First operand 53 states and 67 transitions. Second operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-27 12:17:09,326 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:09,326 INFO L93 Difference]: Finished difference Result 79 states and 105 transitions. [2022-04-27 12:17:09,326 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:17:09,326 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 40 [2022-04-27 12:17:09,326 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:17:09,327 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-27 12:17:09,328 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 69 transitions. [2022-04-27 12:17:09,328 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-27 12:17:09,329 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 69 transitions. [2022-04-27 12:17:09,329 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 69 transitions. [2022-04-27 12:17:09,382 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:17:09,384 INFO L225 Difference]: With dead ends: 79 [2022-04-27 12:17:09,384 INFO L226 Difference]: Without dead ends: 77 [2022-04-27 12:17:09,385 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 40 GetRequests, 36 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-27 12:17:09,385 INFO L413 NwaCegarLoop]: 46 mSDtfsCounter, 10 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 64 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 144 SdHoareTripleChecker+Invalid, 65 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 64 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:17:09,386 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [16 Valid, 144 Invalid, 65 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 64 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:17:09,386 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 77 states. [2022-04-27 12:17:09,431 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 77 to 70. [2022-04-27 12:17:09,431 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:17:09,431 INFO L82 GeneralOperation]: Start isEquivalent. First operand 77 states. Second operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 12:17:09,432 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 12:17:09,432 INFO L87 Difference]: Start difference. First operand 77 states. Second operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 12:17:09,436 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:09,436 INFO L93 Difference]: Finished difference Result 77 states and 103 transitions. [2022-04-27 12:17:09,436 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 103 transitions. [2022-04-27 12:17:09,436 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:17:09,436 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:17:09,437 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 77 states. [2022-04-27 12:17:09,437 INFO L87 Difference]: Start difference. First operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 77 states. [2022-04-27 12:17:09,440 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:09,440 INFO L93 Difference]: Finished difference Result 77 states and 103 transitions. [2022-04-27 12:17:09,441 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 103 transitions. [2022-04-27 12:17:09,441 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:17:09,441 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:17:09,441 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:17:09,441 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:17:09,442 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 12:17:09,444 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 92 transitions. [2022-04-27 12:17:09,444 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 92 transitions. Word has length 40 [2022-04-27 12:17:09,445 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:17:09,445 INFO L495 AbstractCegarLoop]: Abstraction has 70 states and 92 transitions. [2022-04-27 12:17:09,445 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-27 12:17:09,445 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 92 transitions. [2022-04-27 12:17:09,446 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-27 12:17:09,446 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:17:09,446 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:17:09,486 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-27 12:17:09,655 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:17:09,656 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:17:09,656 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:17:09,656 INFO L85 PathProgramCache]: Analyzing trace with hash -391974204, now seen corresponding path program 1 times [2022-04-27 12:17:09,656 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:17:09,656 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [837087488] [2022-04-27 12:17:09,656 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:17:09,657 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:17:09,674 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:17:09,675 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [686889919] [2022-04-27 12:17:09,675 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:17:09,675 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:17:09,675 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:17:09,692 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:17:09,739 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-27 12:17:09,777 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:17:09,778 INFO L263 TraceCheckSpWp]: Trace formula consists of 134 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 12:17:09,785 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:17:09,786 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:17:09,976 INFO L272 TraceCheckUtils]: 0: Hoare triple {1492#true} call ULTIMATE.init(); {1492#true} is VALID [2022-04-27 12:17:09,976 INFO L290 TraceCheckUtils]: 1: Hoare triple {1492#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); {1492#true} is VALID [2022-04-27 12:17:09,977 INFO L290 TraceCheckUtils]: 2: Hoare triple {1492#true} assume true; {1492#true} is VALID [2022-04-27 12:17:09,977 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1492#true} {1492#true} #98#return; {1492#true} is VALID [2022-04-27 12:17:09,977 INFO L272 TraceCheckUtils]: 4: Hoare triple {1492#true} call #t~ret6 := main(); {1492#true} is VALID [2022-04-27 12:17:09,977 INFO L290 TraceCheckUtils]: 5: Hoare triple {1492#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; {1492#true} is VALID [2022-04-27 12:17:09,977 INFO L272 TraceCheckUtils]: 6: Hoare triple {1492#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 20 then 1 else 0)); {1492#true} is VALID [2022-04-27 12:17:09,977 INFO L290 TraceCheckUtils]: 7: Hoare triple {1492#true} ~cond := #in~cond; {1492#true} is VALID [2022-04-27 12:17:09,977 INFO L290 TraceCheckUtils]: 8: Hoare triple {1492#true} assume !(0 == ~cond); {1492#true} is VALID [2022-04-27 12:17:09,977 INFO L290 TraceCheckUtils]: 9: Hoare triple {1492#true} assume true; {1492#true} is VALID [2022-04-27 12:17:09,978 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1492#true} {1492#true} #78#return; {1492#true} is VALID [2022-04-27 12:17:09,978 INFO L290 TraceCheckUtils]: 11: Hoare triple {1492#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1492#true} is VALID [2022-04-27 12:17:09,978 INFO L272 TraceCheckUtils]: 12: Hoare triple {1492#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 20 then 1 else 0)); {1492#true} is VALID [2022-04-27 12:17:09,978 INFO L290 TraceCheckUtils]: 13: Hoare triple {1492#true} ~cond := #in~cond; {1492#true} is VALID [2022-04-27 12:17:09,978 INFO L290 TraceCheckUtils]: 14: Hoare triple {1492#true} assume !(0 == ~cond); {1492#true} is VALID [2022-04-27 12:17:09,978 INFO L290 TraceCheckUtils]: 15: Hoare triple {1492#true} assume true; {1492#true} is VALID [2022-04-27 12:17:09,978 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1492#true} {1492#true} #80#return; {1492#true} is VALID [2022-04-27 12:17:09,978 INFO L272 TraceCheckUtils]: 17: Hoare triple {1492#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1492#true} is VALID [2022-04-27 12:17:09,979 INFO L290 TraceCheckUtils]: 18: Hoare triple {1492#true} ~cond := #in~cond; {1551#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:17:09,979 INFO L290 TraceCheckUtils]: 19: Hoare triple {1551#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1555#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:17:09,979 INFO L290 TraceCheckUtils]: 20: Hoare triple {1555#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1555#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:17:09,980 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1555#(not (= |assume_abort_if_not_#in~cond| 0))} {1492#true} #82#return; {1562#(<= 1 main_~y~0)} is VALID [2022-04-27 12:17:09,980 INFO L290 TraceCheckUtils]: 22: Hoare triple {1562#(<= 1 main_~y~0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1562#(<= 1 main_~y~0)} is VALID [2022-04-27 12:17:09,981 INFO L290 TraceCheckUtils]: 23: Hoare triple {1562#(<= 1 main_~y~0)} assume !false; {1562#(<= 1 main_~y~0)} is VALID [2022-04-27 12:17:09,981 INFO L272 TraceCheckUtils]: 24: Hoare triple {1562#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1492#true} is VALID [2022-04-27 12:17:09,981 INFO L290 TraceCheckUtils]: 25: Hoare triple {1492#true} ~cond := #in~cond; {1492#true} is VALID [2022-04-27 12:17:09,981 INFO L290 TraceCheckUtils]: 26: Hoare triple {1492#true} assume !(0 == ~cond); {1492#true} is VALID [2022-04-27 12:17:09,981 INFO L290 TraceCheckUtils]: 27: Hoare triple {1492#true} assume true; {1492#true} is VALID [2022-04-27 12:17:09,992 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1492#true} {1562#(<= 1 main_~y~0)} #84#return; {1562#(<= 1 main_~y~0)} is VALID [2022-04-27 12:17:09,992 INFO L272 TraceCheckUtils]: 29: Hoare triple {1562#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1492#true} is VALID [2022-04-27 12:17:09,992 INFO L290 TraceCheckUtils]: 30: Hoare triple {1492#true} ~cond := #in~cond; {1492#true} is VALID [2022-04-27 12:17:09,993 INFO L290 TraceCheckUtils]: 31: Hoare triple {1492#true} assume !(0 == ~cond); {1492#true} is VALID [2022-04-27 12:17:09,993 INFO L290 TraceCheckUtils]: 32: Hoare triple {1492#true} assume true; {1492#true} is VALID [2022-04-27 12:17:09,993 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1492#true} {1562#(<= 1 main_~y~0)} #86#return; {1562#(<= 1 main_~y~0)} is VALID [2022-04-27 12:17:09,994 INFO L290 TraceCheckUtils]: 34: Hoare triple {1562#(<= 1 main_~y~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1602#(<= 1 main_~r~0)} is VALID [2022-04-27 12:17:09,994 INFO L290 TraceCheckUtils]: 35: Hoare triple {1602#(<= 1 main_~r~0)} assume !false; {1602#(<= 1 main_~r~0)} is VALID [2022-04-27 12:17:09,994 INFO L272 TraceCheckUtils]: 36: Hoare triple {1602#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1492#true} is VALID [2022-04-27 12:17:09,995 INFO L290 TraceCheckUtils]: 37: Hoare triple {1492#true} ~cond := #in~cond; {1492#true} is VALID [2022-04-27 12:17:09,995 INFO L290 TraceCheckUtils]: 38: Hoare triple {1492#true} assume !(0 == ~cond); {1492#true} is VALID [2022-04-27 12:17:09,995 INFO L290 TraceCheckUtils]: 39: Hoare triple {1492#true} assume true; {1492#true} is VALID [2022-04-27 12:17:09,995 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {1492#true} {1602#(<= 1 main_~r~0)} #88#return; {1602#(<= 1 main_~r~0)} is VALID [2022-04-27 12:17:09,996 INFO L272 TraceCheckUtils]: 41: Hoare triple {1602#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1492#true} is VALID [2022-04-27 12:17:09,996 INFO L290 TraceCheckUtils]: 42: Hoare triple {1492#true} ~cond := #in~cond; {1492#true} is VALID [2022-04-27 12:17:09,996 INFO L290 TraceCheckUtils]: 43: Hoare triple {1492#true} assume !(0 == ~cond); {1492#true} is VALID [2022-04-27 12:17:09,996 INFO L290 TraceCheckUtils]: 44: Hoare triple {1492#true} assume true; {1492#true} is VALID [2022-04-27 12:17:09,996 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1492#true} {1602#(<= 1 main_~r~0)} #90#return; {1602#(<= 1 main_~r~0)} is VALID [2022-04-27 12:17:09,997 INFO L272 TraceCheckUtils]: 46: Hoare triple {1602#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {1639#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:17:09,997 INFO L290 TraceCheckUtils]: 47: Hoare triple {1639#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1643#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:17:09,998 INFO L290 TraceCheckUtils]: 48: Hoare triple {1643#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1493#false} is VALID [2022-04-27 12:17:09,998 INFO L290 TraceCheckUtils]: 49: Hoare triple {1493#false} assume !false; {1493#false} is VALID [2022-04-27 12:17:09,998 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-27 12:17:09,998 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:17:09,999 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:17:09,999 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [837087488] [2022-04-27 12:17:09,999 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:17:09,999 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [686889919] [2022-04-27 12:17:09,999 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [686889919] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:17:09,999 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:17:09,999 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-27 12:17:09,999 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1272470738] [2022-04-27 12:17:09,999 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:17:10,000 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 50 [2022-04-27 12:17:10,000 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:17:10,000 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-27 12:17:10,028 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:17:10,029 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-27 12:17:10,029 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:17:10,029 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-27 12:17:10,030 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-27 12:17:10,030 INFO L87 Difference]: Start difference. First operand 70 states and 92 transitions. Second operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-27 12:17:10,370 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:10,370 INFO L93 Difference]: Finished difference Result 76 states and 97 transitions. [2022-04-27 12:17:10,370 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-27 12:17:10,371 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 50 [2022-04-27 12:17:10,371 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:17:10,371 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-27 12:17:10,372 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-27 12:17:10,372 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-27 12:17:10,373 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-27 12:17:10,374 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 48 transitions. [2022-04-27 12:17:10,409 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:17:10,412 INFO L225 Difference]: With dead ends: 76 [2022-04-27 12:17:10,412 INFO L226 Difference]: Without dead ends: 74 [2022-04-27 12:17:10,412 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 52 GetRequests, 43 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-27 12:17:10,413 INFO L413 NwaCegarLoop]: 34 mSDtfsCounter, 16 mSDsluCounter, 126 mSDsCounter, 0 mSdLazyCounter, 125 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 160 SdHoareTripleChecker+Invalid, 132 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 125 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:17:10,413 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [16 Valid, 160 Invalid, 132 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 125 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:17:10,413 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-04-27 12:17:10,457 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 74. [2022-04-27 12:17:10,457 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:17:10,457 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 12:17:10,458 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 12:17:10,458 INFO L87 Difference]: Start difference. First operand 74 states. Second operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 12:17:10,460 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:10,460 INFO L93 Difference]: Finished difference Result 74 states and 95 transitions. [2022-04-27 12:17:10,460 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 95 transitions. [2022-04-27 12:17:10,461 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:17:10,461 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:17:10,461 INFO L74 IsIncluded]: Start isIncluded. First operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 74 states. [2022-04-27 12:17:10,461 INFO L87 Difference]: Start difference. First operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 74 states. [2022-04-27 12:17:10,463 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:10,463 INFO L93 Difference]: Finished difference Result 74 states and 95 transitions. [2022-04-27 12:17:10,464 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 95 transitions. [2022-04-27 12:17:10,464 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:17:10,464 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:17:10,464 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:17:10,464 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:17:10,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 12:17:10,466 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 95 transitions. [2022-04-27 12:17:10,466 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 95 transitions. Word has length 50 [2022-04-27 12:17:10,466 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:17:10,466 INFO L495 AbstractCegarLoop]: Abstraction has 74 states and 95 transitions. [2022-04-27 12:17:10,467 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-27 12:17:10,467 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 95 transitions. [2022-04-27 12:17:10,467 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-27 12:17:10,467 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:17:10,467 INFO L195 NwaCegarLoop]: trace histogram [6, 5, 5, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:17:10,484 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-27 12:17:10,684 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:17:10,684 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:17:10,685 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:17:10,685 INFO L85 PathProgramCache]: Analyzing trace with hash 991781023, now seen corresponding path program 1 times [2022-04-27 12:17:10,685 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:17:10,685 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1892314871] [2022-04-27 12:17:10,685 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:17:10,685 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:17:10,701 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:17:10,701 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1364844564] [2022-04-27 12:17:10,701 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:17:10,701 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:17:10,701 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:17:10,702 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:17:10,703 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-27 12:17:10,740 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:17:10,741 INFO L263 TraceCheckSpWp]: Trace formula consists of 144 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 12:17:10,759 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:17:10,760 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:17:11,070 INFO L272 TraceCheckUtils]: 0: Hoare triple {2033#true} call ULTIMATE.init(); {2033#true} is VALID [2022-04-27 12:17:11,070 INFO L290 TraceCheckUtils]: 1: Hoare triple {2033#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); {2033#true} is VALID [2022-04-27 12:17:11,070 INFO L290 TraceCheckUtils]: 2: Hoare triple {2033#true} assume true; {2033#true} is VALID [2022-04-27 12:17:11,070 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2033#true} {2033#true} #98#return; {2033#true} is VALID [2022-04-27 12:17:11,070 INFO L272 TraceCheckUtils]: 4: Hoare triple {2033#true} call #t~ret6 := main(); {2033#true} is VALID [2022-04-27 12:17:11,071 INFO L290 TraceCheckUtils]: 5: Hoare triple {2033#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; {2033#true} is VALID [2022-04-27 12:17:11,071 INFO L272 TraceCheckUtils]: 6: Hoare triple {2033#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 20 then 1 else 0)); {2033#true} is VALID [2022-04-27 12:17:11,071 INFO L290 TraceCheckUtils]: 7: Hoare triple {2033#true} ~cond := #in~cond; {2033#true} is VALID [2022-04-27 12:17:11,071 INFO L290 TraceCheckUtils]: 8: Hoare triple {2033#true} assume !(0 == ~cond); {2033#true} is VALID [2022-04-27 12:17:11,071 INFO L290 TraceCheckUtils]: 9: Hoare triple {2033#true} assume true; {2033#true} is VALID [2022-04-27 12:17:11,071 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2033#true} {2033#true} #78#return; {2033#true} is VALID [2022-04-27 12:17:11,071 INFO L290 TraceCheckUtils]: 11: Hoare triple {2033#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2033#true} is VALID [2022-04-27 12:17:11,071 INFO L272 TraceCheckUtils]: 12: Hoare triple {2033#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 20 then 1 else 0)); {2033#true} is VALID [2022-04-27 12:17:11,071 INFO L290 TraceCheckUtils]: 13: Hoare triple {2033#true} ~cond := #in~cond; {2033#true} is VALID [2022-04-27 12:17:11,071 INFO L290 TraceCheckUtils]: 14: Hoare triple {2033#true} assume !(0 == ~cond); {2033#true} is VALID [2022-04-27 12:17:11,071 INFO L290 TraceCheckUtils]: 15: Hoare triple {2033#true} assume true; {2033#true} is VALID [2022-04-27 12:17:11,072 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2033#true} {2033#true} #80#return; {2033#true} is VALID [2022-04-27 12:17:11,072 INFO L272 TraceCheckUtils]: 17: Hoare triple {2033#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2033#true} is VALID [2022-04-27 12:17:11,072 INFO L290 TraceCheckUtils]: 18: Hoare triple {2033#true} ~cond := #in~cond; {2033#true} is VALID [2022-04-27 12:17:11,072 INFO L290 TraceCheckUtils]: 19: Hoare triple {2033#true} assume !(0 == ~cond); {2033#true} is VALID [2022-04-27 12:17:11,072 INFO L290 TraceCheckUtils]: 20: Hoare triple {2033#true} assume true; {2033#true} is VALID [2022-04-27 12:17:11,072 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2033#true} {2033#true} #82#return; {2033#true} is VALID [2022-04-27 12:17:11,072 INFO L290 TraceCheckUtils]: 22: Hoare triple {2033#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2033#true} is VALID [2022-04-27 12:17:11,072 INFO L290 TraceCheckUtils]: 23: Hoare triple {2033#true} assume !false; {2033#true} is VALID [2022-04-27 12:17:11,072 INFO L272 TraceCheckUtils]: 24: Hoare triple {2033#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2033#true} is VALID [2022-04-27 12:17:11,072 INFO L290 TraceCheckUtils]: 25: Hoare triple {2033#true} ~cond := #in~cond; {2033#true} is VALID [2022-04-27 12:17:11,072 INFO L290 TraceCheckUtils]: 26: Hoare triple {2033#true} assume !(0 == ~cond); {2033#true} is VALID [2022-04-27 12:17:11,072 INFO L290 TraceCheckUtils]: 27: Hoare triple {2033#true} assume true; {2033#true} is VALID [2022-04-27 12:17:11,073 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2033#true} {2033#true} #84#return; {2033#true} is VALID [2022-04-27 12:17:11,073 INFO L272 TraceCheckUtils]: 29: Hoare triple {2033#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2033#true} is VALID [2022-04-27 12:17:11,073 INFO L290 TraceCheckUtils]: 30: Hoare triple {2033#true} ~cond := #in~cond; {2033#true} is VALID [2022-04-27 12:17:11,073 INFO L290 TraceCheckUtils]: 31: Hoare triple {2033#true} assume !(0 == ~cond); {2033#true} is VALID [2022-04-27 12:17:11,073 INFO L290 TraceCheckUtils]: 32: Hoare triple {2033#true} assume true; {2033#true} is VALID [2022-04-27 12:17:11,073 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2033#true} {2033#true} #86#return; {2033#true} is VALID [2022-04-27 12:17:11,073 INFO L290 TraceCheckUtils]: 34: Hoare triple {2033#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2033#true} is VALID [2022-04-27 12:17:11,073 INFO L290 TraceCheckUtils]: 35: Hoare triple {2033#true} assume !false; {2033#true} is VALID [2022-04-27 12:17:11,073 INFO L272 TraceCheckUtils]: 36: Hoare triple {2033#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2033#true} is VALID [2022-04-27 12:17:11,074 INFO L290 TraceCheckUtils]: 37: Hoare triple {2033#true} ~cond := #in~cond; {2149#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:17:11,074 INFO L290 TraceCheckUtils]: 38: Hoare triple {2149#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2153#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:17:11,074 INFO L290 TraceCheckUtils]: 39: Hoare triple {2153#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2153#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:17:11,075 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2153#(not (= |__VERIFIER_assert_#in~cond| 0))} {2033#true} #88#return; {2160#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-27 12:17:11,075 INFO L272 TraceCheckUtils]: 41: Hoare triple {2160#(= 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)); {2033#true} is VALID [2022-04-27 12:17:11,075 INFO L290 TraceCheckUtils]: 42: Hoare triple {2033#true} ~cond := #in~cond; {2033#true} is VALID [2022-04-27 12:17:11,075 INFO L290 TraceCheckUtils]: 43: Hoare triple {2033#true} assume !(0 == ~cond); {2033#true} is VALID [2022-04-27 12:17:11,075 INFO L290 TraceCheckUtils]: 44: Hoare triple {2033#true} assume true; {2033#true} is VALID [2022-04-27 12:17:11,076 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2033#true} {2160#(= main_~b~0 (* main_~a~0 main_~y~0))} #90#return; {2160#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-27 12:17:11,076 INFO L272 TraceCheckUtils]: 46: Hoare triple {2160#(= main_~b~0 (* main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2033#true} is VALID [2022-04-27 12:17:11,076 INFO L290 TraceCheckUtils]: 47: Hoare triple {2033#true} ~cond := #in~cond; {2033#true} is VALID [2022-04-27 12:17:11,076 INFO L290 TraceCheckUtils]: 48: Hoare triple {2033#true} assume !(0 == ~cond); {2033#true} is VALID [2022-04-27 12:17:11,076 INFO L290 TraceCheckUtils]: 49: Hoare triple {2033#true} assume true; {2033#true} is VALID [2022-04-27 12:17:11,077 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2033#true} {2160#(= main_~b~0 (* main_~a~0 main_~y~0))} #92#return; {2160#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-27 12:17:11,077 INFO L290 TraceCheckUtils]: 51: Hoare triple {2160#(= main_~b~0 (* main_~a~0 main_~y~0))} assume !!(~r~0 >= 2 * ~b~0); {2194#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-27 12:17:11,078 INFO L272 TraceCheckUtils]: 52: Hoare triple {2194#(<= (* 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)); {2198#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:17:11,078 INFO L290 TraceCheckUtils]: 53: Hoare triple {2198#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2202#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:17:11,079 INFO L290 TraceCheckUtils]: 54: Hoare triple {2202#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2034#false} is VALID [2022-04-27 12:17:11,079 INFO L290 TraceCheckUtils]: 55: Hoare triple {2034#false} assume !false; {2034#false} is VALID [2022-04-27 12:17:11,079 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-27 12:17:11,079 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:17:15,579 INFO L290 TraceCheckUtils]: 55: Hoare triple {2034#false} assume !false; {2034#false} is VALID [2022-04-27 12:17:15,579 INFO L290 TraceCheckUtils]: 54: Hoare triple {2202#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2034#false} is VALID [2022-04-27 12:17:15,580 INFO L290 TraceCheckUtils]: 53: Hoare triple {2198#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2202#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:17:15,580 INFO L272 TraceCheckUtils]: 52: Hoare triple {2194#(<= (* 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)); {2198#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:17:15,581 INFO L290 TraceCheckUtils]: 51: Hoare triple {2221#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} assume !!(~r~0 >= 2 * ~b~0); {2194#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-27 12:17:15,584 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2033#true} {2221#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} #92#return; {2221#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-27 12:17:15,584 INFO L290 TraceCheckUtils]: 49: Hoare triple {2033#true} assume true; {2033#true} is VALID [2022-04-27 12:17:15,584 INFO L290 TraceCheckUtils]: 48: Hoare triple {2033#true} assume !(0 == ~cond); {2033#true} is VALID [2022-04-27 12:17:15,584 INFO L290 TraceCheckUtils]: 47: Hoare triple {2033#true} ~cond := #in~cond; {2033#true} is VALID [2022-04-27 12:17:15,584 INFO L272 TraceCheckUtils]: 46: Hoare triple {2221#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2033#true} is VALID [2022-04-27 12:17:15,585 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2033#true} {2221#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} #90#return; {2221#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-27 12:17:15,585 INFO L290 TraceCheckUtils]: 44: Hoare triple {2033#true} assume true; {2033#true} is VALID [2022-04-27 12:17:15,585 INFO L290 TraceCheckUtils]: 43: Hoare triple {2033#true} assume !(0 == ~cond); {2033#true} is VALID [2022-04-27 12:17:15,585 INFO L290 TraceCheckUtils]: 42: Hoare triple {2033#true} ~cond := #in~cond; {2033#true} is VALID [2022-04-27 12:17:15,585 INFO L272 TraceCheckUtils]: 41: Hoare triple {2221#(<= (* 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)); {2033#true} is VALID [2022-04-27 12:17:15,586 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2153#(not (= |__VERIFIER_assert_#in~cond| 0))} {2033#true} #88#return; {2221#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-27 12:17:15,586 INFO L290 TraceCheckUtils]: 39: Hoare triple {2153#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2153#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:17:15,586 INFO L290 TraceCheckUtils]: 38: Hoare triple {2264#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {2153#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:17:15,587 INFO L290 TraceCheckUtils]: 37: Hoare triple {2033#true} ~cond := #in~cond; {2264#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 12:17:15,587 INFO L272 TraceCheckUtils]: 36: Hoare triple {2033#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2033#true} is VALID [2022-04-27 12:17:15,587 INFO L290 TraceCheckUtils]: 35: Hoare triple {2033#true} assume !false; {2033#true} is VALID [2022-04-27 12:17:15,587 INFO L290 TraceCheckUtils]: 34: Hoare triple {2033#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2033#true} is VALID [2022-04-27 12:17:15,587 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2033#true} {2033#true} #86#return; {2033#true} is VALID [2022-04-27 12:17:15,587 INFO L290 TraceCheckUtils]: 32: Hoare triple {2033#true} assume true; {2033#true} is VALID [2022-04-27 12:17:15,587 INFO L290 TraceCheckUtils]: 31: Hoare triple {2033#true} assume !(0 == ~cond); {2033#true} is VALID [2022-04-27 12:17:15,587 INFO L290 TraceCheckUtils]: 30: Hoare triple {2033#true} ~cond := #in~cond; {2033#true} is VALID [2022-04-27 12:17:15,587 INFO L272 TraceCheckUtils]: 29: Hoare triple {2033#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2033#true} is VALID [2022-04-27 12:17:15,587 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2033#true} {2033#true} #84#return; {2033#true} is VALID [2022-04-27 12:17:15,587 INFO L290 TraceCheckUtils]: 27: Hoare triple {2033#true} assume true; {2033#true} is VALID [2022-04-27 12:17:15,587 INFO L290 TraceCheckUtils]: 26: Hoare triple {2033#true} assume !(0 == ~cond); {2033#true} is VALID [2022-04-27 12:17:15,588 INFO L290 TraceCheckUtils]: 25: Hoare triple {2033#true} ~cond := #in~cond; {2033#true} is VALID [2022-04-27 12:17:15,588 INFO L272 TraceCheckUtils]: 24: Hoare triple {2033#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2033#true} is VALID [2022-04-27 12:17:15,588 INFO L290 TraceCheckUtils]: 23: Hoare triple {2033#true} assume !false; {2033#true} is VALID [2022-04-27 12:17:15,588 INFO L290 TraceCheckUtils]: 22: Hoare triple {2033#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2033#true} is VALID [2022-04-27 12:17:15,588 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2033#true} {2033#true} #82#return; {2033#true} is VALID [2022-04-27 12:17:15,588 INFO L290 TraceCheckUtils]: 20: Hoare triple {2033#true} assume true; {2033#true} is VALID [2022-04-27 12:17:15,588 INFO L290 TraceCheckUtils]: 19: Hoare triple {2033#true} assume !(0 == ~cond); {2033#true} is VALID [2022-04-27 12:17:15,588 INFO L290 TraceCheckUtils]: 18: Hoare triple {2033#true} ~cond := #in~cond; {2033#true} is VALID [2022-04-27 12:17:15,588 INFO L272 TraceCheckUtils]: 17: Hoare triple {2033#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2033#true} is VALID [2022-04-27 12:17:15,588 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2033#true} {2033#true} #80#return; {2033#true} is VALID [2022-04-27 12:17:15,588 INFO L290 TraceCheckUtils]: 15: Hoare triple {2033#true} assume true; {2033#true} is VALID [2022-04-27 12:17:15,588 INFO L290 TraceCheckUtils]: 14: Hoare triple {2033#true} assume !(0 == ~cond); {2033#true} is VALID [2022-04-27 12:17:15,589 INFO L290 TraceCheckUtils]: 13: Hoare triple {2033#true} ~cond := #in~cond; {2033#true} is VALID [2022-04-27 12:17:15,589 INFO L272 TraceCheckUtils]: 12: Hoare triple {2033#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 20 then 1 else 0)); {2033#true} is VALID [2022-04-27 12:17:15,589 INFO L290 TraceCheckUtils]: 11: Hoare triple {2033#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2033#true} is VALID [2022-04-27 12:17:15,589 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2033#true} {2033#true} #78#return; {2033#true} is VALID [2022-04-27 12:17:15,589 INFO L290 TraceCheckUtils]: 9: Hoare triple {2033#true} assume true; {2033#true} is VALID [2022-04-27 12:17:15,589 INFO L290 TraceCheckUtils]: 8: Hoare triple {2033#true} assume !(0 == ~cond); {2033#true} is VALID [2022-04-27 12:17:15,589 INFO L290 TraceCheckUtils]: 7: Hoare triple {2033#true} ~cond := #in~cond; {2033#true} is VALID [2022-04-27 12:17:15,589 INFO L272 TraceCheckUtils]: 6: Hoare triple {2033#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 20 then 1 else 0)); {2033#true} is VALID [2022-04-27 12:17:15,589 INFO L290 TraceCheckUtils]: 5: Hoare triple {2033#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; {2033#true} is VALID [2022-04-27 12:17:15,589 INFO L272 TraceCheckUtils]: 4: Hoare triple {2033#true} call #t~ret6 := main(); {2033#true} is VALID [2022-04-27 12:17:15,589 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2033#true} {2033#true} #98#return; {2033#true} is VALID [2022-04-27 12:17:15,589 INFO L290 TraceCheckUtils]: 2: Hoare triple {2033#true} assume true; {2033#true} is VALID [2022-04-27 12:17:15,589 INFO L290 TraceCheckUtils]: 1: Hoare triple {2033#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); {2033#true} is VALID [2022-04-27 12:17:15,590 INFO L272 TraceCheckUtils]: 0: Hoare triple {2033#true} call ULTIMATE.init(); {2033#true} is VALID [2022-04-27 12:17:15,590 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-27 12:17:15,590 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:17:15,590 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1892314871] [2022-04-27 12:17:15,590 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:17:15,590 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1364844564] [2022-04-27 12:17:15,590 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1364844564] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:17:15,590 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:17:15,590 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-27 12:17:15,590 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [492749005] [2022-04-27 12:17:15,591 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:17:15,591 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) Word has length 56 [2022-04-27 12:17:15,591 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:17:15,591 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-27 12:17:15,626 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:17:15,626 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 12:17:15,626 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:17:15,626 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 12:17:15,626 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-04-27 12:17:15,627 INFO L87 Difference]: Start difference. First operand 74 states and 95 transitions. Second operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-27 12:17:15,964 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:15,964 INFO L93 Difference]: Finished difference Result 80 states and 100 transitions. [2022-04-27 12:17:15,964 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-27 12:17:15,964 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) Word has length 56 [2022-04-27 12:17:15,965 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:17:15,965 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-27 12:17:15,965 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-27 12:17:15,966 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-27 12:17:15,966 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-27 12:17:15,966 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 48 transitions. [2022-04-27 12:17:15,999 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:17:16,001 INFO L225 Difference]: With dead ends: 80 [2022-04-27 12:17:16,001 INFO L226 Difference]: Without dead ends: 78 [2022-04-27 12:17:16,001 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 114 GetRequests, 102 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-27 12:17:16,002 INFO L413 NwaCegarLoop]: 28 mSDtfsCounter, 21 mSDsluCounter, 109 mSDsCounter, 0 mSdLazyCounter, 127 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 137 SdHoareTripleChecker+Invalid, 136 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 127 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:17:16,002 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [23 Valid, 137 Invalid, 136 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 127 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:17:16,002 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2022-04-27 12:17:16,064 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 78. [2022-04-27 12:17:16,064 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:17:16,065 INFO L82 GeneralOperation]: Start isEquivalent. First operand 78 states. Second operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 12:17:16,065 INFO L74 IsIncluded]: Start isIncluded. First operand 78 states. Second operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 12:17:16,065 INFO L87 Difference]: Start difference. First operand 78 states. Second operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 12:17:16,069 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:16,069 INFO L93 Difference]: Finished difference Result 78 states and 98 transitions. [2022-04-27 12:17:16,069 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 98 transitions. [2022-04-27 12:17:16,069 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:17:16,069 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:17:16,069 INFO L74 IsIncluded]: Start isIncluded. First operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 78 states. [2022-04-27 12:17:16,070 INFO L87 Difference]: Start difference. First operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 78 states. [2022-04-27 12:17:16,072 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:16,072 INFO L93 Difference]: Finished difference Result 78 states and 98 transitions. [2022-04-27 12:17:16,072 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 98 transitions. [2022-04-27 12:17:16,072 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:17:16,072 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:17:16,072 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:17:16,072 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:17:16,073 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 12:17:16,075 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 98 transitions. [2022-04-27 12:17:16,075 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 98 transitions. Word has length 56 [2022-04-27 12:17:16,075 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:17:16,075 INFO L495 AbstractCegarLoop]: Abstraction has 78 states and 98 transitions. [2022-04-27 12:17:16,075 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-27 12:17:16,075 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 98 transitions. [2022-04-27 12:17:16,076 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-27 12:17:16,076 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:17:16,076 INFO L195 NwaCegarLoop]: trace histogram [7, 6, 6, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:17:16,095 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-27 12:17:16,292 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:17:16,293 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:17:16,293 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:17:16,293 INFO L85 PathProgramCache]: Analyzing trace with hash -2096667334, now seen corresponding path program 1 times [2022-04-27 12:17:16,294 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:17:16,294 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [752427428] [2022-04-27 12:17:16,294 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:17:16,294 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:17:16,305 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:17:16,305 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [440189026] [2022-04-27 12:17:16,305 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:17:16,305 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:17:16,305 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:17:16,306 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:17:16,307 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-27 12:17:16,344 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:17:16,345 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-27 12:17:16,357 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:17:16,361 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:17:16,731 INFO L272 TraceCheckUtils]: 0: Hoare triple {2780#true} call ULTIMATE.init(); {2780#true} is VALID [2022-04-27 12:17:16,731 INFO L290 TraceCheckUtils]: 1: Hoare triple {2780#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); {2780#true} is VALID [2022-04-27 12:17:16,732 INFO L290 TraceCheckUtils]: 2: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:17:16,732 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2780#true} {2780#true} #98#return; {2780#true} is VALID [2022-04-27 12:17:16,732 INFO L272 TraceCheckUtils]: 4: Hoare triple {2780#true} call #t~ret6 := main(); {2780#true} is VALID [2022-04-27 12:17:16,732 INFO L290 TraceCheckUtils]: 5: Hoare triple {2780#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; {2780#true} is VALID [2022-04-27 12:17:16,732 INFO L272 TraceCheckUtils]: 6: Hoare triple {2780#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 20 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:17:16,732 INFO L290 TraceCheckUtils]: 7: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:17:16,732 INFO L290 TraceCheckUtils]: 8: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:17:16,732 INFO L290 TraceCheckUtils]: 9: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:17:16,732 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2780#true} {2780#true} #78#return; {2780#true} is VALID [2022-04-27 12:17:16,732 INFO L290 TraceCheckUtils]: 11: Hoare triple {2780#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2780#true} is VALID [2022-04-27 12:17:16,732 INFO L272 TraceCheckUtils]: 12: Hoare triple {2780#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 20 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:17:16,732 INFO L290 TraceCheckUtils]: 13: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:17:16,733 INFO L290 TraceCheckUtils]: 14: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:17:16,733 INFO L290 TraceCheckUtils]: 15: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:17:16,733 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2780#true} {2780#true} #80#return; {2780#true} is VALID [2022-04-27 12:17:16,733 INFO L272 TraceCheckUtils]: 17: Hoare triple {2780#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:17:16,733 INFO L290 TraceCheckUtils]: 18: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:17:16,733 INFO L290 TraceCheckUtils]: 19: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:17:16,733 INFO L290 TraceCheckUtils]: 20: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:17:16,733 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2780#true} {2780#true} #82#return; {2780#true} is VALID [2022-04-27 12:17:16,734 INFO L290 TraceCheckUtils]: 22: Hoare triple {2780#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2851#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-27 12:17:16,734 INFO L290 TraceCheckUtils]: 23: Hoare triple {2851#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !false; {2851#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-27 12:17:16,734 INFO L272 TraceCheckUtils]: 24: Hoare triple {2851#(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)); {2780#true} is VALID [2022-04-27 12:17:16,735 INFO L290 TraceCheckUtils]: 25: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:17:16,735 INFO L290 TraceCheckUtils]: 26: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:17:16,735 INFO L290 TraceCheckUtils]: 27: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:17:16,735 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2780#true} {2851#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #84#return; {2851#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-27 12:17:16,735 INFO L272 TraceCheckUtils]: 29: Hoare triple {2851#(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)); {2780#true} is VALID [2022-04-27 12:17:16,735 INFO L290 TraceCheckUtils]: 30: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:17:16,735 INFO L290 TraceCheckUtils]: 31: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:17:16,736 INFO L290 TraceCheckUtils]: 32: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:17:16,736 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2780#true} {2851#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #86#return; {2851#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-27 12:17:16,736 INFO L290 TraceCheckUtils]: 34: Hoare triple {2851#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2888#(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-27 12:17:16,737 INFO L290 TraceCheckUtils]: 35: Hoare triple {2888#(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 !false; {2888#(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-27 12:17:16,737 INFO L272 TraceCheckUtils]: 36: Hoare triple {2888#(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)); {2780#true} is VALID [2022-04-27 12:17:16,737 INFO L290 TraceCheckUtils]: 37: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:17:16,737 INFO L290 TraceCheckUtils]: 38: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:17:16,737 INFO L290 TraceCheckUtils]: 39: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:17:16,748 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2780#true} {2888#(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))} #88#return; {2888#(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-27 12:17:16,748 INFO L272 TraceCheckUtils]: 41: Hoare triple {2888#(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)); {2780#true} is VALID [2022-04-27 12:17:16,748 INFO L290 TraceCheckUtils]: 42: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:17:16,748 INFO L290 TraceCheckUtils]: 43: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:17:16,748 INFO L290 TraceCheckUtils]: 44: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:17:16,749 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2780#true} {2888#(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))} #90#return; {2888#(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-27 12:17:16,749 INFO L272 TraceCheckUtils]: 46: Hoare triple {2888#(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)); {2780#true} is VALID [2022-04-27 12:17:16,749 INFO L290 TraceCheckUtils]: 47: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:17:16,749 INFO L290 TraceCheckUtils]: 48: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:17:16,749 INFO L290 TraceCheckUtils]: 49: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:17:16,750 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2780#true} {2888#(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))} #92#return; {2888#(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-27 12:17:16,750 INFO L290 TraceCheckUtils]: 51: Hoare triple {2888#(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); {2940#(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-27 12:17:16,751 INFO L290 TraceCheckUtils]: 52: Hoare triple {2940#(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; {2944#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} is VALID [2022-04-27 12:17:16,752 INFO L290 TraceCheckUtils]: 53: Hoare triple {2944#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} assume !false; {2944#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} is VALID [2022-04-27 12:17:16,752 INFO L272 TraceCheckUtils]: 54: Hoare triple {2944#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:17:16,752 INFO L290 TraceCheckUtils]: 55: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:17:16,752 INFO L290 TraceCheckUtils]: 56: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:17:16,752 INFO L290 TraceCheckUtils]: 57: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:17:16,753 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {2780#true} {2944#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} #84#return; {2944#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} is VALID [2022-04-27 12:17:16,753 INFO L272 TraceCheckUtils]: 59: Hoare triple {2944#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~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)); {2966#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:17:16,753 INFO L290 TraceCheckUtils]: 60: Hoare triple {2966#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2970#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:17:16,754 INFO L290 TraceCheckUtils]: 61: Hoare triple {2970#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2781#false} is VALID [2022-04-27 12:17:16,754 INFO L290 TraceCheckUtils]: 62: Hoare triple {2781#false} assume !false; {2781#false} is VALID [2022-04-27 12:17:16,754 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 12 proven. 3 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2022-04-27 12:17:16,754 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:17:17,121 INFO L290 TraceCheckUtils]: 62: Hoare triple {2781#false} assume !false; {2781#false} is VALID [2022-04-27 12:17:17,122 INFO L290 TraceCheckUtils]: 61: Hoare triple {2970#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2781#false} is VALID [2022-04-27 12:17:17,122 INFO L290 TraceCheckUtils]: 60: Hoare triple {2966#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2970#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:17:17,123 INFO L272 TraceCheckUtils]: 59: Hoare triple {2986#(= (+ (* 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)); {2966#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:17:17,123 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {2780#true} {2986#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #84#return; {2986#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:17:17,124 INFO L290 TraceCheckUtils]: 57: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:17:17,124 INFO L290 TraceCheckUtils]: 56: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:17:17,124 INFO L290 TraceCheckUtils]: 55: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:17:17,124 INFO L272 TraceCheckUtils]: 54: Hoare triple {2986#(= (+ (* 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)); {2780#true} is VALID [2022-04-27 12:17:17,128 INFO L290 TraceCheckUtils]: 53: Hoare triple {2986#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !false; {2986#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:17:17,137 INFO L290 TraceCheckUtils]: 52: Hoare triple {3008#(= 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; {2986#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-27 12:17:17,138 INFO L290 TraceCheckUtils]: 51: Hoare triple {3012#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} assume !(~r~0 >= 2 * ~b~0); {3008#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-27 12:17:17,139 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2780#true} {3012#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} #92#return; {3012#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-27 12:17:17,139 INFO L290 TraceCheckUtils]: 49: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:17:17,139 INFO L290 TraceCheckUtils]: 48: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:17:17,139 INFO L290 TraceCheckUtils]: 47: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:17:17,139 INFO L272 TraceCheckUtils]: 46: Hoare triple {3012#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:17:17,140 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2780#true} {3012#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} #90#return; {3012#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-27 12:17:17,140 INFO L290 TraceCheckUtils]: 44: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:17:17,140 INFO L290 TraceCheckUtils]: 43: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:17:17,140 INFO L290 TraceCheckUtils]: 42: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:17:17,140 INFO L272 TraceCheckUtils]: 41: Hoare triple {3012#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:17:17,141 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2780#true} {3012#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} #88#return; {3012#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-27 12:17:17,141 INFO L290 TraceCheckUtils]: 39: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:17:17,141 INFO L290 TraceCheckUtils]: 38: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:17:17,141 INFO L290 TraceCheckUtils]: 37: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:17:17,141 INFO L272 TraceCheckUtils]: 36: Hoare triple {3012#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:17:17,143 INFO L290 TraceCheckUtils]: 35: Hoare triple {3012#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} assume !false; {3012#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-27 12:17:17,143 INFO L290 TraceCheckUtils]: 34: Hoare triple {3064#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {3012#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-27 12:17:17,144 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2780#true} {3064#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} #86#return; {3064#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} is VALID [2022-04-27 12:17:17,144 INFO L290 TraceCheckUtils]: 32: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:17:17,144 INFO L290 TraceCheckUtils]: 31: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:17:17,144 INFO L290 TraceCheckUtils]: 30: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:17:17,144 INFO L272 TraceCheckUtils]: 29: Hoare triple {3064#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:17:17,147 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2780#true} {3064#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} #84#return; {3064#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} is VALID [2022-04-27 12:17:17,148 INFO L290 TraceCheckUtils]: 27: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:17:17,148 INFO L290 TraceCheckUtils]: 26: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:17:17,148 INFO L290 TraceCheckUtils]: 25: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:17:17,148 INFO L272 TraceCheckUtils]: 24: Hoare triple {3064#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:17:17,148 INFO L290 TraceCheckUtils]: 23: Hoare triple {3064#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} assume !false; {3064#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} is VALID [2022-04-27 12:17:17,149 INFO L290 TraceCheckUtils]: 22: Hoare triple {2780#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {3064#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} is VALID [2022-04-27 12:17:17,149 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2780#true} {2780#true} #82#return; {2780#true} is VALID [2022-04-27 12:17:17,149 INFO L290 TraceCheckUtils]: 20: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:17:17,149 INFO L290 TraceCheckUtils]: 19: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:17:17,149 INFO L290 TraceCheckUtils]: 18: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:17:17,149 INFO L272 TraceCheckUtils]: 17: Hoare triple {2780#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:17:17,150 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2780#true} {2780#true} #80#return; {2780#true} is VALID [2022-04-27 12:17:17,150 INFO L290 TraceCheckUtils]: 15: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:17:17,150 INFO L290 TraceCheckUtils]: 14: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:17:17,150 INFO L290 TraceCheckUtils]: 13: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:17:17,150 INFO L272 TraceCheckUtils]: 12: Hoare triple {2780#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 20 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:17:17,150 INFO L290 TraceCheckUtils]: 11: Hoare triple {2780#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2780#true} is VALID [2022-04-27 12:17:17,150 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2780#true} {2780#true} #78#return; {2780#true} is VALID [2022-04-27 12:17:17,150 INFO L290 TraceCheckUtils]: 9: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:17:17,150 INFO L290 TraceCheckUtils]: 8: Hoare triple {2780#true} assume !(0 == ~cond); {2780#true} is VALID [2022-04-27 12:17:17,150 INFO L290 TraceCheckUtils]: 7: Hoare triple {2780#true} ~cond := #in~cond; {2780#true} is VALID [2022-04-27 12:17:17,151 INFO L272 TraceCheckUtils]: 6: Hoare triple {2780#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 20 then 1 else 0)); {2780#true} is VALID [2022-04-27 12:17:17,151 INFO L290 TraceCheckUtils]: 5: Hoare triple {2780#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; {2780#true} is VALID [2022-04-27 12:17:17,151 INFO L272 TraceCheckUtils]: 4: Hoare triple {2780#true} call #t~ret6 := main(); {2780#true} is VALID [2022-04-27 12:17:17,151 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2780#true} {2780#true} #98#return; {2780#true} is VALID [2022-04-27 12:17:17,151 INFO L290 TraceCheckUtils]: 2: Hoare triple {2780#true} assume true; {2780#true} is VALID [2022-04-27 12:17:17,151 INFO L290 TraceCheckUtils]: 1: Hoare triple {2780#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); {2780#true} is VALID [2022-04-27 12:17:17,151 INFO L272 TraceCheckUtils]: 0: Hoare triple {2780#true} call ULTIMATE.init(); {2780#true} is VALID [2022-04-27 12:17:17,151 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 15 proven. 0 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2022-04-27 12:17:17,152 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:17:17,152 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [752427428] [2022-04-27 12:17:17,152 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:17:17,152 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [440189026] [2022-04-27 12:17:17,152 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [440189026] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-27 12:17:17,152 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 12:17:17,152 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [8] total 12 [2022-04-27 12:17:17,152 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [31505621] [2022-04-27 12:17:17,152 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:17:17,153 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 63 [2022-04-27 12:17:17,153 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:17:17,153 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-27 12:17:17,195 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:17:17,195 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-27 12:17:17,195 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:17:17,195 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-27 12:17:17,195 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=38, Invalid=94, Unknown=0, NotChecked=0, Total=132 [2022-04-27 12:17:17,196 INFO L87 Difference]: Start difference. First operand 78 states and 98 transitions. Second operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-27 12:17:17,667 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:17,667 INFO L93 Difference]: Finished difference Result 82 states and 101 transitions. [2022-04-27 12:17:17,667 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:17:17,668 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 63 [2022-04-27 12:17:17,668 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:17:17,668 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-27 12:17:17,669 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 46 transitions. [2022-04-27 12:17:17,669 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-27 12:17:17,670 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 46 transitions. [2022-04-27 12:17:17,670 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 46 transitions. [2022-04-27 12:17:17,712 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-27 12:17:17,713 INFO L225 Difference]: With dead ends: 82 [2022-04-27 12:17:17,713 INFO L226 Difference]: Without dead ends: 0 [2022-04-27 12:17:17,713 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 127 GetRequests, 114 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 31 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=50, Invalid=132, Unknown=0, NotChecked=0, Total=182 [2022-04-27 12:17:17,714 INFO L413 NwaCegarLoop]: 29 mSDtfsCounter, 17 mSDsluCounter, 81 mSDsCounter, 0 mSdLazyCounter, 86 mSolverCounterSat, 29 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 110 SdHoareTripleChecker+Invalid, 115 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 29 IncrementalHoareTripleChecker+Valid, 86 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 12:17:17,714 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [17 Valid, 110 Invalid, 115 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [29 Valid, 86 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 12:17:17,714 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-27 12:17:17,714 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-27 12:17:17,714 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:17:17,714 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-27 12:17:17,715 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-27 12:17:17,715 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-27 12:17:17,715 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:17,715 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-27 12:17:17,715 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 12:17:17,715 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:17:17,715 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:17:17,715 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-27 12:17:17,715 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-27 12:17:17,715 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:17:17,715 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-27 12:17:17,715 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 12:17:17,715 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:17:17,715 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:17:17,715 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:17:17,715 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:17:17,716 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-27 12:17:17,716 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-27 12:17:17,716 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 63 [2022-04-27 12:17:17,716 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:17:17,716 INFO L495 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-27 12:17:17,716 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-27 12:17:17,716 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 12:17:17,716 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:17:17,718 INFO L805 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-27 12:17:17,737 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-27 12:17:17,927 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:17:17,929 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-27 12:17:19,044 INFO L899 garLoopResultBuilder]: For program point reach_errorEXIT(line 8) no Hoare annotation was computed. [2022-04-27 12:17:19,044 INFO L899 garLoopResultBuilder]: For program point reach_errorENTRY(line 8) no Hoare annotation was computed. [2022-04-27 12:17:19,045 INFO L899 garLoopResultBuilder]: For program point reach_errorFINAL(line 8) no Hoare annotation was computed. [2022-04-27 12:17:19,045 INFO L902 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 11 13) the Hoare annotation is: true [2022-04-27 12:17:19,045 INFO L899 garLoopResultBuilder]: For program point L12(line 12) no Hoare annotation was computed. [2022-04-27 12:17:19,045 INFO L899 garLoopResultBuilder]: For program point L12-2(lines 11 13) no Hoare annotation was computed. [2022-04-27 12:17:19,045 INFO L899 garLoopResultBuilder]: For program point assume_abort_if_notEXIT(lines 11 13) no Hoare annotation was computed. [2022-04-27 12:17:19,045 INFO L899 garLoopResultBuilder]: For program point L64(line 64) no Hoare annotation was computed. [2022-04-27 12:17:19,045 INFO L899 garLoopResultBuilder]: For program point L31(line 31) no Hoare annotation was computed. [2022-04-27 12:17:19,045 INFO L902 garLoopResultBuilder]: At program point L29(line 29) the Hoare annotation is: true [2022-04-27 12:17:19,045 INFO L895 garLoopResultBuilder]: At program point L29-1(line 29) the Hoare annotation is: (and (<= 0 main_~y~0) (<= main_~y~0 20)) [2022-04-27 12:17:19,045 INFO L902 garLoopResultBuilder]: At program point L27(line 27) the Hoare annotation is: true [2022-04-27 12:17:19,045 INFO L899 garLoopResultBuilder]: For program point L27-1(line 27) no Hoare annotation was computed. [2022-04-27 12:17:19,046 INFO L899 garLoopResultBuilder]: For program point mainEXIT(lines 22 66) no Hoare annotation was computed. [2022-04-27 12:17:19,046 INFO L899 garLoopResultBuilder]: For program point L50(lines 47 59) no Hoare annotation was computed. [2022-04-27 12:17:19,046 INFO L895 garLoopResultBuilder]: At program point L48(line 48) the Hoare annotation is: (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~r~0) (<= main_~y~0 20) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) [2022-04-27 12:17:19,047 INFO L895 garLoopResultBuilder]: At program point L48-1(line 48) the Hoare annotation is: (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~r~0) (<= main_~y~0 20) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) [2022-04-27 12:17:19,048 INFO L899 garLoopResultBuilder]: For program point mainFINAL(lines 22 66) no Hoare annotation was computed. [2022-04-27 12:17:19,048 INFO L899 garLoopResultBuilder]: For program point L40(lines 38 62) no Hoare annotation was computed. [2022-04-27 12:17:19,048 INFO L895 garLoopResultBuilder]: At program point L38-2(lines 38 62) the Hoare annotation is: (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 20) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) [2022-04-27 12:17:19,048 INFO L895 garLoopResultBuilder]: At program point L38-3(lines 38 62) the Hoare annotation is: (let ((.cse0 (<= main_~y~0 20)) (.cse1 (<= 1 main_~y~0))) (or (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) .cse0 .cse1 (= main_~b~0 (* main_~a~0 main_~y~0))) (and (= main_~x~0 main_~r~0) (= main_~q~0 0) .cse0 .cse1))) [2022-04-27 12:17:19,048 INFO L902 garLoopResultBuilder]: At program point mainENTRY(lines 22 66) the Hoare annotation is: true [2022-04-27 12:17:19,048 INFO L895 garLoopResultBuilder]: At program point L55(line 55) the Hoare annotation is: (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) (<= main_~y~0 20) (<= 1 main_~y~0) (= main_~b~0 .cse0))) [2022-04-27 12:17:19,048 INFO L899 garLoopResultBuilder]: For program point L55-1(line 55) no Hoare annotation was computed. [2022-04-27 12:17:19,048 INFO L895 garLoopResultBuilder]: At program point L49(line 49) the Hoare annotation is: (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~r~0) (<= main_~y~0 20) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) [2022-04-27 12:17:19,048 INFO L895 garLoopResultBuilder]: At program point L47-2(lines 47 59) the Hoare annotation is: (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~r~0) (<= main_~y~0 20) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) [2022-04-27 12:17:19,048 INFO L899 garLoopResultBuilder]: For program point L47-3(lines 47 59) no Hoare annotation was computed. [2022-04-27 12:17:19,049 INFO L895 garLoopResultBuilder]: At program point L39(line 39) the Hoare annotation is: (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 20) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) [2022-04-27 12:17:19,049 INFO L895 garLoopResultBuilder]: At program point L39-1(line 39) the Hoare annotation is: (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 20) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) [2022-04-27 12:17:19,049 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2022-04-27 12:17:19,049 INFO L895 garLoopResultBuilder]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: (and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|)) [2022-04-27 12:17:19,050 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2022-04-27 12:17:19,050 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-04-27 12:17:19,050 INFO L902 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-27 12:17:19,050 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-27 12:17:19,050 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-04-27 12:17:19,050 INFO L899 garLoopResultBuilder]: For program point L16(lines 16 17) no Hoare annotation was computed. [2022-04-27 12:17:19,050 INFO L899 garLoopResultBuilder]: For program point L15(lines 15 18) no Hoare annotation was computed. [2022-04-27 12:17:19,050 INFO L902 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 14 20) the Hoare annotation is: true [2022-04-27 12:17:19,050 INFO L899 garLoopResultBuilder]: For program point L15-2(lines 14 20) no Hoare annotation was computed. [2022-04-27 12:17:19,050 INFO L899 garLoopResultBuilder]: For program point __VERIFIER_assertEXIT(lines 14 20) no Hoare annotation was computed. [2022-04-27 12:17:19,051 INFO L899 garLoopResultBuilder]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 17) no Hoare annotation was computed. [2022-04-27 12:17:19,057 INFO L356 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:17:19,062 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-27 12:17:19,065 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-27 12:17:19,065 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-27 12:17:19,065 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-27 12:17:19,065 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-27 12:17:19,066 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-27 12:17:19,066 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-27 12:17:19,066 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-27 12:17:19,066 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-27 12:17:19,066 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-27 12:17:19,066 WARN L170 areAnnotationChecker]: L27-1 has no Hoare annotation [2022-04-27 12:17:19,066 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-27 12:17:19,066 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-27 12:17:19,066 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-27 12:17:19,066 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-27 12:17:19,066 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-04-27 12:17:19,066 WARN L170 areAnnotationChecker]: L27-1 has no Hoare annotation [2022-04-27 12:17:19,066 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-27 12:17:19,066 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-27 12:17:19,066 WARN L170 areAnnotationChecker]: L15-2 has no Hoare annotation [2022-04-27 12:17:19,066 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 12:17:19,066 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 12:17:19,067 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-27 12:17:19,067 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:17:19,067 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:17:19,067 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:17:19,067 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:17:19,067 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:17:19,067 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:17:19,067 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 12:17:19,067 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-04-27 12:17:19,067 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-04-27 12:17:19,067 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-27 12:17:19,067 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-27 12:17:19,067 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-27 12:17:19,067 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2022-04-27 12:17:19,067 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2022-04-27 12:17:19,067 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2022-04-27 12:17:19,067 WARN L170 areAnnotationChecker]: L55-1 has no Hoare annotation [2022-04-27 12:17:19,067 WARN L170 areAnnotationChecker]: L64 has no Hoare annotation [2022-04-27 12:17:19,070 WARN L170 areAnnotationChecker]: L64 has no Hoare annotation [2022-04-27 12:17:19,070 WARN L170 areAnnotationChecker]: L47-3 has no Hoare annotation [2022-04-27 12:17:19,070 WARN L170 areAnnotationChecker]: L47-3 has no Hoare annotation [2022-04-27 12:17:19,071 WARN L170 areAnnotationChecker]: L47-3 has no Hoare annotation [2022-04-27 12:17:19,071 WARN L170 areAnnotationChecker]: L55-1 has no Hoare annotation [2022-04-27 12:17:19,071 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-27 12:17:19,071 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-27 12:17:19,071 INFO L163 areAnnotationChecker]: CFG has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-27 12:17:19,079 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 12:17:19 BoogieIcfgContainer [2022-04-27 12:17:19,079 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-27 12:17:19,080 INFO L158 Benchmark]: Toolchain (without parser) took 14308.54ms. Allocated memory was 181.4MB in the beginning and 219.2MB in the end (delta: 37.7MB). Free memory was 130.8MB in the beginning and 174.4MB in the end (delta: -43.6MB). Peak memory consumption was 98.4MB. Max. memory is 8.0GB. [2022-04-27 12:17:19,080 INFO L158 Benchmark]: CDTParser took 0.30ms. Allocated memory is still 181.4MB. Free memory is still 147.0MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-27 12:17:19,080 INFO L158 Benchmark]: CACSL2BoogieTranslator took 268.61ms. Allocated memory is still 181.4MB. Free memory was 130.5MB in the beginning and 155.8MB in the end (delta: -25.3MB). Peak memory consumption was 10.1MB. Max. memory is 8.0GB. [2022-04-27 12:17:19,081 INFO L158 Benchmark]: Boogie Preprocessor took 34.75ms. Allocated memory is still 181.4MB. Free memory was 155.8MB in the beginning and 154.2MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-27 12:17:19,081 INFO L158 Benchmark]: RCFGBuilder took 401.35ms. Allocated memory is still 181.4MB. Free memory was 154.2MB in the beginning and 142.1MB in the end (delta: 12.1MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-27 12:17:19,081 INFO L158 Benchmark]: TraceAbstraction took 13599.59ms. Allocated memory was 181.4MB in the beginning and 219.2MB in the end (delta: 37.7MB). Free memory was 141.6MB in the beginning and 174.4MB in the end (delta: -32.8MB). Peak memory consumption was 109.3MB. Max. memory is 8.0GB. [2022-04-27 12:17:19,082 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.30ms. Allocated memory is still 181.4MB. Free memory is still 147.0MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 268.61ms. Allocated memory is still 181.4MB. Free memory was 130.5MB in the beginning and 155.8MB in the end (delta: -25.3MB). Peak memory consumption was 10.1MB. Max. memory is 8.0GB. * Boogie Preprocessor took 34.75ms. Allocated memory is still 181.4MB. Free memory was 155.8MB in the beginning and 154.2MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 401.35ms. Allocated memory is still 181.4MB. Free memory was 154.2MB in the beginning and 142.1MB in the end (delta: 12.1MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * TraceAbstraction took 13599.59ms. Allocated memory was 181.4MB in the beginning and 219.2MB in the end (delta: 37.7MB). Free memory was 141.6MB in the beginning and 174.4MB in the end (delta: -32.8MB). Peak memory consumption was 109.3MB. 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, 42 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 13.5s, OverallIterations: 7, TraceHistogramMax: 7, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 2.9s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 1.1s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 181 SdHoareTripleChecker+Valid, 0.7s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 142 mSDsluCounter, 941 SdHoareTripleChecker+Invalid, 0.7s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 691 mSDsCounter, 74 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 677 IncrementalHoareTripleChecker+Invalid, 751 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 74 mSolverCounterUnsat, 250 mSDtfsCounter, 677 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 409 GetRequests, 352 SyntacticMatches, 2 SemanticMatches, 55 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 62 ImplicationChecksByTransitivity, 0.3s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=78occurred in iteration=6, InterpolantAutomatonStates: 47, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.3s AutomataMinimizationTime, 7 MinimizatonAttempts, 11 StatesRemovedByMinimization, 3 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 18 LocationsWithAnnotation, 49 PreInvPairs, 79 NumberOfFragments, 228 HoareAnnotationTreeSize, 49 FomulaSimplifications, 0 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 18 FomulaSimplificationsInter, 1068 FormulaSimplificationTreeSizeReductionInter, 1.0s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 6.9s InterpolantComputationTime, 298 NumberOfCodeBlocks, 298 NumberOfCodeBlocksAsserted, 7 NumberOfCheckSat, 408 ConstructedInterpolants, 0 QuantifiedInterpolants, 1044 SizeOfPredicates, 20 NumberOfNonLiveVariables, 745 ConjunctsInSsa, 78 ConjunctsInUnsatCore, 9 InterpolantComputations, 6 PerfectInterpolantSequences, 383/400 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: 47]: Loop Invariant Derived loop invariant: (((q * y + r == x && 1 <= r) && y <= 20) && 1 <= y) && b == a * y - InvariantResult [Line: 38]: Loop Invariant Derived loop invariant: ((q * y + r == x && y <= 20) && 1 <= y) && b == a * y RESULT: Ultimate proved your program to be correct! [2022-04-27 12:17:19,110 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...