/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_valuebound1.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-14 15:15:17,122 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-14 15:15:17,124 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-14 15:15:17,143 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-14 15:15:17,143 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-14 15:15:17,144 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-14 15:15:17,144 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-14 15:15:17,146 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-14 15:15:17,151 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-14 15:15:17,153 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-14 15:15:17,153 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-14 15:15:17,154 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-14 15:15:17,154 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-14 15:15:17,155 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-14 15:15:17,156 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-14 15:15:17,156 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-14 15:15:17,157 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-14 15:15:17,157 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-14 15:15:17,158 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-14 15:15:17,159 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-14 15:15:17,160 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-14 15:15:17,160 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-14 15:15:17,161 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-14 15:15:17,162 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-14 15:15:17,162 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-14 15:15:17,164 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-14 15:15:17,164 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-14 15:15:17,164 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-14 15:15:17,165 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-14 15:15:17,165 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-14 15:15:17,165 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-14 15:15:17,166 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-14 15:15:17,166 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-14 15:15:17,166 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-14 15:15:17,167 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-14 15:15:17,167 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-14 15:15:17,168 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-14 15:15:17,168 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-14 15:15:17,168 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-14 15:15:17,168 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-14 15:15:17,169 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-14 15:15:17,169 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-14 15:15:17,170 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2022-04-14 15:15:17,184 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-14 15:15:17,185 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-14 15:15:17,185 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-14 15:15:17,185 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-14 15:15:17,186 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-14 15:15:17,187 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-14 15:15:17,188 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-14 15:15:17,188 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-14 15:15:17,188 INFO L138 SettingsManager]: * Use SBE=true [2022-04-14 15:15:17,188 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-14 15:15:17,188 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-14 15:15:17,188 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-14 15:15:17,189 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-14 15:15:17,189 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-14 15:15:17,189 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-14 15:15:17,189 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-14 15:15:17,189 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-14 15:15:17,189 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-14 15:15:17,189 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-14 15:15:17,189 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-14 15:15:17,189 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-14 15:15:17,189 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-14 15:15:17,189 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-14 15:15:17,189 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-14 15:15:17,190 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 15:15:17,190 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-14 15:15:17,190 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-14 15:15:17,190 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-14 15:15:17,190 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-14 15:15:17,190 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-14 15:15:17,190 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-04-14 15:15:17,190 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-14 15:15:17,190 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-14 15:15:17,190 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-14 15:15:17,365 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-14 15:15:17,382 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-14 15:15:17,384 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-14 15:15:17,384 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-14 15:15:17,390 INFO L275 PluginConnector]: CDTParser initialized [2022-04-14 15:15:17,391 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound1.c [2022-04-14 15:15:17,450 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/ae5f1cb70/c34136c5fab14cbb96dde5367061931a/FLAG83d9a745c [2022-04-14 15:15:17,755 INFO L306 CDTParser]: Found 1 translation units. [2022-04-14 15:15:17,756 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound1.c [2022-04-14 15:15:17,760 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/ae5f1cb70/c34136c5fab14cbb96dde5367061931a/FLAG83d9a745c [2022-04-14 15:15:17,768 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/ae5f1cb70/c34136c5fab14cbb96dde5367061931a [2022-04-14 15:15:17,769 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-14 15:15:17,770 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-14 15:15:17,771 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-14 15:15:17,771 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-14 15:15:17,773 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-14 15:15:17,774 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 03:15:17" (1/1) ... [2022-04-14 15:15:17,774 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6834e4e4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:15:17, skipping insertion in model container [2022-04-14 15:15:17,775 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 03:15:17" (1/1) ... [2022-04-14 15:15:17,779 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-14 15:15:17,787 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-14 15:15:17,962 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_valuebound1.c[576,589] [2022-04-14 15:15:17,985 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 15:15:17,990 INFO L203 MainTranslator]: Completed pre-run [2022-04-14 15:15:17,997 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_valuebound1.c[576,589] [2022-04-14 15:15:18,002 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 15:15:18,010 INFO L208 MainTranslator]: Completed translation [2022-04-14 15:15:18,010 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:15:18 WrapperNode [2022-04-14 15:15:18,010 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-14 15:15:18,011 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-14 15:15:18,011 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-14 15:15:18,011 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-14 15:15:18,032 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:15:18" (1/1) ... [2022-04-14 15:15:18,032 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:15:18" (1/1) ... [2022-04-14 15:15:18,036 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:15:18" (1/1) ... [2022-04-14 15:15:18,036 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:15:18" (1/1) ... [2022-04-14 15:15:18,043 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:15:18" (1/1) ... [2022-04-14 15:15:18,050 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:15:18" (1/1) ... [2022-04-14 15:15:18,051 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:15:18" (1/1) ... [2022-04-14 15:15:18,052 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-14 15:15:18,052 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-14 15:15:18,052 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-14 15:15:18,052 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-14 15:15:18,055 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:15:18" (1/1) ... [2022-04-14 15:15:18,060 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 15:15:18,066 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:15:18,109 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-14 15:15:18,174 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-14 15:15:18,208 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-14 15:15:18,208 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-14 15:15:18,208 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-14 15:15:18,209 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-14 15:15:18,210 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-14 15:15:18,210 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-14 15:15:18,210 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-14 15:15:18,210 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-14 15:15:18,210 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-14 15:15:18,210 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-14 15:15:18,211 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-14 15:15:18,211 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-14 15:15:18,211 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-14 15:15:18,211 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-14 15:15:18,211 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-14 15:15:18,211 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-14 15:15:18,211 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-14 15:15:18,211 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-14 15:15:18,211 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-14 15:15:18,211 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-14 15:15:18,255 INFO L234 CfgBuilder]: Building ICFG [2022-04-14 15:15:18,257 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-14 15:15:18,432 INFO L275 CfgBuilder]: Performing block encoding [2022-04-14 15:15:18,437 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-14 15:15:18,437 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-14 15:15:18,438 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 03:15:18 BoogieIcfgContainer [2022-04-14 15:15:18,438 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-14 15:15:18,439 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-14 15:15:18,439 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-14 15:15:18,457 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-14 15:15:18,457 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 14.04 03:15:17" (1/3) ... [2022-04-14 15:15:18,458 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3cbcece5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 03:15:18, skipping insertion in model container [2022-04-14 15:15:18,458 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:15:18" (2/3) ... [2022-04-14 15:15:18,458 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3cbcece5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 03:15:18, skipping insertion in model container [2022-04-14 15:15:18,458 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 03:15:18" (3/3) ... [2022-04-14 15:15:18,459 INFO L111 eAbstractionObserver]: Analyzing ICFG cohendiv-ll_valuebound1.c [2022-04-14 15:15:18,462 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-14 15:15:18,462 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-14 15:15:18,499 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-14 15:15:18,513 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-14 15:15:18,513 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-14 15:15:18,527 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-14 15:15:18,531 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-14 15:15:18,531 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:15:18,531 INFO L499 BasicCegarLoop]: 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-14 15:15:18,532 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:15:18,535 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:15:18,535 INFO L85 PathProgramCache]: Analyzing trace with hash -1768835633, now seen corresponding path program 1 times [2022-04-14 15:15:18,542 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:15:18,542 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1047082011] [2022-04-14 15:15:18,543 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:18,543 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:15:18,628 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:18,670 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-14 15:15:18,672 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:18,683 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-14 15:15:18,683 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume true; {42#true} is VALID [2022-04-14 15:15:18,683 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {42#true} {42#true} #98#return; {42#true} is VALID [2022-04-14 15:15:18,684 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-14 15:15:18,685 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:18,689 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-14 15:15:18,690 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-14 15:15:18,690 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-14 15:15:18,690 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {42#true} #78#return; {43#false} is VALID [2022-04-14 15:15:18,690 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-14 15:15:18,692 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:18,695 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-14 15:15:18,696 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-14 15:15:18,696 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-14 15:15:18,696 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #80#return; {43#false} is VALID [2022-04-14 15:15:18,696 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-14 15:15:18,698 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:18,702 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-14 15:15:18,702 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-14 15:15:18,702 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-14 15:15:18,702 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #82#return; {43#false} is VALID [2022-04-14 15:15:18,703 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-14 15:15:18,703 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-14 15:15:18,704 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} assume true; {42#true} is VALID [2022-04-14 15:15:18,704 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} #98#return; {42#true} is VALID [2022-04-14 15:15:18,704 INFO L272 TraceCheckUtils]: 4: Hoare triple {42#true} call #t~ret6 := main(); {42#true} is VALID [2022-04-14 15:15:18,704 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-14 15:15:18,704 INFO L272 TraceCheckUtils]: 6: Hoare triple {42#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {42#true} is VALID [2022-04-14 15:15:18,704 INFO L290 TraceCheckUtils]: 7: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-14 15:15:18,705 INFO L290 TraceCheckUtils]: 8: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-14 15:15:18,705 INFO L290 TraceCheckUtils]: 9: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-14 15:15:18,705 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {43#false} {42#true} #78#return; {43#false} is VALID [2022-04-14 15:15:18,705 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-14 15:15:18,705 INFO L272 TraceCheckUtils]: 12: Hoare triple {43#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {42#true} is VALID [2022-04-14 15:15:18,706 INFO L290 TraceCheckUtils]: 13: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-14 15:15:18,706 INFO L290 TraceCheckUtils]: 14: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-14 15:15:18,706 INFO L290 TraceCheckUtils]: 15: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-14 15:15:18,706 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {43#false} {43#false} #80#return; {43#false} is VALID [2022-04-14 15:15:18,706 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-14 15:15:18,707 INFO L290 TraceCheckUtils]: 18: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-14 15:15:18,707 INFO L290 TraceCheckUtils]: 19: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-14 15:15:18,707 INFO L290 TraceCheckUtils]: 20: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-14 15:15:18,707 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {43#false} {43#false} #82#return; {43#false} is VALID [2022-04-14 15:15:18,707 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-14 15:15:18,708 INFO L290 TraceCheckUtils]: 23: Hoare triple {43#false} assume false; {43#false} is VALID [2022-04-14 15:15:18,708 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-14 15:15:18,708 INFO L290 TraceCheckUtils]: 25: Hoare triple {43#false} ~cond := #in~cond; {43#false} is VALID [2022-04-14 15:15:18,708 INFO L290 TraceCheckUtils]: 26: Hoare triple {43#false} assume 0 == ~cond; {43#false} is VALID [2022-04-14 15:15:18,708 INFO L290 TraceCheckUtils]: 27: Hoare triple {43#false} assume !false; {43#false} is VALID [2022-04-14 15:15:18,709 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-14 15:15:18,709 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:15:18,709 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1047082011] [2022-04-14 15:15:18,710 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1047082011] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 15:15:18,710 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 15:15:18,710 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-14 15:15:18,711 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1168702598] [2022-04-14 15:15:18,711 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 15:15:18,715 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-14 15:15:18,716 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:15:18,718 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-14 15:15:18,739 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-14 15:15:18,739 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-14 15:15:18,739 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:15:18,751 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-14 15:15:18,752 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-14 15:15:18,753 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-14 15:15:18,871 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:18,871 INFO L93 Difference]: Finished difference Result 71 states and 110 transitions. [2022-04-14 15:15:18,871 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-14 15:15:18,872 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-14 15:15:18,872 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:15:18,873 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-14 15:15:18,880 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-14 15:15:18,880 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-14 15:15:18,886 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 110 transitions. [2022-04-14 15:15:18,886 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 110 transitions. [2022-04-14 15:15:18,994 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-14 15:15:19,000 INFO L225 Difference]: With dead ends: 71 [2022-04-14 15:15:19,000 INFO L226 Difference]: Without dead ends: 34 [2022-04-14 15:15:19,003 INFO L912 BasicCegarLoop]: 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-14 15:15:19,007 INFO L913 BasicCegarLoop]: 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-14 15:15:19,008 INFO L914 BasicCegarLoop]: 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-14 15:15:19,018 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-14 15:15:19,028 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2022-04-14 15:15:19,028 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:15:19,028 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-14 15:15:19,029 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-14 15:15:19,029 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-14 15:15:19,032 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:19,032 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-14 15:15:19,032 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-14 15:15:19,033 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:19,033 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:19,033 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-14 15:15:19,034 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-14 15:15:19,036 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:19,036 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-14 15:15:19,036 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-14 15:15:19,037 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:19,037 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:19,037 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:15:19,037 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:15:19,038 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-14 15:15:19,039 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 43 transitions. [2022-04-14 15:15:19,040 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 43 transitions. Word has length 28 [2022-04-14 15:15:19,040 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:15:19,040 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 43 transitions. [2022-04-14 15:15:19,040 INFO L479 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-14 15:15:19,041 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-14 15:15:19,041 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-14 15:15:19,041 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:15:19,041 INFO L499 BasicCegarLoop]: 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-14 15:15:19,041 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-14 15:15:19,042 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:15:19,042 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:15:19,042 INFO L85 PathProgramCache]: Analyzing trace with hash 1378913883, now seen corresponding path program 1 times [2022-04-14 15:15:19,042 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:15:19,042 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1572693344] [2022-04-14 15:15:19,042 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:19,043 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:15:19,065 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:15:19,066 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1612724647] [2022-04-14 15:15:19,066 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:19,066 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:15:19,066 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:15:19,067 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 15:15:19,113 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-14 15:15:19,128 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:19,129 INFO L263 TraceCheckSpWp]: Trace formula consists of 92 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-14 15:15:19,138 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:19,140 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:15:19,431 INFO L272 TraceCheckUtils]: 0: Hoare triple {284#true} call ULTIMATE.init(); {284#true} is VALID [2022-04-14 15:15:19,431 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-14 15:15:19,431 INFO L290 TraceCheckUtils]: 2: Hoare triple {284#true} assume true; {284#true} is VALID [2022-04-14 15:15:19,431 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {284#true} {284#true} #98#return; {284#true} is VALID [2022-04-14 15:15:19,431 INFO L272 TraceCheckUtils]: 4: Hoare triple {284#true} call #t~ret6 := main(); {284#true} is VALID [2022-04-14 15:15:19,434 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-14 15:15:19,435 INFO L272 TraceCheckUtils]: 6: Hoare triple {284#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {284#true} is VALID [2022-04-14 15:15:19,435 INFO L290 TraceCheckUtils]: 7: Hoare triple {284#true} ~cond := #in~cond; {284#true} is VALID [2022-04-14 15:15:19,435 INFO L290 TraceCheckUtils]: 8: Hoare triple {284#true} assume !(0 == ~cond); {284#true} is VALID [2022-04-14 15:15:19,435 INFO L290 TraceCheckUtils]: 9: Hoare triple {284#true} assume true; {284#true} is VALID [2022-04-14 15:15:19,436 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {284#true} {284#true} #78#return; {284#true} is VALID [2022-04-14 15:15:19,436 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-14 15:15:19,438 INFO L272 TraceCheckUtils]: 12: Hoare triple {284#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {284#true} is VALID [2022-04-14 15:15:19,439 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-14 15:15:19,439 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-14 15:15:19,440 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-14 15:15:19,440 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 1))} is VALID [2022-04-14 15:15:19,441 INFO L272 TraceCheckUtils]: 17: Hoare triple {339#(and (<= 0 main_~y~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {284#true} is VALID [2022-04-14 15:15:19,441 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-14 15:15:19,441 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-14 15:15:19,442 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-14 15:15:19,442 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {332#(not (= |assume_abort_if_not_#in~cond| 0))} {339#(and (<= 0 main_~y~0) (<= main_~y~0 1))} #82#return; {355#(and (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:19,443 INFO L290 TraceCheckUtils]: 22: Hoare triple {355#(and (<= 1 main_~y~0) (<= main_~y~0 1))} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {359#(and (= main_~a~0 0) (= main_~b~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:19,443 INFO L290 TraceCheckUtils]: 23: Hoare triple {359#(and (= main_~a~0 0) (= main_~b~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} assume !false; {359#(and (= main_~a~0 0) (= main_~b~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:19,444 INFO L272 TraceCheckUtils]: 24: Hoare triple {359#(and (= main_~a~0 0) (= main_~b~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {366#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:15:19,445 INFO L290 TraceCheckUtils]: 25: Hoare triple {366#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {370#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:15:19,445 INFO L290 TraceCheckUtils]: 26: Hoare triple {370#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {285#false} is VALID [2022-04-14 15:15:19,445 INFO L290 TraceCheckUtils]: 27: Hoare triple {285#false} assume !false; {285#false} is VALID [2022-04-14 15:15:19,446 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-14 15:15:19,446 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 15:15:19,446 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:15:19,446 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1572693344] [2022-04-14 15:15:19,447 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:15:19,447 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1612724647] [2022-04-14 15:15:19,450 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1612724647] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 15:15:19,450 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 15:15:19,450 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-14 15:15:19,451 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1282784510] [2022-04-14 15:15:19,452 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 15:15:19,453 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-14 15:15:19,453 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:15:19,454 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-14 15:15:19,470 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-14 15:15:19,471 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-14 15:15:19,472 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:15:19,472 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-14 15:15:19,472 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-04-14 15:15:19,473 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-14 15:15:19,822 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:19,823 INFO L93 Difference]: Finished difference Result 45 states and 56 transitions. [2022-04-14 15:15:19,823 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-14 15:15:19,823 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-14 15:15:19,823 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:15:19,823 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-14 15:15:19,826 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 56 transitions. [2022-04-14 15:15:19,826 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-14 15:15:19,827 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 56 transitions. [2022-04-14 15:15:19,828 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 56 transitions. [2022-04-14 15:15:19,868 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:15:19,869 INFO L225 Difference]: With dead ends: 45 [2022-04-14 15:15:19,869 INFO L226 Difference]: Without dead ends: 43 [2022-04-14 15:15:19,870 INFO L912 BasicCegarLoop]: 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-14 15:15:19,870 INFO L913 BasicCegarLoop]: 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-14 15:15:19,871 INFO L914 BasicCegarLoop]: 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-14 15:15:19,871 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-14 15:15:19,885 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 40. [2022-04-14 15:15:19,885 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:15:19,886 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-14 15:15:19,886 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-14 15:15:19,886 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-14 15:15:19,888 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:19,889 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-14 15:15:19,889 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-14 15:15:19,889 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:19,889 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:19,890 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-14 15:15:19,890 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-14 15:15:19,892 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:19,892 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-14 15:15:19,892 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-14 15:15:19,893 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:19,893 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:19,893 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:15:19,893 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:15:19,893 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-14 15:15:19,895 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 49 transitions. [2022-04-14 15:15:19,895 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 49 transitions. Word has length 28 [2022-04-14 15:15:19,895 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:15:19,895 INFO L478 AbstractCegarLoop]: Abstraction has 40 states and 49 transitions. [2022-04-14 15:15:19,895 INFO L479 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-14 15:15:19,895 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 49 transitions. [2022-04-14 15:15:19,898 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-14 15:15:19,898 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:15:19,898 INFO L499 BasicCegarLoop]: 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-14 15:15:19,917 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-14 15:15:20,112 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:15:20,113 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:15:20,113 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:15:20,114 INFO L85 PathProgramCache]: Analyzing trace with hash -1928335320, now seen corresponding path program 1 times [2022-04-14 15:15:20,114 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:15:20,114 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1093371487] [2022-04-14 15:15:20,114 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:20,114 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:15:20,129 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:15:20,130 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [420435770] [2022-04-14 15:15:20,130 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:20,130 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:15:20,130 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:15:20,131 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 15:15:20,152 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-14 15:15:20,176 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:20,177 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-14 15:15:20,199 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:20,200 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:15:20,399 INFO L272 TraceCheckUtils]: 0: Hoare triple {595#true} call ULTIMATE.init(); {595#true} is VALID [2022-04-14 15:15:20,399 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-14 15:15:20,399 INFO L290 TraceCheckUtils]: 2: Hoare triple {595#true} assume true; {595#true} is VALID [2022-04-14 15:15:20,400 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {595#true} {595#true} #98#return; {595#true} is VALID [2022-04-14 15:15:20,400 INFO L272 TraceCheckUtils]: 4: Hoare triple {595#true} call #t~ret6 := main(); {595#true} is VALID [2022-04-14 15:15:20,400 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-14 15:15:20,400 INFO L272 TraceCheckUtils]: 6: Hoare triple {595#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {595#true} is VALID [2022-04-14 15:15:20,400 INFO L290 TraceCheckUtils]: 7: Hoare triple {595#true} ~cond := #in~cond; {595#true} is VALID [2022-04-14 15:15:20,400 INFO L290 TraceCheckUtils]: 8: Hoare triple {595#true} assume !(0 == ~cond); {595#true} is VALID [2022-04-14 15:15:20,400 INFO L290 TraceCheckUtils]: 9: Hoare triple {595#true} assume true; {595#true} is VALID [2022-04-14 15:15:20,401 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {595#true} {595#true} #78#return; {595#true} is VALID [2022-04-14 15:15:20,401 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-14 15:15:20,401 INFO L272 TraceCheckUtils]: 12: Hoare triple {595#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {595#true} is VALID [2022-04-14 15:15:20,401 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-14 15:15:20,401 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-14 15:15:20,402 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-14 15:15:20,403 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 1))} is VALID [2022-04-14 15:15:20,403 INFO L272 TraceCheckUtils]: 17: Hoare triple {650#(and (<= 0 main_~y~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {595#true} is VALID [2022-04-14 15:15:20,403 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-14 15:15:20,403 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-14 15:15:20,404 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-14 15:15:20,404 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {643#(not (= |assume_abort_if_not_#in~cond| 0))} {650#(and (<= 0 main_~y~0) (<= main_~y~0 1))} #82#return; {666#(and (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:20,405 INFO L290 TraceCheckUtils]: 22: Hoare triple {666#(and (<= 1 main_~y~0) (<= main_~y~0 1))} ~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) (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:20,405 INFO L290 TraceCheckUtils]: 23: Hoare triple {670#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} assume !false; {670#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:20,406 INFO L272 TraceCheckUtils]: 24: Hoare triple {670#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {595#true} is VALID [2022-04-14 15:15:20,406 INFO L290 TraceCheckUtils]: 25: Hoare triple {595#true} ~cond := #in~cond; {595#true} is VALID [2022-04-14 15:15:20,406 INFO L290 TraceCheckUtils]: 26: Hoare triple {595#true} assume !(0 == ~cond); {595#true} is VALID [2022-04-14 15:15:20,406 INFO L290 TraceCheckUtils]: 27: Hoare triple {595#true} assume true; {595#true} is VALID [2022-04-14 15:15:20,407 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {595#true} {670#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} #84#return; {670#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:20,407 INFO L272 TraceCheckUtils]: 29: Hoare triple {670#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1))} 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-14 15:15:20,408 INFO L290 TraceCheckUtils]: 30: Hoare triple {692#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {696#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:15:20,408 INFO L290 TraceCheckUtils]: 31: Hoare triple {696#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {596#false} is VALID [2022-04-14 15:15:20,408 INFO L290 TraceCheckUtils]: 32: Hoare triple {596#false} assume !false; {596#false} is VALID [2022-04-14 15:15:20,409 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-14 15:15:20,409 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 15:15:20,409 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:15:20,409 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1093371487] [2022-04-14 15:15:20,409 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:15:20,409 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [420435770] [2022-04-14 15:15:20,409 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [420435770] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 15:15:20,409 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 15:15:20,409 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-14 15:15:20,410 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1666215446] [2022-04-14 15:15:20,410 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 15:15:20,410 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-14 15:15:20,410 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:15:20,411 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-14 15:15:20,430 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-14 15:15:20,430 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-14 15:15:20,430 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:15:20,430 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-14 15:15:20,430 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-04-14 15:15:20,431 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-14 15:15:20,820 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:20,820 INFO L93 Difference]: Finished difference Result 57 states and 72 transitions. [2022-04-14 15:15:20,820 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-14 15:15:20,821 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-14 15:15:20,821 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:15:20,821 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-14 15:15:20,823 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 69 transitions. [2022-04-14 15:15:20,823 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-14 15:15:20,824 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 69 transitions. [2022-04-14 15:15:20,825 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 69 transitions. [2022-04-14 15:15:20,880 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-14 15:15:20,881 INFO L225 Difference]: With dead ends: 57 [2022-04-14 15:15:20,881 INFO L226 Difference]: Without dead ends: 54 [2022-04-14 15:15:20,881 INFO L912 BasicCegarLoop]: 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-14 15:15:20,882 INFO L913 BasicCegarLoop]: 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-14 15:15:20,882 INFO L914 BasicCegarLoop]: 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-14 15:15:20,883 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2022-04-14 15:15:20,902 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 53. [2022-04-14 15:15:20,902 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:15:20,902 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-14 15:15:20,903 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-14 15:15:20,903 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-14 15:15:20,905 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:20,905 INFO L93 Difference]: Finished difference Result 54 states and 68 transitions. [2022-04-14 15:15:20,905 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 68 transitions. [2022-04-14 15:15:20,906 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:20,906 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:20,906 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-14 15:15:20,907 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-14 15:15:20,909 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:20,909 INFO L93 Difference]: Finished difference Result 54 states and 68 transitions. [2022-04-14 15:15:20,909 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 68 transitions. [2022-04-14 15:15:20,909 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:20,910 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:20,910 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:15:20,910 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:15:20,910 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-14 15:15:20,932 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 67 transitions. [2022-04-14 15:15:20,933 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 67 transitions. Word has length 33 [2022-04-14 15:15:20,933 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:15:20,933 INFO L478 AbstractCegarLoop]: Abstraction has 53 states and 67 transitions. [2022-04-14 15:15:20,933 INFO L479 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-14 15:15:20,933 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 67 transitions. [2022-04-14 15:15:20,934 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-14 15:15:20,934 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:15:20,934 INFO L499 BasicCegarLoop]: 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-14 15:15:20,952 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-14 15:15:21,150 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-14 15:15:21,150 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:15:21,151 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:15:21,151 INFO L85 PathProgramCache]: Analyzing trace with hash -1297647068, now seen corresponding path program 1 times [2022-04-14 15:15:21,151 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:15:21,151 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1834139603] [2022-04-14 15:15:21,151 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:21,151 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:15:21,164 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:15:21,165 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1342837198] [2022-04-14 15:15:21,165 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:21,165 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:15:21,165 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:15:21,165 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 15:15:21,166 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-14 15:15:21,198 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:21,199 INFO L263 TraceCheckSpWp]: Trace formula consists of 116 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-14 15:15:21,207 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:21,208 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:15:21,402 INFO L272 TraceCheckUtils]: 0: Hoare triple {981#true} call ULTIMATE.init(); {981#true} is VALID [2022-04-14 15:15:21,402 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-14 15:15:21,402 INFO L290 TraceCheckUtils]: 2: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-14 15:15:21,402 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {981#true} {981#true} #98#return; {981#true} is VALID [2022-04-14 15:15:21,402 INFO L272 TraceCheckUtils]: 4: Hoare triple {981#true} call #t~ret6 := main(); {981#true} is VALID [2022-04-14 15:15:21,402 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-14 15:15:21,402 INFO L272 TraceCheckUtils]: 6: Hoare triple {981#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {981#true} is VALID [2022-04-14 15:15:21,402 INFO L290 TraceCheckUtils]: 7: Hoare triple {981#true} ~cond := #in~cond; {981#true} is VALID [2022-04-14 15:15:21,403 INFO L290 TraceCheckUtils]: 8: Hoare triple {981#true} assume !(0 == ~cond); {981#true} is VALID [2022-04-14 15:15:21,403 INFO L290 TraceCheckUtils]: 9: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-14 15:15:21,403 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {981#true} {981#true} #78#return; {981#true} is VALID [2022-04-14 15:15:21,403 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-14 15:15:21,403 INFO L272 TraceCheckUtils]: 12: Hoare triple {981#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {981#true} is VALID [2022-04-14 15:15:21,403 INFO L290 TraceCheckUtils]: 13: Hoare triple {981#true} ~cond := #in~cond; {1025#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 15:15:21,404 INFO L290 TraceCheckUtils]: 14: Hoare triple {1025#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1029#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 15:15:21,404 INFO L290 TraceCheckUtils]: 15: Hoare triple {1029#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1029#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 15:15:21,405 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1029#(not (= |assume_abort_if_not_#in~cond| 0))} {981#true} #80#return; {1036#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:21,405 INFO L272 TraceCheckUtils]: 17: Hoare triple {1036#(and (<= 0 main_~y~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {981#true} is VALID [2022-04-14 15:15:21,405 INFO L290 TraceCheckUtils]: 18: Hoare triple {981#true} ~cond := #in~cond; {1025#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 15:15:21,405 INFO L290 TraceCheckUtils]: 19: Hoare triple {1025#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1029#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 15:15:21,406 INFO L290 TraceCheckUtils]: 20: Hoare triple {1029#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1029#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 15:15:21,406 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1029#(not (= |assume_abort_if_not_#in~cond| 0))} {1036#(and (<= 0 main_~y~0) (<= main_~y~0 1))} #82#return; {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:21,407 INFO L290 TraceCheckUtils]: 22: Hoare triple {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:21,407 INFO L290 TraceCheckUtils]: 23: Hoare triple {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} assume !false; {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:21,407 INFO L272 TraceCheckUtils]: 24: Hoare triple {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {981#true} is VALID [2022-04-14 15:15:21,407 INFO L290 TraceCheckUtils]: 25: Hoare triple {981#true} ~cond := #in~cond; {981#true} is VALID [2022-04-14 15:15:21,407 INFO L290 TraceCheckUtils]: 26: Hoare triple {981#true} assume !(0 == ~cond); {981#true} is VALID [2022-04-14 15:15:21,407 INFO L290 TraceCheckUtils]: 27: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-14 15:15:21,408 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {981#true} {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} #84#return; {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:21,408 INFO L272 TraceCheckUtils]: 29: Hoare triple {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {981#true} is VALID [2022-04-14 15:15:21,408 INFO L290 TraceCheckUtils]: 30: Hoare triple {981#true} ~cond := #in~cond; {981#true} is VALID [2022-04-14 15:15:21,408 INFO L290 TraceCheckUtils]: 31: Hoare triple {981#true} assume !(0 == ~cond); {981#true} is VALID [2022-04-14 15:15:21,408 INFO L290 TraceCheckUtils]: 32: Hoare triple {981#true} assume true; {981#true} is VALID [2022-04-14 15:15:21,409 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {981#true} {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} #86#return; {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:21,409 INFO L290 TraceCheckUtils]: 34: Hoare triple {1052#(and (<= 1 main_~y~0) (<= main_~y~0 1))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1092#(and (= main_~a~0 1) (= main_~b~0 main_~y~0) (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:21,410 INFO L290 TraceCheckUtils]: 35: Hoare triple {1092#(and (= main_~a~0 1) (= main_~b~0 main_~y~0) (<= 1 main_~y~0) (<= main_~y~0 1))} assume !false; {1092#(and (= main_~a~0 1) (= main_~b~0 main_~y~0) (<= 1 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:21,410 INFO L272 TraceCheckUtils]: 36: Hoare triple {1092#(and (= main_~a~0 1) (= main_~b~0 main_~y~0) (<= 1 main_~y~0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1099#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:15:21,411 INFO L290 TraceCheckUtils]: 37: Hoare triple {1099#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1103#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:15:21,411 INFO L290 TraceCheckUtils]: 38: Hoare triple {1103#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {982#false} is VALID [2022-04-14 15:15:21,411 INFO L290 TraceCheckUtils]: 39: Hoare triple {982#false} assume !false; {982#false} is VALID [2022-04-14 15:15:21,411 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 10 proven. 0 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-04-14 15:15:21,411 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 15:15:21,411 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:15:21,412 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1834139603] [2022-04-14 15:15:21,412 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:15:21,412 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1342837198] [2022-04-14 15:15:21,412 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1342837198] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 15:15:21,412 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 15:15:21,412 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-14 15:15:21,412 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [837435027] [2022-04-14 15:15:21,412 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 15:15:21,413 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 40 [2022-04-14 15:15:21,413 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:15:21,413 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 15:15:21,432 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:15:21,433 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-14 15:15:21,433 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:15:21,433 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-14 15:15:21,433 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-04-14 15:15:21,433 INFO L87 Difference]: Start difference. First operand 53 states and 67 transitions. Second operand has 9 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 15:15:21,833 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:21,833 INFO L93 Difference]: Finished difference Result 79 states and 105 transitions. [2022-04-14 15:15:21,833 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-14 15:15:21,833 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 40 [2022-04-14 15:15:21,834 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:15:21,834 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 15:15:21,835 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 69 transitions. [2022-04-14 15:15:21,835 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 15:15:21,837 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 69 transitions. [2022-04-14 15:15:21,837 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 69 transitions. [2022-04-14 15:15:21,886 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-14 15:15:21,888 INFO L225 Difference]: With dead ends: 79 [2022-04-14 15:15:21,888 INFO L226 Difference]: Without dead ends: 77 [2022-04-14 15:15:21,888 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 41 GetRequests, 32 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-14 15:15:21,889 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 22 mSDsluCounter, 160 mSDsCounter, 0 mSdLazyCounter, 177 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 201 SdHoareTripleChecker+Invalid, 181 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 177 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 15:15:21,889 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [33 Valid, 201 Invalid, 181 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 177 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 15:15:21,889 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 77 states. [2022-04-14 15:15:21,920 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 77 to 70. [2022-04-14 15:15:21,920 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:15:21,921 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-14 15:15:21,921 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-14 15:15:21,922 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-14 15:15:21,925 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:21,925 INFO L93 Difference]: Finished difference Result 77 states and 103 transitions. [2022-04-14 15:15:21,925 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 103 transitions. [2022-04-14 15:15:21,925 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:21,925 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:21,926 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-14 15:15:21,926 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-14 15:15:21,929 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:21,929 INFO L93 Difference]: Finished difference Result 77 states and 103 transitions. [2022-04-14 15:15:21,929 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 103 transitions. [2022-04-14 15:15:21,929 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:21,929 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:21,930 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:15:21,930 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:15:21,930 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-14 15:15:21,932 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 92 transitions. [2022-04-14 15:15:21,932 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 92 transitions. Word has length 40 [2022-04-14 15:15:21,932 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:15:21,932 INFO L478 AbstractCegarLoop]: Abstraction has 70 states and 92 transitions. [2022-04-14 15:15:21,933 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 15:15:21,933 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 92 transitions. [2022-04-14 15:15:21,933 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-14 15:15:21,933 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:15:21,934 INFO L499 BasicCegarLoop]: 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-14 15:15:21,950 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-14 15:15:22,146 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:15:22,146 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:15:22,149 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:15:22,149 INFO L85 PathProgramCache]: Analyzing trace with hash -391974204, now seen corresponding path program 1 times [2022-04-14 15:15:22,149 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:15:22,150 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1911572757] [2022-04-14 15:15:22,155 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:22,155 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:15:22,178 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:15:22,178 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1475262205] [2022-04-14 15:15:22,178 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:22,178 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:15:22,178 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:15:22,184 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 15:15:22,185 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-14 15:15:22,223 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:22,223 INFO L263 TraceCheckSpWp]: Trace formula consists of 134 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-14 15:15:22,231 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:22,232 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:15:22,385 INFO L272 TraceCheckUtils]: 0: Hoare triple {1498#true} call ULTIMATE.init(); {1498#true} is VALID [2022-04-14 15:15:22,385 INFO L290 TraceCheckUtils]: 1: Hoare triple {1498#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); {1498#true} is VALID [2022-04-14 15:15:22,385 INFO L290 TraceCheckUtils]: 2: Hoare triple {1498#true} assume true; {1498#true} is VALID [2022-04-14 15:15:22,385 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1498#true} {1498#true} #98#return; {1498#true} is VALID [2022-04-14 15:15:22,385 INFO L272 TraceCheckUtils]: 4: Hoare triple {1498#true} call #t~ret6 := main(); {1498#true} is VALID [2022-04-14 15:15:22,386 INFO L290 TraceCheckUtils]: 5: Hoare triple {1498#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; {1498#true} is VALID [2022-04-14 15:15:22,386 INFO L272 TraceCheckUtils]: 6: Hoare triple {1498#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {1498#true} is VALID [2022-04-14 15:15:22,386 INFO L290 TraceCheckUtils]: 7: Hoare triple {1498#true} ~cond := #in~cond; {1498#true} is VALID [2022-04-14 15:15:22,386 INFO L290 TraceCheckUtils]: 8: Hoare triple {1498#true} assume !(0 == ~cond); {1498#true} is VALID [2022-04-14 15:15:22,386 INFO L290 TraceCheckUtils]: 9: Hoare triple {1498#true} assume true; {1498#true} is VALID [2022-04-14 15:15:22,386 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1498#true} {1498#true} #78#return; {1498#true} is VALID [2022-04-14 15:15:22,386 INFO L290 TraceCheckUtils]: 11: Hoare triple {1498#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1498#true} is VALID [2022-04-14 15:15:22,386 INFO L272 TraceCheckUtils]: 12: Hoare triple {1498#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {1498#true} is VALID [2022-04-14 15:15:22,386 INFO L290 TraceCheckUtils]: 13: Hoare triple {1498#true} ~cond := #in~cond; {1498#true} is VALID [2022-04-14 15:15:22,386 INFO L290 TraceCheckUtils]: 14: Hoare triple {1498#true} assume !(0 == ~cond); {1498#true} is VALID [2022-04-14 15:15:22,386 INFO L290 TraceCheckUtils]: 15: Hoare triple {1498#true} assume true; {1498#true} is VALID [2022-04-14 15:15:22,387 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1498#true} {1498#true} #80#return; {1498#true} is VALID [2022-04-14 15:15:22,387 INFO L272 TraceCheckUtils]: 17: Hoare triple {1498#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1498#true} is VALID [2022-04-14 15:15:22,387 INFO L290 TraceCheckUtils]: 18: Hoare triple {1498#true} ~cond := #in~cond; {1557#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 15:15:22,387 INFO L290 TraceCheckUtils]: 19: Hoare triple {1557#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1561#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 15:15:22,388 INFO L290 TraceCheckUtils]: 20: Hoare triple {1561#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1561#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 15:15:22,388 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1561#(not (= |assume_abort_if_not_#in~cond| 0))} {1498#true} #82#return; {1568#(<= 1 main_~y~0)} is VALID [2022-04-14 15:15:22,389 INFO L290 TraceCheckUtils]: 22: Hoare triple {1568#(<= 1 main_~y~0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1568#(<= 1 main_~y~0)} is VALID [2022-04-14 15:15:22,389 INFO L290 TraceCheckUtils]: 23: Hoare triple {1568#(<= 1 main_~y~0)} assume !false; {1568#(<= 1 main_~y~0)} is VALID [2022-04-14 15:15:22,389 INFO L272 TraceCheckUtils]: 24: Hoare triple {1568#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1498#true} is VALID [2022-04-14 15:15:22,389 INFO L290 TraceCheckUtils]: 25: Hoare triple {1498#true} ~cond := #in~cond; {1498#true} is VALID [2022-04-14 15:15:22,389 INFO L290 TraceCheckUtils]: 26: Hoare triple {1498#true} assume !(0 == ~cond); {1498#true} is VALID [2022-04-14 15:15:22,389 INFO L290 TraceCheckUtils]: 27: Hoare triple {1498#true} assume true; {1498#true} is VALID [2022-04-14 15:15:22,390 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1498#true} {1568#(<= 1 main_~y~0)} #84#return; {1568#(<= 1 main_~y~0)} is VALID [2022-04-14 15:15:22,390 INFO L272 TraceCheckUtils]: 29: Hoare triple {1568#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1498#true} is VALID [2022-04-14 15:15:22,390 INFO L290 TraceCheckUtils]: 30: Hoare triple {1498#true} ~cond := #in~cond; {1498#true} is VALID [2022-04-14 15:15:22,390 INFO L290 TraceCheckUtils]: 31: Hoare triple {1498#true} assume !(0 == ~cond); {1498#true} is VALID [2022-04-14 15:15:22,390 INFO L290 TraceCheckUtils]: 32: Hoare triple {1498#true} assume true; {1498#true} is VALID [2022-04-14 15:15:22,391 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1498#true} {1568#(<= 1 main_~y~0)} #86#return; {1568#(<= 1 main_~y~0)} is VALID [2022-04-14 15:15:22,391 INFO L290 TraceCheckUtils]: 34: Hoare triple {1568#(<= 1 main_~y~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1608#(<= 1 main_~r~0)} is VALID [2022-04-14 15:15:22,391 INFO L290 TraceCheckUtils]: 35: Hoare triple {1608#(<= 1 main_~r~0)} assume !false; {1608#(<= 1 main_~r~0)} is VALID [2022-04-14 15:15:22,392 INFO L272 TraceCheckUtils]: 36: Hoare triple {1608#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1498#true} is VALID [2022-04-14 15:15:22,392 INFO L290 TraceCheckUtils]: 37: Hoare triple {1498#true} ~cond := #in~cond; {1498#true} is VALID [2022-04-14 15:15:22,392 INFO L290 TraceCheckUtils]: 38: Hoare triple {1498#true} assume !(0 == ~cond); {1498#true} is VALID [2022-04-14 15:15:22,392 INFO L290 TraceCheckUtils]: 39: Hoare triple {1498#true} assume true; {1498#true} is VALID [2022-04-14 15:15:22,392 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {1498#true} {1608#(<= 1 main_~r~0)} #88#return; {1608#(<= 1 main_~r~0)} is VALID [2022-04-14 15:15:22,393 INFO L272 TraceCheckUtils]: 41: Hoare triple {1608#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1498#true} is VALID [2022-04-14 15:15:22,393 INFO L290 TraceCheckUtils]: 42: Hoare triple {1498#true} ~cond := #in~cond; {1498#true} is VALID [2022-04-14 15:15:22,393 INFO L290 TraceCheckUtils]: 43: Hoare triple {1498#true} assume !(0 == ~cond); {1498#true} is VALID [2022-04-14 15:15:22,393 INFO L290 TraceCheckUtils]: 44: Hoare triple {1498#true} assume true; {1498#true} is VALID [2022-04-14 15:15:22,393 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1498#true} {1608#(<= 1 main_~r~0)} #90#return; {1608#(<= 1 main_~r~0)} is VALID [2022-04-14 15:15:22,394 INFO L272 TraceCheckUtils]: 46: Hoare triple {1608#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {1645#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:15:22,394 INFO L290 TraceCheckUtils]: 47: Hoare triple {1645#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1649#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:15:22,394 INFO L290 TraceCheckUtils]: 48: Hoare triple {1649#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1499#false} is VALID [2022-04-14 15:15:22,395 INFO L290 TraceCheckUtils]: 49: Hoare triple {1499#false} assume !false; {1499#false} is VALID [2022-04-14 15:15:22,395 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-14 15:15:22,395 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 15:15:22,395 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:15:22,395 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1911572757] [2022-04-14 15:15:22,395 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:15:22,395 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1475262205] [2022-04-14 15:15:22,395 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1475262205] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 15:15:22,395 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 15:15:22,395 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-14 15:15:22,396 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1363561114] [2022-04-14 15:15:22,396 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 15:15:22,397 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-14 15:15:22,398 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:15:22,398 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-14 15:15:22,420 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-14 15:15:22,420 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-14 15:15:22,421 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:15:22,421 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-14 15:15:22,421 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-14 15:15:22,421 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-14 15:15:22,705 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:22,705 INFO L93 Difference]: Finished difference Result 76 states and 97 transitions. [2022-04-14 15:15:22,705 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-14 15:15:22,705 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-14 15:15:22,706 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:15:22,706 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-14 15:15:22,707 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-14 15:15:22,707 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-14 15:15:22,708 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-14 15:15:22,708 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 48 transitions. [2022-04-14 15:15:22,739 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-14 15:15:22,741 INFO L225 Difference]: With dead ends: 76 [2022-04-14 15:15:22,741 INFO L226 Difference]: Without dead ends: 74 [2022-04-14 15:15:22,741 INFO L912 BasicCegarLoop]: 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-14 15:15:22,741 INFO L913 BasicCegarLoop]: 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-14 15:15:22,742 INFO L914 BasicCegarLoop]: 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-14 15:15:22,742 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-04-14 15:15:22,798 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 74. [2022-04-14 15:15:22,798 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:15:22,799 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-14 15:15:22,799 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-14 15:15:22,799 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-14 15:15:22,802 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:22,802 INFO L93 Difference]: Finished difference Result 74 states and 95 transitions. [2022-04-14 15:15:22,802 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 95 transitions. [2022-04-14 15:15:22,802 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:22,802 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:22,802 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-14 15:15:22,803 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-14 15:15:22,805 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:22,805 INFO L93 Difference]: Finished difference Result 74 states and 95 transitions. [2022-04-14 15:15:22,805 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 95 transitions. [2022-04-14 15:15:22,805 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:22,805 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:22,806 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:15:22,806 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:15:22,806 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-14 15:15:22,808 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 95 transitions. [2022-04-14 15:15:22,808 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 95 transitions. Word has length 50 [2022-04-14 15:15:22,808 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:15:22,808 INFO L478 AbstractCegarLoop]: Abstraction has 74 states and 95 transitions. [2022-04-14 15:15:22,808 INFO L479 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-14 15:15:22,808 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 95 transitions. [2022-04-14 15:15:22,809 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-14 15:15:22,809 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:15:22,809 INFO L499 BasicCegarLoop]: 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-14 15:15:22,825 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-14 15:15:23,014 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:15:23,015 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:15:23,015 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:15:23,015 INFO L85 PathProgramCache]: Analyzing trace with hash 991781023, now seen corresponding path program 1 times [2022-04-14 15:15:23,016 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:15:23,016 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [120117711] [2022-04-14 15:15:23,016 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:23,016 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:15:23,054 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:15:23,054 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [228929126] [2022-04-14 15:15:23,055 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:23,055 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:15:23,055 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:15:23,061 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 15:15:23,062 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-14 15:15:23,099 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:23,100 INFO L263 TraceCheckSpWp]: Trace formula consists of 144 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-14 15:15:23,109 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:23,109 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:15:23,378 INFO L272 TraceCheckUtils]: 0: Hoare triple {2039#true} call ULTIMATE.init(); {2039#true} is VALID [2022-04-14 15:15:23,378 INFO L290 TraceCheckUtils]: 1: Hoare triple {2039#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); {2039#true} is VALID [2022-04-14 15:15:23,378 INFO L290 TraceCheckUtils]: 2: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-14 15:15:23,378 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2039#true} {2039#true} #98#return; {2039#true} is VALID [2022-04-14 15:15:23,378 INFO L272 TraceCheckUtils]: 4: Hoare triple {2039#true} call #t~ret6 := main(); {2039#true} is VALID [2022-04-14 15:15:23,378 INFO L290 TraceCheckUtils]: 5: Hoare triple {2039#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; {2039#true} is VALID [2022-04-14 15:15:23,379 INFO L272 TraceCheckUtils]: 6: Hoare triple {2039#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {2039#true} is VALID [2022-04-14 15:15:23,379 INFO L290 TraceCheckUtils]: 7: Hoare triple {2039#true} ~cond := #in~cond; {2065#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 15:15:23,379 INFO L290 TraceCheckUtils]: 8: Hoare triple {2065#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2069#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 15:15:23,379 INFO L290 TraceCheckUtils]: 9: Hoare triple {2069#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2069#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 15:15:23,380 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2069#(not (= |assume_abort_if_not_#in~cond| 0))} {2039#true} #78#return; {2076#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-14 15:15:23,380 INFO L290 TraceCheckUtils]: 11: Hoare triple {2076#(and (<= 0 main_~x~0) (<= main_~x~0 1))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2076#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-14 15:15:23,380 INFO L272 TraceCheckUtils]: 12: Hoare triple {2076#(and (<= 0 main_~x~0) (<= main_~x~0 1))} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {2039#true} is VALID [2022-04-14 15:15:23,380 INFO L290 TraceCheckUtils]: 13: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-14 15:15:23,381 INFO L290 TraceCheckUtils]: 14: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-14 15:15:23,381 INFO L290 TraceCheckUtils]: 15: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-14 15:15:23,381 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2039#true} {2076#(and (<= 0 main_~x~0) (<= main_~x~0 1))} #80#return; {2076#(and (<= 0 main_~x~0) (<= main_~x~0 1))} is VALID [2022-04-14 15:15:23,381 INFO L272 TraceCheckUtils]: 17: Hoare triple {2076#(and (<= 0 main_~x~0) (<= main_~x~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2039#true} is VALID [2022-04-14 15:15:23,381 INFO L290 TraceCheckUtils]: 18: Hoare triple {2039#true} ~cond := #in~cond; {2065#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 15:15:23,382 INFO L290 TraceCheckUtils]: 19: Hoare triple {2065#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2069#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 15:15:23,382 INFO L290 TraceCheckUtils]: 20: Hoare triple {2069#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2069#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 15:15:23,382 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2069#(not (= |assume_abort_if_not_#in~cond| 0))} {2076#(and (<= 0 main_~x~0) (<= main_~x~0 1))} #82#return; {2110#(and (<= 0 main_~x~0) (<= main_~x~0 1) (<= 1 main_~y~0))} is VALID [2022-04-14 15:15:23,383 INFO L290 TraceCheckUtils]: 22: Hoare triple {2110#(and (<= 0 main_~x~0) (<= main_~x~0 1) (<= 1 main_~y~0))} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2114#(and (<= main_~r~0 1) (<= 1 main_~y~0))} is VALID [2022-04-14 15:15:23,383 INFO L290 TraceCheckUtils]: 23: Hoare triple {2114#(and (<= main_~r~0 1) (<= 1 main_~y~0))} assume !false; {2114#(and (<= main_~r~0 1) (<= 1 main_~y~0))} is VALID [2022-04-14 15:15:23,383 INFO L272 TraceCheckUtils]: 24: Hoare triple {2114#(and (<= main_~r~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2039#true} is VALID [2022-04-14 15:15:23,383 INFO L290 TraceCheckUtils]: 25: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-14 15:15:23,383 INFO L290 TraceCheckUtils]: 26: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-14 15:15:23,383 INFO L290 TraceCheckUtils]: 27: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-14 15:15:23,384 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2039#true} {2114#(and (<= main_~r~0 1) (<= 1 main_~y~0))} #84#return; {2114#(and (<= main_~r~0 1) (<= 1 main_~y~0))} is VALID [2022-04-14 15:15:23,384 INFO L272 TraceCheckUtils]: 29: Hoare triple {2114#(and (<= main_~r~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2039#true} is VALID [2022-04-14 15:15:23,384 INFO L290 TraceCheckUtils]: 30: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-14 15:15:23,384 INFO L290 TraceCheckUtils]: 31: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-14 15:15:23,384 INFO L290 TraceCheckUtils]: 32: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-14 15:15:23,385 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2039#true} {2114#(and (<= main_~r~0 1) (<= 1 main_~y~0))} #86#return; {2114#(and (<= main_~r~0 1) (<= 1 main_~y~0))} is VALID [2022-04-14 15:15:23,385 INFO L290 TraceCheckUtils]: 34: Hoare triple {2114#(and (<= main_~r~0 1) (<= 1 main_~y~0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} is VALID [2022-04-14 15:15:23,385 INFO L290 TraceCheckUtils]: 35: Hoare triple {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} assume !false; {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} is VALID [2022-04-14 15:15:23,385 INFO L272 TraceCheckUtils]: 36: Hoare triple {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2039#true} is VALID [2022-04-14 15:15:23,385 INFO L290 TraceCheckUtils]: 37: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-14 15:15:23,386 INFO L290 TraceCheckUtils]: 38: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-14 15:15:23,386 INFO L290 TraceCheckUtils]: 39: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-14 15:15:23,386 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2039#true} {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} #88#return; {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} is VALID [2022-04-14 15:15:23,386 INFO L272 TraceCheckUtils]: 41: Hoare triple {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2039#true} is VALID [2022-04-14 15:15:23,386 INFO L290 TraceCheckUtils]: 42: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-14 15:15:23,386 INFO L290 TraceCheckUtils]: 43: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-14 15:15:23,387 INFO L290 TraceCheckUtils]: 44: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-14 15:15:23,387 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2039#true} {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} #90#return; {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} is VALID [2022-04-14 15:15:23,387 INFO L272 TraceCheckUtils]: 46: Hoare triple {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2039#true} is VALID [2022-04-14 15:15:23,387 INFO L290 TraceCheckUtils]: 47: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-14 15:15:23,395 INFO L290 TraceCheckUtils]: 48: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-14 15:15:23,395 INFO L290 TraceCheckUtils]: 49: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-14 15:15:23,396 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2039#true} {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} #92#return; {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} is VALID [2022-04-14 15:15:23,397 INFO L290 TraceCheckUtils]: 51: Hoare triple {2151#(and (<= main_~r~0 1) (<= 1 main_~b~0))} assume !!(~r~0 >= 2 * ~b~0); {2040#false} is VALID [2022-04-14 15:15:23,400 INFO L272 TraceCheckUtils]: 52: Hoare triple {2040#false} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {2040#false} is VALID [2022-04-14 15:15:23,400 INFO L290 TraceCheckUtils]: 53: Hoare triple {2040#false} ~cond := #in~cond; {2040#false} is VALID [2022-04-14 15:15:23,401 INFO L290 TraceCheckUtils]: 54: Hoare triple {2040#false} assume 0 == ~cond; {2040#false} is VALID [2022-04-14 15:15:23,401 INFO L290 TraceCheckUtils]: 55: Hoare triple {2040#false} assume !false; {2040#false} is VALID [2022-04-14 15:15:23,402 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 13 proven. 3 refuted. 0 times theorem prover too weak. 46 trivial. 0 not checked. [2022-04-14 15:15:23,402 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 15:15:24,410 INFO L290 TraceCheckUtils]: 55: Hoare triple {2040#false} assume !false; {2040#false} is VALID [2022-04-14 15:15:24,410 INFO L290 TraceCheckUtils]: 54: Hoare triple {2040#false} assume 0 == ~cond; {2040#false} is VALID [2022-04-14 15:15:24,411 INFO L290 TraceCheckUtils]: 53: Hoare triple {2040#false} ~cond := #in~cond; {2040#false} is VALID [2022-04-14 15:15:24,411 INFO L272 TraceCheckUtils]: 52: Hoare triple {2040#false} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {2040#false} is VALID [2022-04-14 15:15:24,412 INFO L290 TraceCheckUtils]: 51: Hoare triple {2227#(not (<= (* main_~b~0 2) main_~r~0))} assume !!(~r~0 >= 2 * ~b~0); {2040#false} is VALID [2022-04-14 15:15:24,417 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2039#true} {2227#(not (<= (* main_~b~0 2) main_~r~0))} #92#return; {2227#(not (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-14 15:15:24,417 INFO L290 TraceCheckUtils]: 49: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-14 15:15:24,417 INFO L290 TraceCheckUtils]: 48: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-14 15:15:24,417 INFO L290 TraceCheckUtils]: 47: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-14 15:15:24,417 INFO L272 TraceCheckUtils]: 46: Hoare triple {2227#(not (<= (* main_~b~0 2) main_~r~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2039#true} is VALID [2022-04-14 15:15:24,418 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2039#true} {2227#(not (<= (* main_~b~0 2) main_~r~0))} #90#return; {2227#(not (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-14 15:15:24,418 INFO L290 TraceCheckUtils]: 44: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-14 15:15:24,418 INFO L290 TraceCheckUtils]: 43: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-14 15:15:24,418 INFO L290 TraceCheckUtils]: 42: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-14 15:15:24,418 INFO L272 TraceCheckUtils]: 41: Hoare triple {2227#(not (<= (* main_~b~0 2) main_~r~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2039#true} is VALID [2022-04-14 15:15:24,419 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2039#true} {2227#(not (<= (* main_~b~0 2) main_~r~0))} #88#return; {2227#(not (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-14 15:15:24,419 INFO L290 TraceCheckUtils]: 39: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-14 15:15:24,419 INFO L290 TraceCheckUtils]: 38: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-14 15:15:24,419 INFO L290 TraceCheckUtils]: 37: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-14 15:15:24,419 INFO L272 TraceCheckUtils]: 36: Hoare triple {2227#(not (<= (* main_~b~0 2) main_~r~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2039#true} is VALID [2022-04-14 15:15:24,419 INFO L290 TraceCheckUtils]: 35: Hoare triple {2227#(not (<= (* main_~b~0 2) main_~r~0))} assume !false; {2227#(not (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-14 15:15:24,420 INFO L290 TraceCheckUtils]: 34: Hoare triple {2279#(< (div main_~r~0 2) main_~y~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2227#(not (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-14 15:15:24,420 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2039#true} {2279#(< (div main_~r~0 2) main_~y~0)} #86#return; {2279#(< (div main_~r~0 2) main_~y~0)} is VALID [2022-04-14 15:15:24,420 INFO L290 TraceCheckUtils]: 32: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-14 15:15:24,420 INFO L290 TraceCheckUtils]: 31: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-14 15:15:24,420 INFO L290 TraceCheckUtils]: 30: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-14 15:15:24,420 INFO L272 TraceCheckUtils]: 29: Hoare triple {2279#(< (div main_~r~0 2) main_~y~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2039#true} is VALID [2022-04-14 15:15:24,421 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2039#true} {2279#(< (div main_~r~0 2) main_~y~0)} #84#return; {2279#(< (div main_~r~0 2) main_~y~0)} is VALID [2022-04-14 15:15:24,421 INFO L290 TraceCheckUtils]: 27: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-14 15:15:24,421 INFO L290 TraceCheckUtils]: 26: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-14 15:15:24,421 INFO L290 TraceCheckUtils]: 25: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-14 15:15:24,421 INFO L272 TraceCheckUtils]: 24: Hoare triple {2279#(< (div main_~r~0 2) main_~y~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2039#true} is VALID [2022-04-14 15:15:24,421 INFO L290 TraceCheckUtils]: 23: Hoare triple {2279#(< (div main_~r~0 2) main_~y~0)} assume !false; {2279#(< (div main_~r~0 2) main_~y~0)} is VALID [2022-04-14 15:15:24,422 INFO L290 TraceCheckUtils]: 22: Hoare triple {2316#(< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) (+ main_~y~0 1))} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2279#(< (div main_~r~0 2) main_~y~0)} is VALID [2022-04-14 15:15:24,423 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2069#(not (= |assume_abort_if_not_#in~cond| 0))} {2320#(< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) 2)} #82#return; {2316#(< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) (+ main_~y~0 1))} is VALID [2022-04-14 15:15:24,423 INFO L290 TraceCheckUtils]: 20: Hoare triple {2069#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2069#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 15:15:24,423 INFO L290 TraceCheckUtils]: 19: Hoare triple {2330#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {2069#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 15:15:24,424 INFO L290 TraceCheckUtils]: 18: Hoare triple {2039#true} ~cond := #in~cond; {2330#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-14 15:15:24,424 INFO L272 TraceCheckUtils]: 17: Hoare triple {2320#(< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) 2)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2039#true} is VALID [2022-04-14 15:15:24,424 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2039#true} {2320#(< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) 2)} #80#return; {2320#(< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) 2)} is VALID [2022-04-14 15:15:24,424 INFO L290 TraceCheckUtils]: 15: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-14 15:15:24,424 INFO L290 TraceCheckUtils]: 14: Hoare triple {2039#true} assume !(0 == ~cond); {2039#true} is VALID [2022-04-14 15:15:24,424 INFO L290 TraceCheckUtils]: 13: Hoare triple {2039#true} ~cond := #in~cond; {2039#true} is VALID [2022-04-14 15:15:24,424 INFO L272 TraceCheckUtils]: 12: Hoare triple {2320#(< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) 2)} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {2039#true} is VALID [2022-04-14 15:15:24,425 INFO L290 TraceCheckUtils]: 11: Hoare triple {2320#(< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) 2)} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2320#(< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) 2)} is VALID [2022-04-14 15:15:24,425 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2069#(not (= |assume_abort_if_not_#in~cond| 0))} {2039#true} #78#return; {2320#(< (div (+ (- 1) (* (- 1) main_~x~0)) (- 2)) 2)} is VALID [2022-04-14 15:15:24,426 INFO L290 TraceCheckUtils]: 9: Hoare triple {2069#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2069#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 15:15:24,426 INFO L290 TraceCheckUtils]: 8: Hoare triple {2330#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {2069#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 15:15:24,426 INFO L290 TraceCheckUtils]: 7: Hoare triple {2039#true} ~cond := #in~cond; {2330#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-14 15:15:24,426 INFO L272 TraceCheckUtils]: 6: Hoare triple {2039#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {2039#true} is VALID [2022-04-14 15:15:24,426 INFO L290 TraceCheckUtils]: 5: Hoare triple {2039#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; {2039#true} is VALID [2022-04-14 15:15:24,426 INFO L272 TraceCheckUtils]: 4: Hoare triple {2039#true} call #t~ret6 := main(); {2039#true} is VALID [2022-04-14 15:15:24,426 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2039#true} {2039#true} #98#return; {2039#true} is VALID [2022-04-14 15:15:24,427 INFO L290 TraceCheckUtils]: 2: Hoare triple {2039#true} assume true; {2039#true} is VALID [2022-04-14 15:15:24,427 INFO L290 TraceCheckUtils]: 1: Hoare triple {2039#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); {2039#true} is VALID [2022-04-14 15:15:24,427 INFO L272 TraceCheckUtils]: 0: Hoare triple {2039#true} call ULTIMATE.init(); {2039#true} is VALID [2022-04-14 15:15:24,427 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 13 proven. 3 refuted. 0 times theorem prover too weak. 46 trivial. 0 not checked. [2022-04-14 15:15:24,427 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:15:24,427 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [120117711] [2022-04-14 15:15:24,427 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:15:24,427 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [228929126] [2022-04-14 15:15:24,427 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [228929126] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 15:15:24,427 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 15:15:24,428 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 13 [2022-04-14 15:15:24,428 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1284947842] [2022-04-14 15:15:24,428 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 15:15:24,428 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (17), 9 states have call predecessors, (17), 7 states have call successors, (17) Word has length 56 [2022-04-14 15:15:24,429 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:15:24,429 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (17), 9 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-14 15:15:24,469 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:15:24,469 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-14 15:15:24,469 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:15:24,470 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-14 15:15:24,470 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=125, Unknown=0, NotChecked=0, Total=156 [2022-04-14 15:15:24,470 INFO L87 Difference]: Start difference. First operand 74 states and 95 transitions. Second operand has 13 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (17), 9 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-14 15:15:24,961 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:24,961 INFO L93 Difference]: Finished difference Result 103 states and 127 transitions. [2022-04-14 15:15:24,962 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-14 15:15:24,962 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (17), 9 states have call predecessors, (17), 7 states have call successors, (17) Word has length 56 [2022-04-14 15:15:24,962 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:15:24,962 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (17), 9 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-14 15:15:24,964 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 72 transitions. [2022-04-14 15:15:24,964 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (17), 9 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-14 15:15:24,965 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 72 transitions. [2022-04-14 15:15:24,965 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 72 transitions. [2022-04-14 15:15:25,022 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:15:25,024 INFO L225 Difference]: With dead ends: 103 [2022-04-14 15:15:25,024 INFO L226 Difference]: Without dead ends: 57 [2022-04-14 15:15:25,025 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 114 GetRequests, 100 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 20 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=55, Invalid=185, Unknown=0, NotChecked=0, Total=240 [2022-04-14 15:15:25,026 INFO L913 BasicCegarLoop]: 35 mSDtfsCounter, 25 mSDsluCounter, 153 mSDsCounter, 0 mSdLazyCounter, 160 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 26 SdHoareTripleChecker+Valid, 188 SdHoareTripleChecker+Invalid, 187 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 160 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-14 15:15:25,026 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [26 Valid, 188 Invalid, 187 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 160 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-14 15:15:25,027 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states. [2022-04-14 15:15:25,074 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 55. [2022-04-14 15:15:25,074 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:15:25,074 INFO L82 GeneralOperation]: Start isEquivalent. First operand 57 states. Second operand has 55 states, 32 states have (on average 1.0625) internal successors, (34), 34 states have internal predecessors, (34), 15 states have call successors, (15), 8 states have call predecessors, (15), 7 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-14 15:15:25,074 INFO L74 IsIncluded]: Start isIncluded. First operand 57 states. Second operand has 55 states, 32 states have (on average 1.0625) internal successors, (34), 34 states have internal predecessors, (34), 15 states have call successors, (15), 8 states have call predecessors, (15), 7 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-14 15:15:25,075 INFO L87 Difference]: Start difference. First operand 57 states. Second operand has 55 states, 32 states have (on average 1.0625) internal successors, (34), 34 states have internal predecessors, (34), 15 states have call successors, (15), 8 states have call predecessors, (15), 7 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-14 15:15:25,078 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:25,078 INFO L93 Difference]: Finished difference Result 57 states and 65 transitions. [2022-04-14 15:15:25,078 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 65 transitions. [2022-04-14 15:15:25,079 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:25,079 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:25,079 INFO L74 IsIncluded]: Start isIncluded. First operand has 55 states, 32 states have (on average 1.0625) internal successors, (34), 34 states have internal predecessors, (34), 15 states have call successors, (15), 8 states have call predecessors, (15), 7 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) Second operand 57 states. [2022-04-14 15:15:25,079 INFO L87 Difference]: Start difference. First operand has 55 states, 32 states have (on average 1.0625) internal successors, (34), 34 states have internal predecessors, (34), 15 states have call successors, (15), 8 states have call predecessors, (15), 7 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) Second operand 57 states. [2022-04-14 15:15:25,081 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:25,081 INFO L93 Difference]: Finished difference Result 57 states and 65 transitions. [2022-04-14 15:15:25,081 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 65 transitions. [2022-04-14 15:15:25,082 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:25,082 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:25,082 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:15:25,082 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:15:25,083 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 32 states have (on average 1.0625) internal successors, (34), 34 states have internal predecessors, (34), 15 states have call successors, (15), 8 states have call predecessors, (15), 7 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-14 15:15:25,084 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 62 transitions. [2022-04-14 15:15:25,084 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 62 transitions. Word has length 56 [2022-04-14 15:15:25,084 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:15:25,085 INFO L478 AbstractCegarLoop]: Abstraction has 55 states and 62 transitions. [2022-04-14 15:15:25,085 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (17), 9 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-14 15:15:25,085 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 62 transitions. [2022-04-14 15:15:25,086 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-14 15:15:25,086 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:15:25,086 INFO L499 BasicCegarLoop]: 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-14 15:15:25,107 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-14 15:15:25,299 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:15:25,300 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:15:25,300 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:15:25,300 INFO L85 PathProgramCache]: Analyzing trace with hash -2096667334, now seen corresponding path program 1 times [2022-04-14 15:15:25,300 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:15:25,301 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [215413083] [2022-04-14 15:15:25,301 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:25,301 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:15:25,312 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:15:25,313 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [656580484] [2022-04-14 15:15:25,313 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:25,313 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:15:25,313 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:15:25,314 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 15:15:25,347 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-14 15:15:25,369 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:25,369 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-14 15:15:25,379 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:25,380 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:15:26,192 INFO L272 TraceCheckUtils]: 0: Hoare triple {2744#true} call ULTIMATE.init(); {2744#true} is VALID [2022-04-14 15:15:26,192 INFO L290 TraceCheckUtils]: 1: Hoare triple {2744#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); {2744#true} is VALID [2022-04-14 15:15:26,192 INFO L290 TraceCheckUtils]: 2: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-14 15:15:26,192 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2744#true} {2744#true} #98#return; {2744#true} is VALID [2022-04-14 15:15:26,193 INFO L272 TraceCheckUtils]: 4: Hoare triple {2744#true} call #t~ret6 := main(); {2744#true} is VALID [2022-04-14 15:15:26,193 INFO L290 TraceCheckUtils]: 5: Hoare triple {2744#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; {2744#true} is VALID [2022-04-14 15:15:26,193 INFO L272 TraceCheckUtils]: 6: Hoare triple {2744#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {2744#true} is VALID [2022-04-14 15:15:26,193 INFO L290 TraceCheckUtils]: 7: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-14 15:15:26,193 INFO L290 TraceCheckUtils]: 8: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-14 15:15:26,193 INFO L290 TraceCheckUtils]: 9: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-14 15:15:26,193 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2744#true} {2744#true} #78#return; {2744#true} is VALID [2022-04-14 15:15:26,193 INFO L290 TraceCheckUtils]: 11: Hoare triple {2744#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2744#true} is VALID [2022-04-14 15:15:26,193 INFO L272 TraceCheckUtils]: 12: Hoare triple {2744#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {2744#true} is VALID [2022-04-14 15:15:26,193 INFO L290 TraceCheckUtils]: 13: Hoare triple {2744#true} ~cond := #in~cond; {2788#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 15:15:26,194 INFO L290 TraceCheckUtils]: 14: Hoare triple {2788#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2792#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 15:15:26,194 INFO L290 TraceCheckUtils]: 15: Hoare triple {2792#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2792#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 15:15:26,195 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2792#(not (= |assume_abort_if_not_#in~cond| 0))} {2744#true} #80#return; {2799#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:26,195 INFO L272 TraceCheckUtils]: 17: Hoare triple {2799#(and (<= 0 main_~y~0) (<= main_~y~0 1))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2744#true} is VALID [2022-04-14 15:15:26,195 INFO L290 TraceCheckUtils]: 18: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-14 15:15:26,195 INFO L290 TraceCheckUtils]: 19: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-14 15:15:26,195 INFO L290 TraceCheckUtils]: 20: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-14 15:15:26,196 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2744#true} {2799#(and (<= 0 main_~y~0) (<= main_~y~0 1))} #82#return; {2799#(and (<= 0 main_~y~0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:26,196 INFO L290 TraceCheckUtils]: 22: Hoare triple {2799#(and (<= 0 main_~y~0) (<= main_~y~0 1))} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2818#(and (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:26,196 INFO L290 TraceCheckUtils]: 23: Hoare triple {2818#(and (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 1))} assume !false; {2818#(and (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:26,197 INFO L272 TraceCheckUtils]: 24: Hoare triple {2818#(and (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2744#true} is VALID [2022-04-14 15:15:26,197 INFO L290 TraceCheckUtils]: 25: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-14 15:15:26,197 INFO L290 TraceCheckUtils]: 26: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-14 15:15:26,197 INFO L290 TraceCheckUtils]: 27: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-14 15:15:26,198 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2744#true} {2818#(and (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 1))} #84#return; {2818#(and (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:26,198 INFO L272 TraceCheckUtils]: 29: Hoare triple {2818#(and (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2744#true} is VALID [2022-04-14 15:15:26,198 INFO L290 TraceCheckUtils]: 30: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-14 15:15:26,198 INFO L290 TraceCheckUtils]: 31: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-14 15:15:26,198 INFO L290 TraceCheckUtils]: 32: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-14 15:15:26,198 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2744#true} {2818#(and (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 1))} #86#return; {2818#(and (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:26,199 INFO L290 TraceCheckUtils]: 34: Hoare triple {2818#(and (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 1))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:26,199 INFO L290 TraceCheckUtils]: 35: Hoare triple {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} assume !false; {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:26,199 INFO L272 TraceCheckUtils]: 36: Hoare triple {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2744#true} is VALID [2022-04-14 15:15:26,199 INFO L290 TraceCheckUtils]: 37: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-14 15:15:26,199 INFO L290 TraceCheckUtils]: 38: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-14 15:15:26,200 INFO L290 TraceCheckUtils]: 39: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-14 15:15:26,200 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2744#true} {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} #88#return; {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:26,200 INFO L272 TraceCheckUtils]: 41: Hoare triple {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2744#true} is VALID [2022-04-14 15:15:26,200 INFO L290 TraceCheckUtils]: 42: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-14 15:15:26,200 INFO L290 TraceCheckUtils]: 43: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-14 15:15:26,200 INFO L290 TraceCheckUtils]: 44: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-14 15:15:26,201 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2744#true} {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} #90#return; {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:26,201 INFO L272 TraceCheckUtils]: 46: Hoare triple {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2744#true} is VALID [2022-04-14 15:15:26,201 INFO L290 TraceCheckUtils]: 47: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-14 15:15:26,201 INFO L290 TraceCheckUtils]: 48: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-14 15:15:26,201 INFO L290 TraceCheckUtils]: 49: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-14 15:15:26,202 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2744#true} {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} #92#return; {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:26,202 INFO L290 TraceCheckUtils]: 51: Hoare triple {2855#(and (= main_~a~0 1) (<= 0 main_~y~0) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} assume !(~r~0 >= 2 * ~b~0); {2907#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (< main_~r~0 (* main_~b~0 2)) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} is VALID [2022-04-14 15:15:26,203 INFO L290 TraceCheckUtils]: 52: Hoare triple {2907#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (< main_~r~0 (* main_~b~0 2)) (<= main_~y~0 main_~r~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 1))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {2911#(and (= main_~q~0 1) (<= main_~x~0 (+ main_~y~0 main_~r~0)) (<= main_~y~0 1) (<= main_~y~0 main_~x~0) (< (* main_~r~0 2) main_~x~0))} is VALID [2022-04-14 15:15:26,204 INFO L290 TraceCheckUtils]: 53: Hoare triple {2911#(and (= main_~q~0 1) (<= main_~x~0 (+ main_~y~0 main_~r~0)) (<= main_~y~0 1) (<= main_~y~0 main_~x~0) (< (* main_~r~0 2) main_~x~0))} assume !false; {2911#(and (= main_~q~0 1) (<= main_~x~0 (+ main_~y~0 main_~r~0)) (<= main_~y~0 1) (<= main_~y~0 main_~x~0) (< (* main_~r~0 2) main_~x~0))} is VALID [2022-04-14 15:15:26,204 INFO L272 TraceCheckUtils]: 54: Hoare triple {2911#(and (= main_~q~0 1) (<= main_~x~0 (+ main_~y~0 main_~r~0)) (<= main_~y~0 1) (<= main_~y~0 main_~x~0) (< (* main_~r~0 2) main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2744#true} is VALID [2022-04-14 15:15:26,204 INFO L290 TraceCheckUtils]: 55: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-14 15:15:26,204 INFO L290 TraceCheckUtils]: 56: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-14 15:15:26,204 INFO L290 TraceCheckUtils]: 57: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-14 15:15:26,204 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {2744#true} {2911#(and (= main_~q~0 1) (<= main_~x~0 (+ main_~y~0 main_~r~0)) (<= main_~y~0 1) (<= main_~y~0 main_~x~0) (< (* main_~r~0 2) main_~x~0))} #84#return; {2911#(and (= main_~q~0 1) (<= main_~x~0 (+ main_~y~0 main_~r~0)) (<= main_~y~0 1) (<= main_~y~0 main_~x~0) (< (* main_~r~0 2) main_~x~0))} is VALID [2022-04-14 15:15:26,205 INFO L272 TraceCheckUtils]: 59: Hoare triple {2911#(and (= main_~q~0 1) (<= main_~x~0 (+ main_~y~0 main_~r~0)) (<= main_~y~0 1) (<= main_~y~0 main_~x~0) (< (* main_~r~0 2) main_~x~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2933#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:15:26,206 INFO L290 TraceCheckUtils]: 60: Hoare triple {2933#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2937#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:15:26,206 INFO L290 TraceCheckUtils]: 61: Hoare triple {2937#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2745#false} is VALID [2022-04-14 15:15:26,206 INFO L290 TraceCheckUtils]: 62: Hoare triple {2745#false} assume !false; {2745#false} is VALID [2022-04-14 15:15:26,206 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 15 proven. 6 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2022-04-14 15:15:26,206 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 15:15:27,104 INFO L290 TraceCheckUtils]: 62: Hoare triple {2745#false} assume !false; {2745#false} is VALID [2022-04-14 15:15:27,105 INFO L290 TraceCheckUtils]: 61: Hoare triple {2937#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2745#false} is VALID [2022-04-14 15:15:27,106 INFO L290 TraceCheckUtils]: 60: Hoare triple {2933#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2937#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:15:27,107 INFO L272 TraceCheckUtils]: 59: Hoare triple {2953#(= (+ (* 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)); {2933#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:15:27,108 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {2744#true} {2953#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #84#return; {2953#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:15:27,108 INFO L290 TraceCheckUtils]: 57: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-14 15:15:27,108 INFO L290 TraceCheckUtils]: 56: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-14 15:15:27,108 INFO L290 TraceCheckUtils]: 55: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-14 15:15:27,108 INFO L272 TraceCheckUtils]: 54: Hoare triple {2953#(= (+ (* 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)); {2744#true} is VALID [2022-04-14 15:15:27,111 INFO L290 TraceCheckUtils]: 53: Hoare triple {2953#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !false; {2953#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:15:27,204 INFO L290 TraceCheckUtils]: 52: Hoare triple {2975#(= 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; {2953#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:15:27,205 INFO L290 TraceCheckUtils]: 51: Hoare triple {2979#(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); {2975#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-14 15:15:27,206 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2744#true} {2979#(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; {2979#(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-14 15:15:27,206 INFO L290 TraceCheckUtils]: 49: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-14 15:15:27,206 INFO L290 TraceCheckUtils]: 48: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-14 15:15:27,206 INFO L290 TraceCheckUtils]: 47: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-14 15:15:27,206 INFO L272 TraceCheckUtils]: 46: Hoare triple {2979#(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)); {2744#true} is VALID [2022-04-14 15:15:27,207 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2744#true} {2979#(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; {2979#(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-14 15:15:27,207 INFO L290 TraceCheckUtils]: 44: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-14 15:15:27,207 INFO L290 TraceCheckUtils]: 43: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-14 15:15:27,207 INFO L290 TraceCheckUtils]: 42: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-14 15:15:27,207 INFO L272 TraceCheckUtils]: 41: Hoare triple {2979#(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)); {2744#true} is VALID [2022-04-14 15:15:27,208 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2744#true} {2979#(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; {2979#(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-14 15:15:27,208 INFO L290 TraceCheckUtils]: 39: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-14 15:15:27,208 INFO L290 TraceCheckUtils]: 38: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-14 15:15:27,208 INFO L290 TraceCheckUtils]: 37: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-14 15:15:27,208 INFO L272 TraceCheckUtils]: 36: Hoare triple {2979#(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)); {2744#true} is VALID [2022-04-14 15:15:27,209 INFO L290 TraceCheckUtils]: 35: Hoare triple {2979#(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; {2979#(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-14 15:15:27,210 INFO L290 TraceCheckUtils]: 34: Hoare triple {3031#(or (and (or (<= main_~x~0 (+ (* main_~q~0 main_~y~0) main_~r~0)) (<= main_~y~0 (div main_~r~0 2))) (or (<= (+ (* main_~q~0 main_~y~0) main_~y~0 main_~r~0) (+ (div main_~r~0 2) main_~x~0 1)) (<= main_~y~0 (div main_~r~0 2)))) (not (<= main_~y~0 main_~r~0)))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2979#(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-14 15:15:27,210 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2744#true} {3031#(or (and (or (<= main_~x~0 (+ (* main_~q~0 main_~y~0) main_~r~0)) (<= main_~y~0 (div main_~r~0 2))) (or (<= (+ (* main_~q~0 main_~y~0) main_~y~0 main_~r~0) (+ (div main_~r~0 2) main_~x~0 1)) (<= main_~y~0 (div main_~r~0 2)))) (not (<= main_~y~0 main_~r~0)))} #86#return; {3031#(or (and (or (<= main_~x~0 (+ (* main_~q~0 main_~y~0) main_~r~0)) (<= main_~y~0 (div main_~r~0 2))) (or (<= (+ (* main_~q~0 main_~y~0) main_~y~0 main_~r~0) (+ (div main_~r~0 2) main_~x~0 1)) (<= main_~y~0 (div main_~r~0 2)))) (not (<= main_~y~0 main_~r~0)))} is VALID [2022-04-14 15:15:27,210 INFO L290 TraceCheckUtils]: 32: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-14 15:15:27,210 INFO L290 TraceCheckUtils]: 31: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-14 15:15:27,211 INFO L290 TraceCheckUtils]: 30: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-14 15:15:27,211 INFO L272 TraceCheckUtils]: 29: Hoare triple {3031#(or (and (or (<= main_~x~0 (+ (* main_~q~0 main_~y~0) main_~r~0)) (<= main_~y~0 (div main_~r~0 2))) (or (<= (+ (* main_~q~0 main_~y~0) main_~y~0 main_~r~0) (+ (div main_~r~0 2) main_~x~0 1)) (<= main_~y~0 (div main_~r~0 2)))) (not (<= main_~y~0 main_~r~0)))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2744#true} is VALID [2022-04-14 15:15:27,211 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2744#true} {3031#(or (and (or (<= main_~x~0 (+ (* main_~q~0 main_~y~0) main_~r~0)) (<= main_~y~0 (div main_~r~0 2))) (or (<= (+ (* main_~q~0 main_~y~0) main_~y~0 main_~r~0) (+ (div main_~r~0 2) main_~x~0 1)) (<= main_~y~0 (div main_~r~0 2)))) (not (<= main_~y~0 main_~r~0)))} #84#return; {3031#(or (and (or (<= main_~x~0 (+ (* main_~q~0 main_~y~0) main_~r~0)) (<= main_~y~0 (div main_~r~0 2))) (or (<= (+ (* main_~q~0 main_~y~0) main_~y~0 main_~r~0) (+ (div main_~r~0 2) main_~x~0 1)) (<= main_~y~0 (div main_~r~0 2)))) (not (<= main_~y~0 main_~r~0)))} is VALID [2022-04-14 15:15:27,211 INFO L290 TraceCheckUtils]: 27: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-14 15:15:27,211 INFO L290 TraceCheckUtils]: 26: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-14 15:15:27,211 INFO L290 TraceCheckUtils]: 25: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-14 15:15:27,211 INFO L272 TraceCheckUtils]: 24: Hoare triple {3031#(or (and (or (<= main_~x~0 (+ (* main_~q~0 main_~y~0) main_~r~0)) (<= main_~y~0 (div main_~r~0 2))) (or (<= (+ (* main_~q~0 main_~y~0) main_~y~0 main_~r~0) (+ (div main_~r~0 2) main_~x~0 1)) (<= main_~y~0 (div main_~r~0 2)))) (not (<= main_~y~0 main_~r~0)))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2744#true} is VALID [2022-04-14 15:15:27,212 INFO L290 TraceCheckUtils]: 23: Hoare triple {3031#(or (and (or (<= main_~x~0 (+ (* main_~q~0 main_~y~0) main_~r~0)) (<= main_~y~0 (div main_~r~0 2))) (or (<= (+ (* main_~q~0 main_~y~0) main_~y~0 main_~r~0) (+ (div main_~r~0 2) main_~x~0 1)) (<= main_~y~0 (div main_~r~0 2)))) (not (<= main_~y~0 main_~r~0)))} assume !false; {3031#(or (and (or (<= main_~x~0 (+ (* main_~q~0 main_~y~0) main_~r~0)) (<= main_~y~0 (div main_~r~0 2))) (or (<= (+ (* main_~q~0 main_~y~0) main_~y~0 main_~r~0) (+ (div main_~r~0 2) main_~x~0 1)) (<= main_~y~0 (div main_~r~0 2)))) (not (<= main_~y~0 main_~r~0)))} is VALID [2022-04-14 15:15:27,213 INFO L290 TraceCheckUtils]: 22: Hoare triple {3068#(<= main_~y~0 (+ 2 (div (+ (- 2) main_~y~0) 2)))} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {3031#(or (and (or (<= main_~x~0 (+ (* main_~q~0 main_~y~0) main_~r~0)) (<= main_~y~0 (div main_~r~0 2))) (or (<= (+ (* main_~q~0 main_~y~0) main_~y~0 main_~r~0) (+ (div main_~r~0 2) main_~x~0 1)) (<= main_~y~0 (div main_~r~0 2)))) (not (<= main_~y~0 main_~r~0)))} is VALID [2022-04-14 15:15:27,213 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2744#true} {3068#(<= main_~y~0 (+ 2 (div (+ (- 2) main_~y~0) 2)))} #82#return; {3068#(<= main_~y~0 (+ 2 (div (+ (- 2) main_~y~0) 2)))} is VALID [2022-04-14 15:15:27,213 INFO L290 TraceCheckUtils]: 20: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-14 15:15:27,213 INFO L290 TraceCheckUtils]: 19: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-14 15:15:27,213 INFO L290 TraceCheckUtils]: 18: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-14 15:15:27,213 INFO L272 TraceCheckUtils]: 17: Hoare triple {3068#(<= main_~y~0 (+ 2 (div (+ (- 2) main_~y~0) 2)))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2744#true} is VALID [2022-04-14 15:15:27,214 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2792#(not (= |assume_abort_if_not_#in~cond| 0))} {2744#true} #80#return; {3068#(<= main_~y~0 (+ 2 (div (+ (- 2) main_~y~0) 2)))} is VALID [2022-04-14 15:15:27,214 INFO L290 TraceCheckUtils]: 15: Hoare triple {2792#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2792#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 15:15:27,215 INFO L290 TraceCheckUtils]: 14: Hoare triple {3096#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {2792#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 15:15:27,215 INFO L290 TraceCheckUtils]: 13: Hoare triple {2744#true} ~cond := #in~cond; {3096#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-14 15:15:27,215 INFO L272 TraceCheckUtils]: 12: Hoare triple {2744#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 1 then 1 else 0)); {2744#true} is VALID [2022-04-14 15:15:27,215 INFO L290 TraceCheckUtils]: 11: Hoare triple {2744#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2744#true} is VALID [2022-04-14 15:15:27,215 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2744#true} {2744#true} #78#return; {2744#true} is VALID [2022-04-14 15:15:27,215 INFO L290 TraceCheckUtils]: 9: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-14 15:15:27,215 INFO L290 TraceCheckUtils]: 8: Hoare triple {2744#true} assume !(0 == ~cond); {2744#true} is VALID [2022-04-14 15:15:27,215 INFO L290 TraceCheckUtils]: 7: Hoare triple {2744#true} ~cond := #in~cond; {2744#true} is VALID [2022-04-14 15:15:27,215 INFO L272 TraceCheckUtils]: 6: Hoare triple {2744#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 1 then 1 else 0)); {2744#true} is VALID [2022-04-14 15:15:27,215 INFO L290 TraceCheckUtils]: 5: Hoare triple {2744#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; {2744#true} is VALID [2022-04-14 15:15:27,215 INFO L272 TraceCheckUtils]: 4: Hoare triple {2744#true} call #t~ret6 := main(); {2744#true} is VALID [2022-04-14 15:15:27,216 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2744#true} {2744#true} #98#return; {2744#true} is VALID [2022-04-14 15:15:27,216 INFO L290 TraceCheckUtils]: 2: Hoare triple {2744#true} assume true; {2744#true} is VALID [2022-04-14 15:15:27,216 INFO L290 TraceCheckUtils]: 1: Hoare triple {2744#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); {2744#true} is VALID [2022-04-14 15:15:27,216 INFO L272 TraceCheckUtils]: 0: Hoare triple {2744#true} call ULTIMATE.init(); {2744#true} is VALID [2022-04-14 15:15:27,216 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 15 proven. 6 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2022-04-14 15:15:27,216 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:15:27,216 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [215413083] [2022-04-14 15:15:27,216 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:15:27,216 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [656580484] [2022-04-14 15:15:27,216 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [656580484] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 15:15:27,216 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 15:15:27,217 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 17 [2022-04-14 15:15:27,217 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [293764323] [2022-04-14 15:15:27,217 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 15:15:27,217 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 9 states have call predecessors, (18), 9 states have call successors, (18) Word has length 63 [2022-04-14 15:15:27,218 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:15:27,218 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 9 states have call predecessors, (18), 9 states have call successors, (18) [2022-04-14 15:15:27,279 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:15:27,279 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-14 15:15:27,279 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:15:27,279 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-14 15:15:27,280 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=57, Invalid=215, Unknown=0, NotChecked=0, Total=272 [2022-04-14 15:15:27,280 INFO L87 Difference]: Start difference. First operand 55 states and 62 transitions. Second operand has 17 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 9 states have call predecessors, (18), 9 states have call successors, (18) [2022-04-14 15:15:28,082 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:28,082 INFO L93 Difference]: Finished difference Result 75 states and 84 transitions. [2022-04-14 15:15:28,082 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-14 15:15:28,082 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 9 states have call predecessors, (18), 9 states have call successors, (18) Word has length 63 [2022-04-14 15:15:28,083 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:15:28,083 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 9 states have call predecessors, (18), 9 states have call successors, (18) [2022-04-14 15:15:28,084 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 66 transitions. [2022-04-14 15:15:28,084 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 9 states have call predecessors, (18), 9 states have call successors, (18) [2022-04-14 15:15:28,085 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 66 transitions. [2022-04-14 15:15:28,085 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 66 transitions. [2022-04-14 15:15:28,138 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:15:28,138 INFO L225 Difference]: With dead ends: 75 [2022-04-14 15:15:28,138 INFO L226 Difference]: Without dead ends: 0 [2022-04-14 15:15:28,139 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 130 GetRequests, 109 SyntacticMatches, 1 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 76 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=97, Invalid=365, Unknown=0, NotChecked=0, Total=462 [2022-04-14 15:15:28,140 INFO L913 BasicCegarLoop]: 25 mSDtfsCounter, 20 mSDsluCounter, 114 mSDsCounter, 0 mSdLazyCounter, 253 mSolverCounterSat, 29 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 282 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 29 IncrementalHoareTripleChecker+Valid, 253 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-14 15:15:28,140 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [20 Valid, 139 Invalid, 282 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [29 Valid, 253 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-14 15:15:28,140 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-14 15:15:28,140 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-14 15:15:28,140 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:15:28,140 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 15:15:28,140 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 15:15:28,140 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 15:15:28,140 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:28,141 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-14 15:15:28,141 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 15:15:28,141 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:28,141 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:28,141 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-14 15:15:28,141 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-14 15:15:28,141 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:28,141 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-14 15:15:28,141 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 15:15:28,141 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:28,141 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:28,141 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:15:28,141 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:15:28,141 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 15:15:28,141 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-14 15:15:28,142 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 63 [2022-04-14 15:15:28,142 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:15:28,142 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-14 15:15:28,142 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 9 states have call predecessors, (18), 9 states have call successors, (18) [2022-04-14 15:15:28,142 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 15:15:28,142 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:28,144 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-14 15:15:28,166 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-14 15:15:28,351 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:15:28,353 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-14 15:15:28,927 INFO L882 garLoopResultBuilder]: For program point reach_errorEXIT(line 8) no Hoare annotation was computed. [2022-04-14 15:15:28,927 INFO L882 garLoopResultBuilder]: For program point reach_errorENTRY(line 8) no Hoare annotation was computed. [2022-04-14 15:15:28,927 INFO L882 garLoopResultBuilder]: For program point reach_errorFINAL(line 8) no Hoare annotation was computed. [2022-04-14 15:15:28,927 INFO L885 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 11 13) the Hoare annotation is: true [2022-04-14 15:15:28,927 INFO L882 garLoopResultBuilder]: For program point L12(line 12) no Hoare annotation was computed. [2022-04-14 15:15:28,927 INFO L882 garLoopResultBuilder]: For program point L12-2(lines 11 13) no Hoare annotation was computed. [2022-04-14 15:15:28,927 INFO L882 garLoopResultBuilder]: For program point assume_abort_if_notEXIT(lines 11 13) no Hoare annotation was computed. [2022-04-14 15:15:28,927 INFO L882 garLoopResultBuilder]: For program point L64(line 64) no Hoare annotation was computed. [2022-04-14 15:15:28,927 INFO L882 garLoopResultBuilder]: For program point L31(line 31) no Hoare annotation was computed. [2022-04-14 15:15:28,927 INFO L878 garLoopResultBuilder]: At program point L29(line 29) the Hoare annotation is: (and (<= 0 main_~x~0) (<= main_~x~0 1)) [2022-04-14 15:15:28,928 INFO L878 garLoopResultBuilder]: At program point L29-1(line 29) the Hoare annotation is: (and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 1) (<= main_~y~0 1)) [2022-04-14 15:15:28,928 INFO L885 garLoopResultBuilder]: At program point L27(line 27) the Hoare annotation is: true [2022-04-14 15:15:28,928 INFO L882 garLoopResultBuilder]: For program point L27-1(line 27) no Hoare annotation was computed. [2022-04-14 15:15:28,928 INFO L882 garLoopResultBuilder]: For program point mainEXIT(lines 22 66) no Hoare annotation was computed. [2022-04-14 15:15:28,928 INFO L882 garLoopResultBuilder]: For program point L50(lines 47 59) no Hoare annotation was computed. [2022-04-14 15:15:28,928 INFO L878 garLoopResultBuilder]: At program point L48(line 48) the Hoare annotation is: (and (= main_~x~0 main_~r~0) (<= main_~x~0 1) (<= 1 main_~r~0) (= main_~b~0 main_~y~0) (= (+ (* main_~q~0 main_~y~0) main_~r~0 (* main_~a~0 main_~y~0)) (+ main_~b~0 main_~x~0)) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1)) [2022-04-14 15:15:28,928 INFO L878 garLoopResultBuilder]: At program point L48-1(line 48) the Hoare annotation is: (and (= main_~x~0 main_~r~0) (<= main_~x~0 1) (<= 1 main_~r~0) (= main_~b~0 main_~y~0) (= (+ (* main_~q~0 main_~y~0) main_~r~0 (* main_~a~0 main_~y~0)) (+ main_~b~0 main_~x~0)) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1)) [2022-04-14 15:15:28,928 INFO L882 garLoopResultBuilder]: For program point mainFINAL(lines 22 66) no Hoare annotation was computed. [2022-04-14 15:15:28,928 INFO L882 garLoopResultBuilder]: For program point L40(lines 38 62) no Hoare annotation was computed. [2022-04-14 15:15:28,928 INFO L878 garLoopResultBuilder]: At program point L38-2(lines 38 62) the Hoare annotation is: (let ((.cse0 (= (+ (* main_~q~0 main_~y~0) main_~r~0 (* main_~a~0 main_~y~0)) (+ main_~b~0 main_~x~0))) (.cse1 (<= main_~y~0 1))) (or (and (= main_~x~0 main_~r~0) (= main_~b~0 0) (<= 0 main_~x~0) (<= main_~x~0 1) .cse0 (= main_~q~0 0) (<= 1 main_~y~0) .cse1) (and (= main_~b~0 main_~y~0) .cse0 (= main_~q~0 1) (<= main_~x~0 (+ main_~y~0 main_~r~0)) .cse1 (<= main_~y~0 main_~x~0) (< (* main_~r~0 2) main_~x~0)))) [2022-04-14 15:15:28,928 INFO L878 garLoopResultBuilder]: At program point L38-3(lines 38 62) the Hoare annotation is: (let ((.cse0 (<= main_~y~0 1))) (or (and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0) .cse0) (and (= (+ (* main_~q~0 main_~y~0) main_~r~0 (* main_~a~0 main_~y~0)) (+ main_~b~0 main_~x~0)) (<= 1 main_~b~0) (= main_~q~0 1) (<= main_~x~0 (+ main_~y~0 main_~r~0)) .cse0 (<= main_~y~0 main_~x~0) (< (* main_~r~0 2) main_~x~0)))) [2022-04-14 15:15:28,928 INFO L885 garLoopResultBuilder]: At program point mainENTRY(lines 22 66) the Hoare annotation is: true [2022-04-14 15:15:28,928 INFO L878 garLoopResultBuilder]: At program point L55(line 55) the Hoare annotation is: false [2022-04-14 15:15:28,928 INFO L882 garLoopResultBuilder]: For program point L55-1(line 55) no Hoare annotation was computed. [2022-04-14 15:15:28,928 INFO L878 garLoopResultBuilder]: At program point L49(line 49) the Hoare annotation is: (and (= main_~a~0 1) (<= main_~x~0 1) (<= 1 main_~r~0) (= main_~b~0 main_~y~0) (= (+ (* main_~q~0 main_~y~0) main_~r~0 (* main_~a~0 main_~y~0)) (+ main_~b~0 main_~x~0)) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1)) [2022-04-14 15:15:28,928 INFO L878 garLoopResultBuilder]: At program point L47-2(lines 47 59) the Hoare annotation is: (and (= main_~x~0 main_~r~0) (<= main_~x~0 1) (<= 1 main_~r~0) (= main_~b~0 main_~y~0) (= (+ (* main_~q~0 main_~y~0) main_~r~0 (* main_~a~0 main_~y~0)) (+ main_~b~0 main_~x~0)) (= main_~q~0 0) (<= 1 main_~y~0) (<= main_~y~0 1)) [2022-04-14 15:15:28,929 INFO L882 garLoopResultBuilder]: For program point L47-3(lines 47 59) no Hoare annotation was computed. [2022-04-14 15:15:28,929 INFO L878 garLoopResultBuilder]: At program point L39(line 39) the Hoare annotation is: (let ((.cse0 (= (+ (* main_~q~0 main_~y~0) main_~r~0 (* main_~a~0 main_~y~0)) (+ main_~b~0 main_~x~0))) (.cse1 (<= main_~y~0 1))) (or (and (= main_~x~0 main_~r~0) (= main_~b~0 0) (<= 0 main_~x~0) (<= main_~x~0 1) .cse0 (= main_~q~0 0) (<= 1 main_~y~0) .cse1) (and (= main_~b~0 main_~y~0) .cse0 (= main_~q~0 1) (<= main_~x~0 (+ main_~y~0 main_~r~0)) .cse1 (<= main_~y~0 main_~x~0) (< (* main_~r~0 2) main_~x~0)))) [2022-04-14 15:15:28,929 INFO L878 garLoopResultBuilder]: At program point L39-1(line 39) the Hoare annotation is: (let ((.cse0 (= (+ (* main_~q~0 main_~y~0) main_~r~0 (* main_~a~0 main_~y~0)) (+ main_~b~0 main_~x~0))) (.cse1 (<= main_~y~0 1))) (or (and (= main_~x~0 main_~r~0) (<= 0 main_~x~0) (<= main_~x~0 1) .cse0 (= main_~q~0 0) (<= 1 main_~y~0) .cse1) (and .cse0 (<= 1 main_~b~0) (= main_~q~0 1) (<= main_~x~0 (+ main_~y~0 main_~r~0)) .cse1 (<= main_~y~0 main_~x~0) (< (* main_~r~0 2) main_~x~0)))) [2022-04-14 15:15:28,929 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2022-04-14 15:15:28,929 INFO L878 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-14 15:15:28,929 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2022-04-14 15:15:28,929 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-04-14 15:15:28,929 INFO L885 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-14 15:15:28,930 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-14 15:15:28,930 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-04-14 15:15:28,930 INFO L882 garLoopResultBuilder]: For program point L16(lines 16 17) no Hoare annotation was computed. [2022-04-14 15:15:28,930 INFO L882 garLoopResultBuilder]: For program point L15(lines 15 18) no Hoare annotation was computed. [2022-04-14 15:15:28,930 INFO L885 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 14 20) the Hoare annotation is: true [2022-04-14 15:15:28,930 INFO L882 garLoopResultBuilder]: For program point L15-2(lines 14 20) no Hoare annotation was computed. [2022-04-14 15:15:28,930 INFO L882 garLoopResultBuilder]: For program point __VERIFIER_assertEXIT(lines 14 20) no Hoare annotation was computed. [2022-04-14 15:15:28,930 INFO L882 garLoopResultBuilder]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 17) no Hoare annotation was computed. [2022-04-14 15:15:28,936 INFO L719 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:15:28,937 INFO L177 ceAbstractionStarter]: Computing trace abstraction results [2022-04-14 15:15:28,939 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-14 15:15:28,939 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-14 15:15:28,940 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-14 15:15:28,940 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-14 15:15:28,940 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-14 15:15:28,940 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-14 15:15:28,940 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-14 15:15:28,940 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-14 15:15:28,940 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-14 15:15:28,940 WARN L170 areAnnotationChecker]: L27-1 has no Hoare annotation [2022-04-14 15:15:28,940 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-14 15:15:28,940 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-14 15:15:28,940 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-14 15:15:28,940 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-14 15:15:28,940 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: L27-1 has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: L15-2 has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: L31 has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: L55-1 has no Hoare annotation [2022-04-14 15:15:28,941 WARN L170 areAnnotationChecker]: L64 has no Hoare annotation [2022-04-14 15:15:28,955 WARN L170 areAnnotationChecker]: L64 has no Hoare annotation [2022-04-14 15:15:28,956 WARN L170 areAnnotationChecker]: L47-3 has no Hoare annotation [2022-04-14 15:15:28,956 WARN L170 areAnnotationChecker]: L47-3 has no Hoare annotation [2022-04-14 15:15:28,957 WARN L170 areAnnotationChecker]: L47-3 has no Hoare annotation [2022-04-14 15:15:28,957 WARN L170 areAnnotationChecker]: L55-1 has no Hoare annotation [2022-04-14 15:15:28,957 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-14 15:15:28,957 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-14 15:15:28,957 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-14 15:15:28,971 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 03:15:28 BoogieIcfgContainer [2022-04-14 15:15:28,971 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-14 15:15:28,972 INFO L158 Benchmark]: Toolchain (without parser) took 11201.91ms. Allocated memory was 210.8MB in the beginning and 324.0MB in the end (delta: 113.2MB). Free memory was 151.9MB in the beginning and 281.8MB in the end (delta: -129.9MB). Peak memory consumption was 158.7MB. Max. memory is 8.0GB. [2022-04-14 15:15:28,972 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 210.8MB. Free memory is still 168.4MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-14 15:15:28,972 INFO L158 Benchmark]: CACSL2BoogieTranslator took 239.10ms. Allocated memory was 210.8MB in the beginning and 269.5MB in the end (delta: 58.7MB). Free memory was 151.8MB in the beginning and 238.1MB in the end (delta: -86.3MB). Peak memory consumption was 8.3MB. Max. memory is 8.0GB. [2022-04-14 15:15:28,973 INFO L158 Benchmark]: Boogie Preprocessor took 41.20ms. Allocated memory is still 269.5MB. Free memory was 238.1MB in the beginning and 236.6MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-14 15:15:28,973 INFO L158 Benchmark]: RCFGBuilder took 386.04ms. Allocated memory is still 269.5MB. Free memory was 236.6MB in the beginning and 224.4MB in the end (delta: 12.2MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-14 15:15:28,973 INFO L158 Benchmark]: TraceAbstraction took 10531.91ms. Allocated memory was 269.5MB in the beginning and 324.0MB in the end (delta: 54.5MB). Free memory was 223.7MB in the beginning and 281.8MB in the end (delta: -58.0MB). Peak memory consumption was 173.2MB. Max. memory is 8.0GB. [2022-04-14 15:15:28,975 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.09ms. Allocated memory is still 210.8MB. Free memory is still 168.4MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 239.10ms. Allocated memory was 210.8MB in the beginning and 269.5MB in the end (delta: 58.7MB). Free memory was 151.8MB in the beginning and 238.1MB in the end (delta: -86.3MB). Peak memory consumption was 8.3MB. Max. memory is 8.0GB. * Boogie Preprocessor took 41.20ms. Allocated memory is still 269.5MB. Free memory was 238.1MB in the beginning and 236.6MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 386.04ms. Allocated memory is still 269.5MB. Free memory was 236.6MB in the beginning and 224.4MB in the end (delta: 12.2MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * TraceAbstraction took 10531.91ms. Allocated memory was 269.5MB in the beginning and 324.0MB in the end (delta: 54.5MB). Free memory was 223.7MB in the beginning and 281.8MB in the end (delta: -58.0MB). Peak memory consumption was 173.2MB. 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: 10.4s, OverallIterations: 7, TraceHistogramMax: 7, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 3.3s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.6s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 204 SdHoareTripleChecker+Valid, 1.0s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 161 mSDsluCounter, 1078 SdHoareTripleChecker+Invalid, 0.9s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 830 mSDsCounter, 95 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 990 IncrementalHoareTripleChecker+Invalid, 1085 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 95 mSolverCounterUnsat, 248 mSDtfsCounter, 990 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 413 GetRequests, 341 SyntacticMatches, 1 SemanticMatches, 71 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 126 ImplicationChecksByTransitivity, 0.5s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=74occurred in iteration=5, InterpolantAutomatonStates: 57, 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, 13 StatesRemovedByMinimization, 4 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 18 LocationsWithAnnotation, 58 PreInvPairs, 72 NumberOfFragments, 426 HoareAnnotationTreeSize, 58 FomulaSimplifications, 18 FormulaSimplificationTreeSizeReduction, 0.1s HoareSimplificationTime, 18 FomulaSimplificationsInter, 348 FormulaSimplificationTreeSizeReductionInter, 0.4s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 4.2s InterpolantComputationTime, 298 NumberOfCodeBlocks, 298 NumberOfCodeBlocksAsserted, 7 NumberOfCheckSat, 408 ConstructedInterpolants, 0 QuantifiedInterpolants, 1398 SizeOfPredicates, 26 NumberOfNonLiveVariables, 745 ConjunctsInSsa, 94 ConjunctsInUnsatCore, 9 InterpolantComputations, 5 PerfectInterpolantSequences, 382/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: ((((((x == r && x <= 1) && 1 <= r) && b == y) && q * y + r + a * y == b + x) && q == 0) && 1 <= y) && y <= 1 - InvariantResult [Line: 38]: Loop Invariant Derived loop invariant: (((((((x == r && b == 0) && 0 <= x) && x <= 1) && q * y + r + a * y == b + x) && q == 0) && 1 <= y) && y <= 1) || ((((((b == y && q * y + r + a * y == b + x) && q == 1) && x <= y + r) && y <= 1) && y <= x) && r * 2 < x) RESULT: Ultimate proved your program to be correct! [2022-04-14 15:15:29,013 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...