/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/loop-invgen/MADWiFi-encode_ie_ok.i -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 10:44:27,730 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 10:44:27,740 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 10:44:27,791 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 10:44:27,791 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 10:44:27,792 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 10:44:27,795 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 10:44:27,799 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 10:44:27,801 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 10:44:27,805 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 10:44:27,806 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 10:44:27,807 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 10:44:27,808 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 10:44:27,809 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 10:44:27,810 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 10:44:27,814 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 10:44:27,814 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 10:44:27,815 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 10:44:27,817 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 10:44:27,821 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 10:44:27,822 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 10:44:27,823 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 10:44:27,824 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 10:44:27,825 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 10:44:27,826 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 10:44:27,832 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 10:44:27,832 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 10:44:27,832 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 10:44:27,833 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 10:44:27,833 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 10:44:27,834 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 10:44:27,834 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 10:44:27,835 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 10:44:27,835 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 10:44:27,836 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 10:44:27,836 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 10:44:27,836 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 10:44:27,837 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 10:44:27,837 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 10:44:27,837 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 10:44:27,838 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 10:44:27,842 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 10:44:27,842 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2022-04-27 10:44:27,870 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 10:44:27,871 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 10:44:27,871 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-27 10:44:27,871 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-27 10:44:27,872 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 10:44:27,872 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 10:44:27,873 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 10:44:27,873 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 10:44:27,873 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 10:44:27,874 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 10:44:27,874 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 10:44:27,874 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 10:44:27,874 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 10:44:27,874 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 10:44:27,874 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 10:44:27,874 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 10:44:27,875 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 10:44:27,875 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 10:44:27,876 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 10:44:27,876 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 10:44:27,876 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 10:44:27,876 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 10:44:27,876 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 10:44:27,876 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 10:44:27,876 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 10:44:27,877 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 10:44:27,877 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 10:44:27,877 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 10:44:27,877 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 10:44:27,877 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 10:44:27,877 INFO L138 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2022-04-27 10:44:27,877 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-27 10:44:27,877 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 10:44:27,878 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-27 10:44:28,108 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 10:44:28,133 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 10:44:28,135 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 10:44:28,136 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 10:44:28,136 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 10:44:28,137 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/loop-invgen/MADWiFi-encode_ie_ok.i [2022-04-27 10:44:28,192 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/42f540035/8988ad501ee647498b754656c05016bb/FLAGb3bc026dd [2022-04-27 10:44:28,551 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 10:44:28,552 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/loop-invgen/MADWiFi-encode_ie_ok.i [2022-04-27 10:44:28,562 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/42f540035/8988ad501ee647498b754656c05016bb/FLAGb3bc026dd [2022-04-27 10:44:28,969 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/42f540035/8988ad501ee647498b754656c05016bb [2022-04-27 10:44:28,971 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 10:44:28,972 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-27 10:44:28,975 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 10:44:28,975 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 10:44:28,977 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 10:44:28,978 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 10:44:28" (1/1) ... [2022-04-27 10:44:28,979 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@528a5566 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:44:28, skipping insertion in model container [2022-04-27 10:44:28,979 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 10:44:28" (1/1) ... [2022-04-27 10:44:28,984 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 10:44:28,996 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 10:44:29,182 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/loop-invgen/MADWiFi-encode_ie_ok.i[893,906] [2022-04-27 10:44:29,217 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 10:44:29,224 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 10:44:29,243 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/loop-invgen/MADWiFi-encode_ie_ok.i[893,906] [2022-04-27 10:44:29,259 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 10:44:29,270 INFO L208 MainTranslator]: Completed translation [2022-04-27 10:44:29,270 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:44:29 WrapperNode [2022-04-27 10:44:29,270 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 10:44:29,276 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 10:44:29,276 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 10:44:29,276 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 10:44:29,285 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:44:29" (1/1) ... [2022-04-27 10:44:29,286 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:44:29" (1/1) ... [2022-04-27 10:44:29,292 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:44:29" (1/1) ... [2022-04-27 10:44:29,292 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:44:29" (1/1) ... [2022-04-27 10:44:29,306 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:44:29" (1/1) ... [2022-04-27 10:44:29,313 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:44:29" (1/1) ... [2022-04-27 10:44:29,318 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:44:29" (1/1) ... [2022-04-27 10:44:29,322 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 10:44:29,323 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 10:44:29,323 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 10:44:29,323 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 10:44:29,325 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:44:29" (1/1) ... [2022-04-27 10:44:29,331 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 10:44:29,338 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 10:44:29,349 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-27 10:44:29,351 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-27 10:44:29,382 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 10:44:29,382 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 10:44:29,382 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 10:44:29,383 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 10:44:29,385 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 10:44:29,385 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 10:44:29,385 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 10:44:29,385 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 10:44:29,386 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_perror_fail [2022-04-27 10:44:29,386 INFO L130 BoogieDeclarations]: Found specification of procedure __assert [2022-04-27 10:44:29,386 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 10:44:29,386 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 10:44:29,386 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 10:44:29,386 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 10:44:29,387 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 10:44:29,387 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 10:44:29,387 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 10:44:29,387 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 10:44:29,387 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 10:44:29,387 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 10:44:29,387 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 10:44:29,388 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 10:44:29,486 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 10:44:29,488 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 10:44:29,697 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 10:44:29,703 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 10:44:29,704 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-27 10:44:29,705 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 10:44:29 BoogieIcfgContainer [2022-04-27 10:44:29,705 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 10:44:29,706 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 10:44:29,706 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 10:44:29,709 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 10:44:29,709 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 10:44:28" (1/3) ... [2022-04-27 10:44:29,710 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@34a9fd9b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 10:44:29, skipping insertion in model container [2022-04-27 10:44:29,710 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 10:44:29" (2/3) ... [2022-04-27 10:44:29,710 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@34a9fd9b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 10:44:29, skipping insertion in model container [2022-04-27 10:44:29,711 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 10:44:29" (3/3) ... [2022-04-27 10:44:29,712 INFO L111 eAbstractionObserver]: Analyzing ICFG MADWiFi-encode_ie_ok.i [2022-04-27 10:44:29,723 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 10:44:29,724 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 10:44:29,760 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 10:44:29,766 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@6cbba67, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@551463f6 [2022-04-27 10:44:29,766 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 10:44:29,773 INFO L276 IsEmpty]: Start isEmpty. Operand has 29 states, 20 states have (on average 1.6) internal successors, (32), 21 states have internal predecessors, (32), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 10:44:29,778 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-04-27 10:44:29,779 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 10:44:29,779 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 10:44:29,780 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 10:44:29,783 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 10:44:29,784 INFO L85 PathProgramCache]: Analyzing trace with hash -1180455853, now seen corresponding path program 1 times [2022-04-27 10:44:29,791 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 10:44:29,792 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [478680071] [2022-04-27 10:44:29,792 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 10:44:29,792 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 10:44:29,907 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 10:44:30,041 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 10:44:30,044 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 10:44:30,056 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#(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(9, 2); {32#true} is VALID [2022-04-27 10:44:30,056 INFO L290 TraceCheckUtils]: 1: Hoare triple {32#true} assume true; {32#true} is VALID [2022-04-27 10:44:30,057 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {32#true} {32#true} #94#return; {32#true} is VALID [2022-04-27 10:44:30,060 INFO L272 TraceCheckUtils]: 0: Hoare triple {32#true} call ULTIMATE.init(); {41#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 10:44:30,060 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#(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(9, 2); {32#true} is VALID [2022-04-27 10:44:30,060 INFO L290 TraceCheckUtils]: 2: Hoare triple {32#true} assume true; {32#true} is VALID [2022-04-27 10:44:30,061 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {32#true} {32#true} #94#return; {32#true} is VALID [2022-04-27 10:44:30,061 INFO L272 TraceCheckUtils]: 4: Hoare triple {32#true} call #t~ret5 := main(); {32#true} is VALID [2022-04-27 10:44:30,061 INFO L290 TraceCheckUtils]: 5: Hoare triple {32#true} havoc ~p~0;havoc ~i~0;havoc ~leader_len~0;havoc ~bufsize~0;havoc ~bufsize_0~0;havoc ~ielen~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~leader_len~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufsize~0 := #t~nondet2;havoc #t~nondet2;assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;~ielen~0 := #t~nondet3;havoc #t~nondet3; {32#true} is VALID [2022-04-27 10:44:30,061 INFO L290 TraceCheckUtils]: 6: Hoare triple {32#true} assume !!(~leader_len~0 < 1000000); {32#true} is VALID [2022-04-27 10:44:30,062 INFO L290 TraceCheckUtils]: 7: Hoare triple {32#true} assume !!(~bufsize~0 < 1000000); {32#true} is VALID [2022-04-27 10:44:30,062 INFO L290 TraceCheckUtils]: 8: Hoare triple {32#true} assume !!(~ielen~0 < 1000000); {32#true} is VALID [2022-04-27 10:44:30,063 INFO L290 TraceCheckUtils]: 9: Hoare triple {32#true} assume ~leader_len~0 > 0; {37#(<= 1 main_~leader_len~0)} is VALID [2022-04-27 10:44:30,064 INFO L290 TraceCheckUtils]: 10: Hoare triple {37#(<= 1 main_~leader_len~0)} assume ~bufsize~0 > 0; {37#(<= 1 main_~leader_len~0)} is VALID [2022-04-27 10:44:30,065 INFO L290 TraceCheckUtils]: 11: Hoare triple {37#(<= 1 main_~leader_len~0)} assume ~ielen~0 > 0; {37#(<= 1 main_~leader_len~0)} is VALID [2022-04-27 10:44:30,066 INFO L290 TraceCheckUtils]: 12: Hoare triple {37#(<= 1 main_~leader_len~0)} assume !(~bufsize~0 < ~leader_len~0);~p~0 := 0;~bufsize_0~0 := ~bufsize~0;~bufsize~0 := ~bufsize~0 - ~leader_len~0;~p~0 := ~p~0 + ~leader_len~0; {38#(<= 1 main_~p~0)} is VALID [2022-04-27 10:44:30,067 INFO L290 TraceCheckUtils]: 13: Hoare triple {38#(<= 1 main_~p~0)} assume !(~bufsize~0 < 2 * ~ielen~0);~i~0 := 0; {38#(<= 1 main_~p~0)} is VALID [2022-04-27 10:44:30,069 INFO L290 TraceCheckUtils]: 14: Hoare triple {38#(<= 1 main_~p~0)} assume !!(~i~0 < ~ielen~0 && ~bufsize~0 > 2); {38#(<= 1 main_~p~0)} is VALID [2022-04-27 10:44:30,070 INFO L272 TraceCheckUtils]: 15: Hoare triple {38#(<= 1 main_~p~0)} call __VERIFIER_assert((if 0 <= ~p~0 then 1 else 0)); {39#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 10:44:30,071 INFO L290 TraceCheckUtils]: 16: Hoare triple {39#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {40#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 10:44:30,071 INFO L290 TraceCheckUtils]: 17: Hoare triple {40#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {33#false} is VALID [2022-04-27 10:44:30,072 INFO L290 TraceCheckUtils]: 18: Hoare triple {33#false} assume !false; {33#false} is VALID [2022-04-27 10:44:30,072 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 10:44:30,072 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 10:44:30,073 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [478680071] [2022-04-27 10:44:30,073 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [478680071] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 10:44:30,074 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 10:44:30,074 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-27 10:44:30,075 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [523047795] [2022-04-27 10:44:30,076 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 10:44:30,080 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.142857142857143) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 19 [2022-04-27 10:44:30,081 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 10:44:30,084 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 2.142857142857143) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 10:44:30,108 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 10:44:30,108 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-27 10:44:30,110 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 10:44:30,130 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-27 10:44:30,131 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-04-27 10:44:30,134 INFO L87 Difference]: Start difference. First operand has 29 states, 20 states have (on average 1.6) internal successors, (32), 21 states have internal predecessors, (32), 4 states have call successors, (4), 3 states have call predecessors, (4), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand has 7 states, 7 states have (on average 2.142857142857143) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 10:44:30,649 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 10:44:30,649 INFO L93 Difference]: Finished difference Result 52 states and 68 transitions. [2022-04-27 10:44:30,650 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-27 10:44:30,650 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.142857142857143) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 19 [2022-04-27 10:44:30,650 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 10:44:30,651 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.142857142857143) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 10:44:30,661 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 68 transitions. [2022-04-27 10:44:30,662 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.142857142857143) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 10:44:30,665 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 68 transitions. [2022-04-27 10:44:30,666 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 68 transitions. [2022-04-27 10:44:30,727 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 10:44:30,733 INFO L225 Difference]: With dead ends: 52 [2022-04-27 10:44:30,734 INFO L226 Difference]: Without dead ends: 29 [2022-04-27 10:44:30,736 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-27 10:44:30,739 INFO L413 NwaCegarLoop]: 33 mSDtfsCounter, 50 mSDsluCounter, 27 mSDsCounter, 0 mSdLazyCounter, 116 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 60 SdHoareTripleChecker+Invalid, 130 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 116 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 10:44:30,739 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [50 Valid, 60 Invalid, 130 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 116 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 10:44:30,750 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-27 10:44:30,765 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2022-04-27 10:44:30,765 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 10:44:30,766 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand has 29 states, 21 states have (on average 1.0476190476190477) internal successors, (22), 21 states have internal predecessors, (22), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 10:44:30,767 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand has 29 states, 21 states have (on average 1.0476190476190477) internal successors, (22), 21 states have internal predecessors, (22), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 10:44:30,767 INFO L87 Difference]: Start difference. First operand 29 states. Second operand has 29 states, 21 states have (on average 1.0476190476190477) internal successors, (22), 21 states have internal predecessors, (22), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 10:44:30,770 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 10:44:30,770 INFO L93 Difference]: Finished difference Result 29 states and 29 transitions. [2022-04-27 10:44:30,770 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 29 transitions. [2022-04-27 10:44:30,770 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 10:44:30,770 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 10:44:30,771 INFO L74 IsIncluded]: Start isIncluded. First operand has 29 states, 21 states have (on average 1.0476190476190477) internal successors, (22), 21 states have internal predecessors, (22), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 29 states. [2022-04-27 10:44:30,771 INFO L87 Difference]: Start difference. First operand has 29 states, 21 states have (on average 1.0476190476190477) internal successors, (22), 21 states have internal predecessors, (22), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 29 states. [2022-04-27 10:44:30,773 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 10:44:30,773 INFO L93 Difference]: Finished difference Result 29 states and 29 transitions. [2022-04-27 10:44:30,773 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 29 transitions. [2022-04-27 10:44:30,774 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 10:44:30,774 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 10:44:30,774 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 10:44:30,774 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 10:44:30,775 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 21 states have (on average 1.0476190476190477) internal successors, (22), 21 states have internal predecessors, (22), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-27 10:44:30,776 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 29 transitions. [2022-04-27 10:44:30,777 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 29 transitions. Word has length 19 [2022-04-27 10:44:30,777 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 10:44:30,778 INFO L495 AbstractCegarLoop]: Abstraction has 29 states and 29 transitions. [2022-04-27 10:44:30,778 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 2.142857142857143) internal successors, (15), 5 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-27 10:44:30,778 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 29 transitions. [2022-04-27 10:44:30,779 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-27 10:44:30,779 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 10:44:30,779 INFO L195 NwaCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 10:44:30,779 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 10:44:30,779 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 10:44:30,780 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 10:44:30,780 INFO L85 PathProgramCache]: Analyzing trace with hash -107986180, now seen corresponding path program 1 times [2022-04-27 10:44:30,780 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 10:44:30,780 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1068083004] [2022-04-27 10:44:30,781 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 10:44:30,781 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 10:44:30,804 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 10:44:30,856 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 10:44:30,858 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 10:44:30,863 INFO L290 TraceCheckUtils]: 0: Hoare triple {232#(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(9, 2); {219#true} is VALID [2022-04-27 10:44:30,863 INFO L290 TraceCheckUtils]: 1: Hoare triple {219#true} assume true; {219#true} is VALID [2022-04-27 10:44:30,864 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {219#true} {219#true} #94#return; {219#true} is VALID [2022-04-27 10:44:30,864 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 15 [2022-04-27 10:44:30,867 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 10:44:30,871 INFO L290 TraceCheckUtils]: 0: Hoare triple {219#true} ~cond := #in~cond; {219#true} is VALID [2022-04-27 10:44:30,871 INFO L290 TraceCheckUtils]: 1: Hoare triple {219#true} assume !(0 == ~cond); {219#true} is VALID [2022-04-27 10:44:30,871 INFO L290 TraceCheckUtils]: 2: Hoare triple {219#true} assume true; {219#true} is VALID [2022-04-27 10:44:30,872 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {219#true} {225#(<= (+ main_~p~0 3) main_~bufsize_0~0)} #90#return; {225#(<= (+ main_~p~0 3) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:30,872 INFO L272 TraceCheckUtils]: 0: Hoare triple {219#true} call ULTIMATE.init(); {232#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 10:44:30,873 INFO L290 TraceCheckUtils]: 1: Hoare triple {232#(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(9, 2); {219#true} is VALID [2022-04-27 10:44:30,873 INFO L290 TraceCheckUtils]: 2: Hoare triple {219#true} assume true; {219#true} is VALID [2022-04-27 10:44:30,873 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {219#true} {219#true} #94#return; {219#true} is VALID [2022-04-27 10:44:30,873 INFO L272 TraceCheckUtils]: 4: Hoare triple {219#true} call #t~ret5 := main(); {219#true} is VALID [2022-04-27 10:44:30,873 INFO L290 TraceCheckUtils]: 5: Hoare triple {219#true} havoc ~p~0;havoc ~i~0;havoc ~leader_len~0;havoc ~bufsize~0;havoc ~bufsize_0~0;havoc ~ielen~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~leader_len~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufsize~0 := #t~nondet2;havoc #t~nondet2;assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;~ielen~0 := #t~nondet3;havoc #t~nondet3; {219#true} is VALID [2022-04-27 10:44:30,873 INFO L290 TraceCheckUtils]: 6: Hoare triple {219#true} assume !!(~leader_len~0 < 1000000); {219#true} is VALID [2022-04-27 10:44:30,874 INFO L290 TraceCheckUtils]: 7: Hoare triple {219#true} assume !!(~bufsize~0 < 1000000); {219#true} is VALID [2022-04-27 10:44:30,874 INFO L290 TraceCheckUtils]: 8: Hoare triple {219#true} assume !!(~ielen~0 < 1000000); {219#true} is VALID [2022-04-27 10:44:30,874 INFO L290 TraceCheckUtils]: 9: Hoare triple {219#true} assume ~leader_len~0 > 0; {219#true} is VALID [2022-04-27 10:44:30,874 INFO L290 TraceCheckUtils]: 10: Hoare triple {219#true} assume ~bufsize~0 > 0; {219#true} is VALID [2022-04-27 10:44:30,874 INFO L290 TraceCheckUtils]: 11: Hoare triple {219#true} assume ~ielen~0 > 0; {219#true} is VALID [2022-04-27 10:44:30,875 INFO L290 TraceCheckUtils]: 12: Hoare triple {219#true} assume !(~bufsize~0 < ~leader_len~0);~p~0 := 0;~bufsize_0~0 := ~bufsize~0;~bufsize~0 := ~bufsize~0 - ~leader_len~0;~p~0 := ~p~0 + ~leader_len~0; {224#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:30,875 INFO L290 TraceCheckUtils]: 13: Hoare triple {224#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} assume !(~bufsize~0 < 2 * ~ielen~0);~i~0 := 0; {224#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:30,876 INFO L290 TraceCheckUtils]: 14: Hoare triple {224#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} assume !!(~i~0 < ~ielen~0 && ~bufsize~0 > 2); {225#(<= (+ main_~p~0 3) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:30,876 INFO L272 TraceCheckUtils]: 15: Hoare triple {225#(<= (+ main_~p~0 3) main_~bufsize_0~0)} call __VERIFIER_assert((if 0 <= ~p~0 then 1 else 0)); {219#true} is VALID [2022-04-27 10:44:30,876 INFO L290 TraceCheckUtils]: 16: Hoare triple {219#true} ~cond := #in~cond; {219#true} is VALID [2022-04-27 10:44:30,876 INFO L290 TraceCheckUtils]: 17: Hoare triple {219#true} assume !(0 == ~cond); {219#true} is VALID [2022-04-27 10:44:30,877 INFO L290 TraceCheckUtils]: 18: Hoare triple {219#true} assume true; {219#true} is VALID [2022-04-27 10:44:30,877 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {219#true} {225#(<= (+ main_~p~0 3) main_~bufsize_0~0)} #90#return; {225#(<= (+ main_~p~0 3) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:30,878 INFO L272 TraceCheckUtils]: 20: Hoare triple {225#(<= (+ main_~p~0 3) main_~bufsize_0~0)} call __VERIFIER_assert((if 1 + ~p~0 < ~bufsize_0~0 then 1 else 0)); {230#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 10:44:30,879 INFO L290 TraceCheckUtils]: 21: Hoare triple {230#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {231#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 10:44:30,879 INFO L290 TraceCheckUtils]: 22: Hoare triple {231#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {220#false} is VALID [2022-04-27 10:44:30,879 INFO L290 TraceCheckUtils]: 23: Hoare triple {220#false} assume !false; {220#false} is VALID [2022-04-27 10:44:30,880 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 10:44:30,880 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 10:44:30,880 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1068083004] [2022-04-27 10:44:30,880 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1068083004] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 10:44:30,880 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 10:44:30,880 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-27 10:44:30,881 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [513682187] [2022-04-27 10:44:30,881 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 10:44:30,882 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 24 [2022-04-27 10:44:30,882 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 10:44:30,883 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 10:44:30,901 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 10:44:30,901 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-27 10:44:30,901 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 10:44:30,902 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-27 10:44:30,902 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-04-27 10:44:30,902 INFO L87 Difference]: Start difference. First operand 29 states and 29 transitions. Second operand has 7 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 10:44:31,219 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 10:44:31,219 INFO L93 Difference]: Finished difference Result 39 states and 40 transitions. [2022-04-27 10:44:31,219 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-27 10:44:31,220 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 24 [2022-04-27 10:44:31,220 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 10:44:31,222 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 10:44:31,230 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 37 transitions. [2022-04-27 10:44:31,231 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 10:44:31,236 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 37 transitions. [2022-04-27 10:44:31,236 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 37 transitions. [2022-04-27 10:44:31,279 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 10:44:31,283 INFO L225 Difference]: With dead ends: 39 [2022-04-27 10:44:31,283 INFO L226 Difference]: Without dead ends: 37 [2022-04-27 10:44:31,287 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 15 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-27 10:44:31,290 INFO L413 NwaCegarLoop]: 22 mSDtfsCounter, 23 mSDsluCounter, 22 mSDsCounter, 0 mSdLazyCounter, 100 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 25 SdHoareTripleChecker+Valid, 44 SdHoareTripleChecker+Invalid, 112 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 100 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 10:44:31,291 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [25 Valid, 44 Invalid, 112 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 100 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 10:44:31,292 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-27 10:44:31,310 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 36. [2022-04-27 10:44:31,310 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 10:44:31,312 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 36 states, 25 states have (on average 1.04) internal successors, (26), 26 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-27 10:44:31,313 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 36 states, 25 states have (on average 1.04) internal successors, (26), 26 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-27 10:44:31,313 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 36 states, 25 states have (on average 1.04) internal successors, (26), 26 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-27 10:44:31,318 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 10:44:31,318 INFO L93 Difference]: Finished difference Result 37 states and 38 transitions. [2022-04-27 10:44:31,318 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 38 transitions. [2022-04-27 10:44:31,319 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 10:44:31,319 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 10:44:31,320 INFO L74 IsIncluded]: Start isIncluded. First operand has 36 states, 25 states have (on average 1.04) internal successors, (26), 26 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 37 states. [2022-04-27 10:44:31,320 INFO L87 Difference]: Start difference. First operand has 36 states, 25 states have (on average 1.04) internal successors, (26), 26 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 37 states. [2022-04-27 10:44:31,329 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 10:44:31,329 INFO L93 Difference]: Finished difference Result 37 states and 38 transitions. [2022-04-27 10:44:31,329 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 38 transitions. [2022-04-27 10:44:31,330 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 10:44:31,330 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 10:44:31,330 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 10:44:31,331 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 10:44:31,332 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 25 states have (on average 1.04) internal successors, (26), 26 states have internal predecessors, (26), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-27 10:44:31,339 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 37 transitions. [2022-04-27 10:44:31,339 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 37 transitions. Word has length 24 [2022-04-27 10:44:31,339 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 10:44:31,340 INFO L495 AbstractCegarLoop]: Abstraction has 36 states and 37 transitions. [2022-04-27 10:44:31,341 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 6 states have (on average 3.0) internal successors, (18), 5 states have internal predecessors, (18), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 10:44:31,341 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 37 transitions. [2022-04-27 10:44:31,343 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-27 10:44:31,343 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 10:44:31,344 INFO L195 NwaCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 10:44:31,344 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-27 10:44:31,344 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 10:44:31,345 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 10:44:31,345 INFO L85 PathProgramCache]: Analyzing trace with hash -1340590469, now seen corresponding path program 1 times [2022-04-27 10:44:31,345 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 10:44:31,346 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [128145996] [2022-04-27 10:44:31,347 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 10:44:31,347 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 10:44:31,391 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 10:44:31,495 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 10:44:31,498 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 10:44:31,508 INFO L290 TraceCheckUtils]: 0: Hoare triple {444#(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(9, 2); {420#true} is VALID [2022-04-27 10:44:31,509 INFO L290 TraceCheckUtils]: 1: Hoare triple {420#true} assume true; {420#true} is VALID [2022-04-27 10:44:31,509 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {420#true} {420#true} #94#return; {420#true} is VALID [2022-04-27 10:44:31,509 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 15 [2022-04-27 10:44:31,511 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 10:44:31,515 INFO L290 TraceCheckUtils]: 0: Hoare triple {420#true} ~cond := #in~cond; {420#true} is VALID [2022-04-27 10:44:31,515 INFO L290 TraceCheckUtils]: 1: Hoare triple {420#true} assume !(0 == ~cond); {420#true} is VALID [2022-04-27 10:44:31,515 INFO L290 TraceCheckUtils]: 2: Hoare triple {420#true} assume true; {420#true} is VALID [2022-04-27 10:44:31,516 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {420#true} {426#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} #90#return; {426#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:31,516 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 20 [2022-04-27 10:44:31,518 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 10:44:31,522 INFO L290 TraceCheckUtils]: 0: Hoare triple {420#true} ~cond := #in~cond; {420#true} is VALID [2022-04-27 10:44:31,523 INFO L290 TraceCheckUtils]: 1: Hoare triple {420#true} assume !(0 == ~cond); {420#true} is VALID [2022-04-27 10:44:31,523 INFO L290 TraceCheckUtils]: 2: Hoare triple {420#true} assume true; {420#true} is VALID [2022-04-27 10:44:31,524 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {420#true} {426#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} #92#return; {426#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:31,524 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2022-04-27 10:44:31,525 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 10:44:31,528 INFO L290 TraceCheckUtils]: 0: Hoare triple {420#true} ~cond := #in~cond; {420#true} is VALID [2022-04-27 10:44:31,529 INFO L290 TraceCheckUtils]: 1: Hoare triple {420#true} assume !(0 == ~cond); {420#true} is VALID [2022-04-27 10:44:31,529 INFO L290 TraceCheckUtils]: 2: Hoare triple {420#true} assume true; {420#true} is VALID [2022-04-27 10:44:31,530 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {420#true} {437#(<= (+ main_~p~0 2) main_~bufsize_0~0)} #90#return; {437#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:31,530 INFO L272 TraceCheckUtils]: 0: Hoare triple {420#true} call ULTIMATE.init(); {444#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 10:44:31,530 INFO L290 TraceCheckUtils]: 1: Hoare triple {444#(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(9, 2); {420#true} is VALID [2022-04-27 10:44:31,531 INFO L290 TraceCheckUtils]: 2: Hoare triple {420#true} assume true; {420#true} is VALID [2022-04-27 10:44:31,531 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {420#true} {420#true} #94#return; {420#true} is VALID [2022-04-27 10:44:31,531 INFO L272 TraceCheckUtils]: 4: Hoare triple {420#true} call #t~ret5 := main(); {420#true} is VALID [2022-04-27 10:44:31,531 INFO L290 TraceCheckUtils]: 5: Hoare triple {420#true} havoc ~p~0;havoc ~i~0;havoc ~leader_len~0;havoc ~bufsize~0;havoc ~bufsize_0~0;havoc ~ielen~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~leader_len~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufsize~0 := #t~nondet2;havoc #t~nondet2;assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;~ielen~0 := #t~nondet3;havoc #t~nondet3; {420#true} is VALID [2022-04-27 10:44:31,531 INFO L290 TraceCheckUtils]: 6: Hoare triple {420#true} assume !!(~leader_len~0 < 1000000); {420#true} is VALID [2022-04-27 10:44:31,531 INFO L290 TraceCheckUtils]: 7: Hoare triple {420#true} assume !!(~bufsize~0 < 1000000); {420#true} is VALID [2022-04-27 10:44:31,532 INFO L290 TraceCheckUtils]: 8: Hoare triple {420#true} assume !!(~ielen~0 < 1000000); {420#true} is VALID [2022-04-27 10:44:31,532 INFO L290 TraceCheckUtils]: 9: Hoare triple {420#true} assume ~leader_len~0 > 0; {420#true} is VALID [2022-04-27 10:44:31,532 INFO L290 TraceCheckUtils]: 10: Hoare triple {420#true} assume ~bufsize~0 > 0; {420#true} is VALID [2022-04-27 10:44:31,532 INFO L290 TraceCheckUtils]: 11: Hoare triple {420#true} assume ~ielen~0 > 0; {420#true} is VALID [2022-04-27 10:44:31,533 INFO L290 TraceCheckUtils]: 12: Hoare triple {420#true} assume !(~bufsize~0 < ~leader_len~0);~p~0 := 0;~bufsize_0~0 := ~bufsize~0;~bufsize~0 := ~bufsize~0 - ~leader_len~0;~p~0 := ~p~0 + ~leader_len~0; {425#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:31,533 INFO L290 TraceCheckUtils]: 13: Hoare triple {425#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} assume !(~bufsize~0 < 2 * ~ielen~0);~i~0 := 0; {426#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:31,534 INFO L290 TraceCheckUtils]: 14: Hoare triple {426#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} assume !!(~i~0 < ~ielen~0 && ~bufsize~0 > 2); {426#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:31,534 INFO L272 TraceCheckUtils]: 15: Hoare triple {426#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} call __VERIFIER_assert((if 0 <= ~p~0 then 1 else 0)); {420#true} is VALID [2022-04-27 10:44:31,534 INFO L290 TraceCheckUtils]: 16: Hoare triple {420#true} ~cond := #in~cond; {420#true} is VALID [2022-04-27 10:44:31,535 INFO L290 TraceCheckUtils]: 17: Hoare triple {420#true} assume !(0 == ~cond); {420#true} is VALID [2022-04-27 10:44:31,535 INFO L290 TraceCheckUtils]: 18: Hoare triple {420#true} assume true; {420#true} is VALID [2022-04-27 10:44:31,535 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {420#true} {426#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} #90#return; {426#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:31,536 INFO L272 TraceCheckUtils]: 20: Hoare triple {426#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} call __VERIFIER_assert((if 1 + ~p~0 < ~bufsize_0~0 then 1 else 0)); {420#true} is VALID [2022-04-27 10:44:31,536 INFO L290 TraceCheckUtils]: 21: Hoare triple {420#true} ~cond := #in~cond; {420#true} is VALID [2022-04-27 10:44:31,536 INFO L290 TraceCheckUtils]: 22: Hoare triple {420#true} assume !(0 == ~cond); {420#true} is VALID [2022-04-27 10:44:31,536 INFO L290 TraceCheckUtils]: 23: Hoare triple {420#true} assume true; {420#true} is VALID [2022-04-27 10:44:31,537 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {420#true} {426#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} #92#return; {426#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:31,538 INFO L290 TraceCheckUtils]: 25: Hoare triple {426#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} ~p~0 := 2 + ~p~0; {435#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (= main_~i~0 0))} is VALID [2022-04-27 10:44:31,538 INFO L290 TraceCheckUtils]: 26: Hoare triple {435#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (= main_~i~0 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {436#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-27 10:44:31,539 INFO L290 TraceCheckUtils]: 27: Hoare triple {436#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} assume !!(~i~0 < ~ielen~0 && ~bufsize~0 > 2); {437#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:31,539 INFO L272 TraceCheckUtils]: 28: Hoare triple {437#(<= (+ main_~p~0 2) main_~bufsize_0~0)} call __VERIFIER_assert((if 0 <= ~p~0 then 1 else 0)); {420#true} is VALID [2022-04-27 10:44:31,539 INFO L290 TraceCheckUtils]: 29: Hoare triple {420#true} ~cond := #in~cond; {420#true} is VALID [2022-04-27 10:44:31,539 INFO L290 TraceCheckUtils]: 30: Hoare triple {420#true} assume !(0 == ~cond); {420#true} is VALID [2022-04-27 10:44:31,540 INFO L290 TraceCheckUtils]: 31: Hoare triple {420#true} assume true; {420#true} is VALID [2022-04-27 10:44:31,540 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {420#true} {437#(<= (+ main_~p~0 2) main_~bufsize_0~0)} #90#return; {437#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:31,541 INFO L272 TraceCheckUtils]: 33: Hoare triple {437#(<= (+ main_~p~0 2) main_~bufsize_0~0)} call __VERIFIER_assert((if 1 + ~p~0 < ~bufsize_0~0 then 1 else 0)); {442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 10:44:31,541 INFO L290 TraceCheckUtils]: 34: Hoare triple {442#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {443#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 10:44:31,542 INFO L290 TraceCheckUtils]: 35: Hoare triple {443#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {421#false} is VALID [2022-04-27 10:44:31,542 INFO L290 TraceCheckUtils]: 36: Hoare triple {421#false} assume !false; {421#false} is VALID [2022-04-27 10:44:31,542 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 10:44:31,542 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 10:44:31,543 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [128145996] [2022-04-27 10:44:31,543 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [128145996] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 10:44:31,543 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1613451744] [2022-04-27 10:44:31,543 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 10:44:31,543 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 10:44:31,543 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 10:44:31,547 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 10:44:31,567 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-27 10:44:31,602 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 10:44:31,604 INFO L263 TraceCheckSpWp]: Trace formula consists of 107 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-27 10:44:31,640 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 10:44:31,648 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 10:44:32,110 INFO L272 TraceCheckUtils]: 0: Hoare triple {420#true} call ULTIMATE.init(); {420#true} is VALID [2022-04-27 10:44:32,111 INFO L290 TraceCheckUtils]: 1: Hoare triple {420#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(9, 2); {420#true} is VALID [2022-04-27 10:44:32,111 INFO L290 TraceCheckUtils]: 2: Hoare triple {420#true} assume true; {420#true} is VALID [2022-04-27 10:44:32,111 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {420#true} {420#true} #94#return; {420#true} is VALID [2022-04-27 10:44:32,111 INFO L272 TraceCheckUtils]: 4: Hoare triple {420#true} call #t~ret5 := main(); {420#true} is VALID [2022-04-27 10:44:32,112 INFO L290 TraceCheckUtils]: 5: Hoare triple {420#true} havoc ~p~0;havoc ~i~0;havoc ~leader_len~0;havoc ~bufsize~0;havoc ~bufsize_0~0;havoc ~ielen~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~leader_len~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufsize~0 := #t~nondet2;havoc #t~nondet2;assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;~ielen~0 := #t~nondet3;havoc #t~nondet3; {420#true} is VALID [2022-04-27 10:44:32,113 INFO L290 TraceCheckUtils]: 6: Hoare triple {420#true} assume !!(~leader_len~0 < 1000000); {420#true} is VALID [2022-04-27 10:44:32,113 INFO L290 TraceCheckUtils]: 7: Hoare triple {420#true} assume !!(~bufsize~0 < 1000000); {420#true} is VALID [2022-04-27 10:44:32,113 INFO L290 TraceCheckUtils]: 8: Hoare triple {420#true} assume !!(~ielen~0 < 1000000); {420#true} is VALID [2022-04-27 10:44:32,114 INFO L290 TraceCheckUtils]: 9: Hoare triple {420#true} assume ~leader_len~0 > 0; {420#true} is VALID [2022-04-27 10:44:32,114 INFO L290 TraceCheckUtils]: 10: Hoare triple {420#true} assume ~bufsize~0 > 0; {420#true} is VALID [2022-04-27 10:44:32,122 INFO L290 TraceCheckUtils]: 11: Hoare triple {420#true} assume ~ielen~0 > 0; {420#true} is VALID [2022-04-27 10:44:32,123 INFO L290 TraceCheckUtils]: 12: Hoare triple {420#true} assume !(~bufsize~0 < ~leader_len~0);~p~0 := 0;~bufsize_0~0 := ~bufsize~0;~bufsize~0 := ~bufsize~0 - ~leader_len~0;~p~0 := ~p~0 + ~leader_len~0; {425#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:32,126 INFO L290 TraceCheckUtils]: 13: Hoare triple {425#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} assume !(~bufsize~0 < 2 * ~ielen~0);~i~0 := 0; {487#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:32,126 INFO L290 TraceCheckUtils]: 14: Hoare triple {487#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} assume !!(~i~0 < ~ielen~0 && ~bufsize~0 > 2); {487#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:32,127 INFO L272 TraceCheckUtils]: 15: Hoare triple {487#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} call __VERIFIER_assert((if 0 <= ~p~0 then 1 else 0)); {420#true} is VALID [2022-04-27 10:44:32,127 INFO L290 TraceCheckUtils]: 16: Hoare triple {420#true} ~cond := #in~cond; {420#true} is VALID [2022-04-27 10:44:32,127 INFO L290 TraceCheckUtils]: 17: Hoare triple {420#true} assume !(0 == ~cond); {420#true} is VALID [2022-04-27 10:44:32,127 INFO L290 TraceCheckUtils]: 18: Hoare triple {420#true} assume true; {420#true} is VALID [2022-04-27 10:44:32,129 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {420#true} {487#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} #90#return; {487#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:32,129 INFO L272 TraceCheckUtils]: 20: Hoare triple {487#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} call __VERIFIER_assert((if 1 + ~p~0 < ~bufsize_0~0 then 1 else 0)); {420#true} is VALID [2022-04-27 10:44:32,129 INFO L290 TraceCheckUtils]: 21: Hoare triple {420#true} ~cond := #in~cond; {420#true} is VALID [2022-04-27 10:44:32,129 INFO L290 TraceCheckUtils]: 22: Hoare triple {420#true} assume !(0 == ~cond); {420#true} is VALID [2022-04-27 10:44:32,129 INFO L290 TraceCheckUtils]: 23: Hoare triple {420#true} assume true; {420#true} is VALID [2022-04-27 10:44:32,130 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {420#true} {487#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} #92#return; {487#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:32,130 INFO L290 TraceCheckUtils]: 25: Hoare triple {487#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} ~p~0 := 2 + ~p~0; {524#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 0 main_~i~0))} is VALID [2022-04-27 10:44:32,131 INFO L290 TraceCheckUtils]: 26: Hoare triple {524#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 0 main_~i~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {528#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} is VALID [2022-04-27 10:44:32,132 INFO L290 TraceCheckUtils]: 27: Hoare triple {528#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} assume !!(~i~0 < ~ielen~0 && ~bufsize~0 > 2); {437#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:32,132 INFO L272 TraceCheckUtils]: 28: Hoare triple {437#(<= (+ main_~p~0 2) main_~bufsize_0~0)} call __VERIFIER_assert((if 0 <= ~p~0 then 1 else 0)); {420#true} is VALID [2022-04-27 10:44:32,132 INFO L290 TraceCheckUtils]: 29: Hoare triple {420#true} ~cond := #in~cond; {420#true} is VALID [2022-04-27 10:44:32,132 INFO L290 TraceCheckUtils]: 30: Hoare triple {420#true} assume !(0 == ~cond); {420#true} is VALID [2022-04-27 10:44:32,132 INFO L290 TraceCheckUtils]: 31: Hoare triple {420#true} assume true; {420#true} is VALID [2022-04-27 10:44:32,133 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {420#true} {437#(<= (+ main_~p~0 2) main_~bufsize_0~0)} #90#return; {437#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:32,133 INFO L272 TraceCheckUtils]: 33: Hoare triple {437#(<= (+ main_~p~0 2) main_~bufsize_0~0)} call __VERIFIER_assert((if 1 + ~p~0 < ~bufsize_0~0 then 1 else 0)); {550#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 10:44:32,134 INFO L290 TraceCheckUtils]: 34: Hoare triple {550#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {554#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 10:44:32,134 INFO L290 TraceCheckUtils]: 35: Hoare triple {554#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {421#false} is VALID [2022-04-27 10:44:32,134 INFO L290 TraceCheckUtils]: 36: Hoare triple {421#false} assume !false; {421#false} is VALID [2022-04-27 10:44:32,135 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 10:44:32,135 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 10:44:32,656 INFO L290 TraceCheckUtils]: 36: Hoare triple {421#false} assume !false; {421#false} is VALID [2022-04-27 10:44:32,657 INFO L290 TraceCheckUtils]: 35: Hoare triple {554#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {421#false} is VALID [2022-04-27 10:44:32,658 INFO L290 TraceCheckUtils]: 34: Hoare triple {550#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {554#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 10:44:32,658 INFO L272 TraceCheckUtils]: 33: Hoare triple {437#(<= (+ main_~p~0 2) main_~bufsize_0~0)} call __VERIFIER_assert((if 1 + ~p~0 < ~bufsize_0~0 then 1 else 0)); {550#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 10:44:32,659 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {420#true} {437#(<= (+ main_~p~0 2) main_~bufsize_0~0)} #90#return; {437#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:32,659 INFO L290 TraceCheckUtils]: 31: Hoare triple {420#true} assume true; {420#true} is VALID [2022-04-27 10:44:32,659 INFO L290 TraceCheckUtils]: 30: Hoare triple {420#true} assume !(0 == ~cond); {420#true} is VALID [2022-04-27 10:44:32,660 INFO L290 TraceCheckUtils]: 29: Hoare triple {420#true} ~cond := #in~cond; {420#true} is VALID [2022-04-27 10:44:32,660 INFO L272 TraceCheckUtils]: 28: Hoare triple {437#(<= (+ main_~p~0 2) main_~bufsize_0~0)} call __VERIFIER_assert((if 0 <= ~p~0 then 1 else 0)); {420#true} is VALID [2022-04-27 10:44:32,660 INFO L290 TraceCheckUtils]: 27: Hoare triple {588#(or (not (< main_~i~0 main_~ielen~0)) (<= (+ main_~p~0 2) main_~bufsize_0~0))} assume !!(~i~0 < ~ielen~0 && ~bufsize~0 > 2); {437#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:32,661 INFO L290 TraceCheckUtils]: 26: Hoare triple {592#(or (<= (+ main_~p~0 2) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {588#(or (not (< main_~i~0 main_~ielen~0)) (<= (+ main_~p~0 2) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:32,662 INFO L290 TraceCheckUtils]: 25: Hoare triple {596#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} ~p~0 := 2 + ~p~0; {592#(or (<= (+ main_~p~0 2) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} is VALID [2022-04-27 10:44:32,662 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {420#true} {596#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} #92#return; {596#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} is VALID [2022-04-27 10:44:32,663 INFO L290 TraceCheckUtils]: 23: Hoare triple {420#true} assume true; {420#true} is VALID [2022-04-27 10:44:32,663 INFO L290 TraceCheckUtils]: 22: Hoare triple {420#true} assume !(0 == ~cond); {420#true} is VALID [2022-04-27 10:44:32,663 INFO L290 TraceCheckUtils]: 21: Hoare triple {420#true} ~cond := #in~cond; {420#true} is VALID [2022-04-27 10:44:32,663 INFO L272 TraceCheckUtils]: 20: Hoare triple {596#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} call __VERIFIER_assert((if 1 + ~p~0 < ~bufsize_0~0 then 1 else 0)); {420#true} is VALID [2022-04-27 10:44:32,664 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {420#true} {596#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} #90#return; {596#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} is VALID [2022-04-27 10:44:32,664 INFO L290 TraceCheckUtils]: 18: Hoare triple {420#true} assume true; {420#true} is VALID [2022-04-27 10:44:32,664 INFO L290 TraceCheckUtils]: 17: Hoare triple {420#true} assume !(0 == ~cond); {420#true} is VALID [2022-04-27 10:44:32,664 INFO L290 TraceCheckUtils]: 16: Hoare triple {420#true} ~cond := #in~cond; {420#true} is VALID [2022-04-27 10:44:32,664 INFO L272 TraceCheckUtils]: 15: Hoare triple {596#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} call __VERIFIER_assert((if 0 <= ~p~0 then 1 else 0)); {420#true} is VALID [2022-04-27 10:44:32,665 INFO L290 TraceCheckUtils]: 14: Hoare triple {596#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} assume !!(~i~0 < ~ielen~0 && ~bufsize~0 > 2); {596#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} is VALID [2022-04-27 10:44:32,666 INFO L290 TraceCheckUtils]: 13: Hoare triple {633#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= (div (+ (- 1) (* (- 1) main_~bufsize~0)) (- 2)) 2))} assume !(~bufsize~0 < 2 * ~ielen~0);~i~0 := 0; {596#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} is VALID [2022-04-27 10:44:32,666 INFO L290 TraceCheckUtils]: 12: Hoare triple {420#true} assume !(~bufsize~0 < ~leader_len~0);~p~0 := 0;~bufsize_0~0 := ~bufsize~0;~bufsize~0 := ~bufsize~0 - ~leader_len~0;~p~0 := ~p~0 + ~leader_len~0; {633#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= (div (+ (- 1) (* (- 1) main_~bufsize~0)) (- 2)) 2))} is VALID [2022-04-27 10:44:32,667 INFO L290 TraceCheckUtils]: 11: Hoare triple {420#true} assume ~ielen~0 > 0; {420#true} is VALID [2022-04-27 10:44:32,667 INFO L290 TraceCheckUtils]: 10: Hoare triple {420#true} assume ~bufsize~0 > 0; {420#true} is VALID [2022-04-27 10:44:32,667 INFO L290 TraceCheckUtils]: 9: Hoare triple {420#true} assume ~leader_len~0 > 0; {420#true} is VALID [2022-04-27 10:44:32,667 INFO L290 TraceCheckUtils]: 8: Hoare triple {420#true} assume !!(~ielen~0 < 1000000); {420#true} is VALID [2022-04-27 10:44:32,667 INFO L290 TraceCheckUtils]: 7: Hoare triple {420#true} assume !!(~bufsize~0 < 1000000); {420#true} is VALID [2022-04-27 10:44:32,667 INFO L290 TraceCheckUtils]: 6: Hoare triple {420#true} assume !!(~leader_len~0 < 1000000); {420#true} is VALID [2022-04-27 10:44:32,668 INFO L290 TraceCheckUtils]: 5: Hoare triple {420#true} havoc ~p~0;havoc ~i~0;havoc ~leader_len~0;havoc ~bufsize~0;havoc ~bufsize_0~0;havoc ~ielen~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~leader_len~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufsize~0 := #t~nondet2;havoc #t~nondet2;assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;~ielen~0 := #t~nondet3;havoc #t~nondet3; {420#true} is VALID [2022-04-27 10:44:32,668 INFO L272 TraceCheckUtils]: 4: Hoare triple {420#true} call #t~ret5 := main(); {420#true} is VALID [2022-04-27 10:44:32,668 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {420#true} {420#true} #94#return; {420#true} is VALID [2022-04-27 10:44:32,668 INFO L290 TraceCheckUtils]: 2: Hoare triple {420#true} assume true; {420#true} is VALID [2022-04-27 10:44:32,668 INFO L290 TraceCheckUtils]: 1: Hoare triple {420#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(9, 2); {420#true} is VALID [2022-04-27 10:44:32,668 INFO L272 TraceCheckUtils]: 0: Hoare triple {420#true} call ULTIMATE.init(); {420#true} is VALID [2022-04-27 10:44:32,669 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-27 10:44:32,669 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1613451744] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 10:44:32,669 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 10:44:32,669 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9, 9] total 19 [2022-04-27 10:44:32,669 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1454337412] [2022-04-27 10:44:32,670 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 10:44:32,670 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 18 states have (on average 1.9444444444444444) internal successors, (35), 16 states have internal predecessors, (35), 5 states have call successors, (12), 4 states have call predecessors, (12), 1 states have return successors, (8), 5 states have call predecessors, (8), 5 states have call successors, (8) Word has length 37 [2022-04-27 10:44:32,671 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 10:44:32,671 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 18 states have (on average 1.9444444444444444) internal successors, (35), 16 states have internal predecessors, (35), 5 states have call successors, (12), 4 states have call predecessors, (12), 1 states have return successors, (8), 5 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-27 10:44:32,716 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 10:44:32,716 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-27 10:44:32,716 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 10:44:32,717 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-27 10:44:32,717 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=65, Invalid=277, Unknown=0, NotChecked=0, Total=342 [2022-04-27 10:44:32,718 INFO L87 Difference]: Start difference. First operand 36 states and 37 transitions. Second operand has 19 states, 18 states have (on average 1.9444444444444444) internal successors, (35), 16 states have internal predecessors, (35), 5 states have call successors, (12), 4 states have call predecessors, (12), 1 states have return successors, (8), 5 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-27 10:44:33,519 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 10:44:33,519 INFO L93 Difference]: Finished difference Result 53 states and 57 transitions. [2022-04-27 10:44:33,519 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-27 10:44:33,520 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 18 states have (on average 1.9444444444444444) internal successors, (35), 16 states have internal predecessors, (35), 5 states have call successors, (12), 4 states have call predecessors, (12), 1 states have return successors, (8), 5 states have call predecessors, (8), 5 states have call successors, (8) Word has length 37 [2022-04-27 10:44:33,520 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 10:44:33,520 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 18 states have (on average 1.9444444444444444) internal successors, (35), 16 states have internal predecessors, (35), 5 states have call successors, (12), 4 states have call predecessors, (12), 1 states have return successors, (8), 5 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-27 10:44:33,547 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 51 transitions. [2022-04-27 10:44:33,548 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 18 states have (on average 1.9444444444444444) internal successors, (35), 16 states have internal predecessors, (35), 5 states have call successors, (12), 4 states have call predecessors, (12), 1 states have return successors, (8), 5 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-27 10:44:33,550 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 51 transitions. [2022-04-27 10:44:33,550 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 51 transitions. [2022-04-27 10:44:33,599 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 10:44:33,601 INFO L225 Difference]: With dead ends: 53 [2022-04-27 10:44:33,601 INFO L226 Difference]: Without dead ends: 51 [2022-04-27 10:44:33,602 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 103 GetRequests, 71 SyntacticMatches, 3 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 181 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=175, Invalid=755, Unknown=0, NotChecked=0, Total=930 [2022-04-27 10:44:33,603 INFO L413 NwaCegarLoop]: 23 mSDtfsCounter, 37 mSDsluCounter, 37 mSDsCounter, 0 mSdLazyCounter, 248 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 60 SdHoareTripleChecker+Invalid, 290 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 42 IncrementalHoareTripleChecker+Valid, 248 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-27 10:44:33,603 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [39 Valid, 60 Invalid, 290 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [42 Valid, 248 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-27 10:44:33,604 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2022-04-27 10:44:33,634 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 50. [2022-04-27 10:44:33,634 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 10:44:33,635 INFO L82 GeneralOperation]: Start isEquivalent. First operand 51 states. Second operand has 50 states, 34 states have (on average 1.0294117647058822) internal successors, (35), 35 states have internal predecessors, (35), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 10:44:33,635 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand has 50 states, 34 states have (on average 1.0294117647058822) internal successors, (35), 35 states have internal predecessors, (35), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 10:44:33,636 INFO L87 Difference]: Start difference. First operand 51 states. Second operand has 50 states, 34 states have (on average 1.0294117647058822) internal successors, (35), 35 states have internal predecessors, (35), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 10:44:33,638 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 10:44:33,638 INFO L93 Difference]: Finished difference Result 51 states and 55 transitions. [2022-04-27 10:44:33,638 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 55 transitions. [2022-04-27 10:44:33,639 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 10:44:33,639 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 10:44:33,639 INFO L74 IsIncluded]: Start isIncluded. First operand has 50 states, 34 states have (on average 1.0294117647058822) internal successors, (35), 35 states have internal predecessors, (35), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 51 states. [2022-04-27 10:44:33,640 INFO L87 Difference]: Start difference. First operand has 50 states, 34 states have (on average 1.0294117647058822) internal successors, (35), 35 states have internal predecessors, (35), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 51 states. [2022-04-27 10:44:33,642 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 10:44:33,642 INFO L93 Difference]: Finished difference Result 51 states and 55 transitions. [2022-04-27 10:44:33,642 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 55 transitions. [2022-04-27 10:44:33,643 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 10:44:33,643 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 10:44:33,643 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 10:44:33,643 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 10:44:33,643 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 34 states have (on average 1.0294117647058822) internal successors, (35), 35 states have internal predecessors, (35), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 10:44:33,645 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 54 transitions. [2022-04-27 10:44:33,646 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 54 transitions. Word has length 37 [2022-04-27 10:44:33,646 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 10:44:33,646 INFO L495 AbstractCegarLoop]: Abstraction has 50 states and 54 transitions. [2022-04-27 10:44:33,646 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 18 states have (on average 1.9444444444444444) internal successors, (35), 16 states have internal predecessors, (35), 5 states have call successors, (12), 4 states have call predecessors, (12), 1 states have return successors, (8), 5 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-27 10:44:33,646 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 54 transitions. [2022-04-27 10:44:33,648 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-27 10:44:33,648 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 10:44:33,648 INFO L195 NwaCegarLoop]: trace histogram [8, 7, 7, 4, 4, 4, 4, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 10:44:33,674 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-27 10:44:33,863 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 10:44:33,864 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 10:44:33,864 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 10:44:33,864 INFO L85 PathProgramCache]: Analyzing trace with hash 239053851, now seen corresponding path program 2 times [2022-04-27 10:44:33,864 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 10:44:33,864 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [526575918] [2022-04-27 10:44:33,864 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 10:44:33,864 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 10:44:33,898 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 10:44:34,010 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 10:44:34,018 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 10:44:34,027 INFO L290 TraceCheckUtils]: 0: Hoare triple {986#(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(9, 2); {945#true} is VALID [2022-04-27 10:44:34,027 INFO L290 TraceCheckUtils]: 1: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,027 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {945#true} {945#true} #94#return; {945#true} is VALID [2022-04-27 10:44:34,028 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 15 [2022-04-27 10:44:34,039 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 10:44:34,045 INFO L290 TraceCheckUtils]: 0: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:34,045 INFO L290 TraceCheckUtils]: 1: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:34,046 INFO L290 TraceCheckUtils]: 2: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,047 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {945#true} {951#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} #90#return; {951#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:34,047 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 20 [2022-04-27 10:44:34,049 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 10:44:34,059 INFO L290 TraceCheckUtils]: 0: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:34,059 INFO L290 TraceCheckUtils]: 1: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:34,059 INFO L290 TraceCheckUtils]: 2: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,060 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {945#true} {951#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} #92#return; {951#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:34,060 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2022-04-27 10:44:34,062 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 10:44:34,068 INFO L290 TraceCheckUtils]: 0: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:34,068 INFO L290 TraceCheckUtils]: 1: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:34,068 INFO L290 TraceCheckUtils]: 2: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,069 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {945#true} {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} #90#return; {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-27 10:44:34,069 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 33 [2022-04-27 10:44:34,072 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 10:44:34,077 INFO L290 TraceCheckUtils]: 0: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:34,077 INFO L290 TraceCheckUtils]: 1: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:34,077 INFO L290 TraceCheckUtils]: 2: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,078 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {945#true} {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} #92#return; {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-27 10:44:34,078 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 41 [2022-04-27 10:44:34,084 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 10:44:34,092 INFO L290 TraceCheckUtils]: 0: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:34,092 INFO L290 TraceCheckUtils]: 1: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:34,093 INFO L290 TraceCheckUtils]: 2: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,097 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {945#true} {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} #90#return; {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-27 10:44:34,097 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 46 [2022-04-27 10:44:34,099 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 10:44:34,111 INFO L290 TraceCheckUtils]: 0: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:34,111 INFO L290 TraceCheckUtils]: 1: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:34,111 INFO L290 TraceCheckUtils]: 2: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,112 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {945#true} {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} #92#return; {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-27 10:44:34,112 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 54 [2022-04-27 10:44:34,114 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 10:44:34,116 INFO L290 TraceCheckUtils]: 0: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:34,116 INFO L290 TraceCheckUtils]: 1: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:34,117 INFO L290 TraceCheckUtils]: 2: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,117 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {945#true} {979#(<= (+ main_~p~0 2) main_~bufsize_0~0)} #90#return; {979#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:34,118 INFO L272 TraceCheckUtils]: 0: Hoare triple {945#true} call ULTIMATE.init(); {986#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 10:44:34,118 INFO L290 TraceCheckUtils]: 1: Hoare triple {986#(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(9, 2); {945#true} is VALID [2022-04-27 10:44:34,118 INFO L290 TraceCheckUtils]: 2: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,118 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {945#true} {945#true} #94#return; {945#true} is VALID [2022-04-27 10:44:34,118 INFO L272 TraceCheckUtils]: 4: Hoare triple {945#true} call #t~ret5 := main(); {945#true} is VALID [2022-04-27 10:44:34,118 INFO L290 TraceCheckUtils]: 5: Hoare triple {945#true} havoc ~p~0;havoc ~i~0;havoc ~leader_len~0;havoc ~bufsize~0;havoc ~bufsize_0~0;havoc ~ielen~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~leader_len~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufsize~0 := #t~nondet2;havoc #t~nondet2;assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;~ielen~0 := #t~nondet3;havoc #t~nondet3; {945#true} is VALID [2022-04-27 10:44:34,118 INFO L290 TraceCheckUtils]: 6: Hoare triple {945#true} assume !!(~leader_len~0 < 1000000); {945#true} is VALID [2022-04-27 10:44:34,118 INFO L290 TraceCheckUtils]: 7: Hoare triple {945#true} assume !!(~bufsize~0 < 1000000); {945#true} is VALID [2022-04-27 10:44:34,119 INFO L290 TraceCheckUtils]: 8: Hoare triple {945#true} assume !!(~ielen~0 < 1000000); {945#true} is VALID [2022-04-27 10:44:34,119 INFO L290 TraceCheckUtils]: 9: Hoare triple {945#true} assume ~leader_len~0 > 0; {945#true} is VALID [2022-04-27 10:44:34,119 INFO L290 TraceCheckUtils]: 10: Hoare triple {945#true} assume ~bufsize~0 > 0; {945#true} is VALID [2022-04-27 10:44:34,119 INFO L290 TraceCheckUtils]: 11: Hoare triple {945#true} assume ~ielen~0 > 0; {945#true} is VALID [2022-04-27 10:44:34,119 INFO L290 TraceCheckUtils]: 12: Hoare triple {945#true} assume !(~bufsize~0 < ~leader_len~0);~p~0 := 0;~bufsize_0~0 := ~bufsize~0;~bufsize~0 := ~bufsize~0 - ~leader_len~0;~p~0 := ~p~0 + ~leader_len~0; {950#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:34,120 INFO L290 TraceCheckUtils]: 13: Hoare triple {950#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} assume !(~bufsize~0 < 2 * ~ielen~0);~i~0 := 0; {951#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:34,120 INFO L290 TraceCheckUtils]: 14: Hoare triple {951#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} assume !!(~i~0 < ~ielen~0 && ~bufsize~0 > 2); {951#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:34,121 INFO L272 TraceCheckUtils]: 15: Hoare triple {951#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} call __VERIFIER_assert((if 0 <= ~p~0 then 1 else 0)); {945#true} is VALID [2022-04-27 10:44:34,121 INFO L290 TraceCheckUtils]: 16: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:34,121 INFO L290 TraceCheckUtils]: 17: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:34,121 INFO L290 TraceCheckUtils]: 18: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,121 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {945#true} {951#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} #90#return; {951#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:34,122 INFO L272 TraceCheckUtils]: 20: Hoare triple {951#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} call __VERIFIER_assert((if 1 + ~p~0 < ~bufsize_0~0 then 1 else 0)); {945#true} is VALID [2022-04-27 10:44:34,122 INFO L290 TraceCheckUtils]: 21: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:34,122 INFO L290 TraceCheckUtils]: 22: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:34,122 INFO L290 TraceCheckUtils]: 23: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,128 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {945#true} {951#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} #92#return; {951#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:34,129 INFO L290 TraceCheckUtils]: 25: Hoare triple {951#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} ~p~0 := 2 + ~p~0; {960#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (= main_~i~0 0))} is VALID [2022-04-27 10:44:34,129 INFO L290 TraceCheckUtils]: 26: Hoare triple {960#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (= main_~i~0 0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-27 10:44:34,130 INFO L290 TraceCheckUtils]: 27: Hoare triple {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} assume !!(~i~0 < ~ielen~0 && ~bufsize~0 > 2); {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-27 10:44:34,130 INFO L272 TraceCheckUtils]: 28: Hoare triple {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} call __VERIFIER_assert((if 0 <= ~p~0 then 1 else 0)); {945#true} is VALID [2022-04-27 10:44:34,130 INFO L290 TraceCheckUtils]: 29: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:34,130 INFO L290 TraceCheckUtils]: 30: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:34,131 INFO L290 TraceCheckUtils]: 31: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,131 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {945#true} {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} #90#return; {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-27 10:44:34,131 INFO L272 TraceCheckUtils]: 33: Hoare triple {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} call __VERIFIER_assert((if 1 + ~p~0 < ~bufsize_0~0 then 1 else 0)); {945#true} is VALID [2022-04-27 10:44:34,131 INFO L290 TraceCheckUtils]: 34: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:34,132 INFO L290 TraceCheckUtils]: 35: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:34,132 INFO L290 TraceCheckUtils]: 36: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,132 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {945#true} {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} #92#return; {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-27 10:44:34,133 INFO L290 TraceCheckUtils]: 38: Hoare triple {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} ~p~0 := 2 + ~p~0; {970#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2 (* main_~i~0 2)))} is VALID [2022-04-27 10:44:34,133 INFO L290 TraceCheckUtils]: 39: Hoare triple {970#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2 (* main_~i~0 2)))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-27 10:44:34,134 INFO L290 TraceCheckUtils]: 40: Hoare triple {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} assume !!(~i~0 < ~ielen~0 && ~bufsize~0 > 2); {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-27 10:44:34,134 INFO L272 TraceCheckUtils]: 41: Hoare triple {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} call __VERIFIER_assert((if 0 <= ~p~0 then 1 else 0)); {945#true} is VALID [2022-04-27 10:44:34,134 INFO L290 TraceCheckUtils]: 42: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:34,134 INFO L290 TraceCheckUtils]: 43: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:34,134 INFO L290 TraceCheckUtils]: 44: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,135 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {945#true} {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} #90#return; {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-27 10:44:34,135 INFO L272 TraceCheckUtils]: 46: Hoare triple {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} call __VERIFIER_assert((if 1 + ~p~0 < ~bufsize_0~0 then 1 else 0)); {945#true} is VALID [2022-04-27 10:44:34,135 INFO L290 TraceCheckUtils]: 47: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:34,135 INFO L290 TraceCheckUtils]: 48: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:34,136 INFO L290 TraceCheckUtils]: 49: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,136 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {945#true} {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} #92#return; {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-27 10:44:34,137 INFO L290 TraceCheckUtils]: 51: Hoare triple {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} ~p~0 := 2 + ~p~0; {970#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2 (* main_~i~0 2)))} is VALID [2022-04-27 10:44:34,137 INFO L290 TraceCheckUtils]: 52: Hoare triple {970#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2 (* main_~i~0 2)))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-27 10:44:34,138 INFO L290 TraceCheckUtils]: 53: Hoare triple {961#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} assume !!(~i~0 < ~ielen~0 && ~bufsize~0 > 2); {979#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:34,138 INFO L272 TraceCheckUtils]: 54: Hoare triple {979#(<= (+ main_~p~0 2) main_~bufsize_0~0)} call __VERIFIER_assert((if 0 <= ~p~0 then 1 else 0)); {945#true} is VALID [2022-04-27 10:44:34,138 INFO L290 TraceCheckUtils]: 55: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:34,138 INFO L290 TraceCheckUtils]: 56: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:34,138 INFO L290 TraceCheckUtils]: 57: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,139 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {945#true} {979#(<= (+ main_~p~0 2) main_~bufsize_0~0)} #90#return; {979#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:34,140 INFO L272 TraceCheckUtils]: 59: Hoare triple {979#(<= (+ main_~p~0 2) main_~bufsize_0~0)} call __VERIFIER_assert((if 1 + ~p~0 < ~bufsize_0~0 then 1 else 0)); {984#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 10:44:34,140 INFO L290 TraceCheckUtils]: 60: Hoare triple {984#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {985#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 10:44:34,140 INFO L290 TraceCheckUtils]: 61: Hoare triple {985#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {946#false} is VALID [2022-04-27 10:44:34,140 INFO L290 TraceCheckUtils]: 62: Hoare triple {946#false} assume !false; {946#false} is VALID [2022-04-27 10:44:34,141 INFO L134 CoverageAnalysis]: Checked inductivity of 122 backedges. 14 proven. 17 refuted. 0 times theorem prover too weak. 91 trivial. 0 not checked. [2022-04-27 10:44:34,141 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 10:44:34,141 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [526575918] [2022-04-27 10:44:34,141 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [526575918] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 10:44:34,141 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1849364702] [2022-04-27 10:44:34,141 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 10:44:34,142 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 10:44:34,142 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 10:44:34,144 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 10:44:34,147 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-27 10:44:34,216 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 10:44:34,216 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 10:44:34,217 INFO L263 TraceCheckSpWp]: Trace formula consists of 155 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-27 10:44:34,235 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 10:44:34,239 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 10:44:34,780 INFO L272 TraceCheckUtils]: 0: Hoare triple {945#true} call ULTIMATE.init(); {945#true} is VALID [2022-04-27 10:44:34,780 INFO L290 TraceCheckUtils]: 1: Hoare triple {945#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(9, 2); {945#true} is VALID [2022-04-27 10:44:34,780 INFO L290 TraceCheckUtils]: 2: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,780 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {945#true} {945#true} #94#return; {945#true} is VALID [2022-04-27 10:44:34,780 INFO L272 TraceCheckUtils]: 4: Hoare triple {945#true} call #t~ret5 := main(); {945#true} is VALID [2022-04-27 10:44:34,780 INFO L290 TraceCheckUtils]: 5: Hoare triple {945#true} havoc ~p~0;havoc ~i~0;havoc ~leader_len~0;havoc ~bufsize~0;havoc ~bufsize_0~0;havoc ~ielen~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~leader_len~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufsize~0 := #t~nondet2;havoc #t~nondet2;assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;~ielen~0 := #t~nondet3;havoc #t~nondet3; {945#true} is VALID [2022-04-27 10:44:34,781 INFO L290 TraceCheckUtils]: 6: Hoare triple {945#true} assume !!(~leader_len~0 < 1000000); {945#true} is VALID [2022-04-27 10:44:34,781 INFO L290 TraceCheckUtils]: 7: Hoare triple {945#true} assume !!(~bufsize~0 < 1000000); {945#true} is VALID [2022-04-27 10:44:34,781 INFO L290 TraceCheckUtils]: 8: Hoare triple {945#true} assume !!(~ielen~0 < 1000000); {945#true} is VALID [2022-04-27 10:44:34,781 INFO L290 TraceCheckUtils]: 9: Hoare triple {945#true} assume ~leader_len~0 > 0; {945#true} is VALID [2022-04-27 10:44:34,781 INFO L290 TraceCheckUtils]: 10: Hoare triple {945#true} assume ~bufsize~0 > 0; {945#true} is VALID [2022-04-27 10:44:34,781 INFO L290 TraceCheckUtils]: 11: Hoare triple {945#true} assume ~ielen~0 > 0; {945#true} is VALID [2022-04-27 10:44:34,781 INFO L290 TraceCheckUtils]: 12: Hoare triple {945#true} assume !(~bufsize~0 < ~leader_len~0);~p~0 := 0;~bufsize_0~0 := ~bufsize~0;~bufsize~0 := ~bufsize~0 - ~leader_len~0;~p~0 := ~p~0 + ~leader_len~0; {950#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:34,782 INFO L290 TraceCheckUtils]: 13: Hoare triple {950#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} assume !(~bufsize~0 < 2 * ~ielen~0);~i~0 := 0; {1029#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:34,782 INFO L290 TraceCheckUtils]: 14: Hoare triple {1029#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} assume !!(~i~0 < ~ielen~0 && ~bufsize~0 > 2); {1029#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:34,782 INFO L272 TraceCheckUtils]: 15: Hoare triple {1029#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} call __VERIFIER_assert((if 0 <= ~p~0 then 1 else 0)); {945#true} is VALID [2022-04-27 10:44:34,783 INFO L290 TraceCheckUtils]: 16: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:34,783 INFO L290 TraceCheckUtils]: 17: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:34,783 INFO L290 TraceCheckUtils]: 18: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,783 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {945#true} {1029#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} #90#return; {1029#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:34,783 INFO L272 TraceCheckUtils]: 20: Hoare triple {1029#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} call __VERIFIER_assert((if 1 + ~p~0 < ~bufsize_0~0 then 1 else 0)); {945#true} is VALID [2022-04-27 10:44:34,783 INFO L290 TraceCheckUtils]: 21: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:34,783 INFO L290 TraceCheckUtils]: 22: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:34,784 INFO L290 TraceCheckUtils]: 23: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,784 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {945#true} {1029#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} #92#return; {1029#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:34,785 INFO L290 TraceCheckUtils]: 25: Hoare triple {1029#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} ~p~0 := 2 + ~p~0; {1066#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 0 main_~i~0))} is VALID [2022-04-27 10:44:34,785 INFO L290 TraceCheckUtils]: 26: Hoare triple {1066#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 0 main_~i~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1070#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} is VALID [2022-04-27 10:44:34,786 INFO L290 TraceCheckUtils]: 27: Hoare triple {1070#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} assume !!(~i~0 < ~ielen~0 && ~bufsize~0 > 2); {1070#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} is VALID [2022-04-27 10:44:34,786 INFO L272 TraceCheckUtils]: 28: Hoare triple {1070#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} call __VERIFIER_assert((if 0 <= ~p~0 then 1 else 0)); {945#true} is VALID [2022-04-27 10:44:34,786 INFO L290 TraceCheckUtils]: 29: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:34,786 INFO L290 TraceCheckUtils]: 30: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:34,786 INFO L290 TraceCheckUtils]: 31: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,787 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {945#true} {1070#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} #90#return; {1070#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} is VALID [2022-04-27 10:44:34,787 INFO L272 TraceCheckUtils]: 33: Hoare triple {1070#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} call __VERIFIER_assert((if 1 + ~p~0 < ~bufsize_0~0 then 1 else 0)); {945#true} is VALID [2022-04-27 10:44:34,787 INFO L290 TraceCheckUtils]: 34: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:34,787 INFO L290 TraceCheckUtils]: 35: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:34,787 INFO L290 TraceCheckUtils]: 36: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,788 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {945#true} {1070#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} #92#return; {1070#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} is VALID [2022-04-27 10:44:34,789 INFO L290 TraceCheckUtils]: 38: Hoare triple {1070#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} ~p~0 := 2 + ~p~0; {1107#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)) (<= 1 main_~i~0))} is VALID [2022-04-27 10:44:34,790 INFO L290 TraceCheckUtils]: 39: Hoare triple {1107#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)) (<= 1 main_~i~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1111#(and (<= 2 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)))} is VALID [2022-04-27 10:44:34,790 INFO L290 TraceCheckUtils]: 40: Hoare triple {1111#(and (<= 2 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)))} assume !!(~i~0 < ~ielen~0 && ~bufsize~0 > 2); {1111#(and (<= 2 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)))} is VALID [2022-04-27 10:44:34,790 INFO L272 TraceCheckUtils]: 41: Hoare triple {1111#(and (<= 2 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)))} call __VERIFIER_assert((if 0 <= ~p~0 then 1 else 0)); {945#true} is VALID [2022-04-27 10:44:34,790 INFO L290 TraceCheckUtils]: 42: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:34,791 INFO L290 TraceCheckUtils]: 43: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:34,791 INFO L290 TraceCheckUtils]: 44: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,795 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {945#true} {1111#(and (<= 2 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)))} #90#return; {1111#(and (<= 2 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)))} is VALID [2022-04-27 10:44:34,796 INFO L272 TraceCheckUtils]: 46: Hoare triple {1111#(and (<= 2 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)))} call __VERIFIER_assert((if 1 + ~p~0 < ~bufsize_0~0 then 1 else 0)); {945#true} is VALID [2022-04-27 10:44:34,796 INFO L290 TraceCheckUtils]: 47: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:34,796 INFO L290 TraceCheckUtils]: 48: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:34,796 INFO L290 TraceCheckUtils]: 49: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,797 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {945#true} {1111#(and (<= 2 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)))} #92#return; {1111#(and (<= 2 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)))} is VALID [2022-04-27 10:44:34,797 INFO L290 TraceCheckUtils]: 51: Hoare triple {1111#(and (<= 2 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)))} ~p~0 := 2 + ~p~0; {1148#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 6)) (<= 2 main_~i~0))} is VALID [2022-04-27 10:44:34,798 INFO L290 TraceCheckUtils]: 52: Hoare triple {1148#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 6)) (<= 2 main_~i~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1152#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 6)) (<= 3 main_~i~0))} is VALID [2022-04-27 10:44:34,798 INFO L290 TraceCheckUtils]: 53: Hoare triple {1152#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 6)) (<= 3 main_~i~0))} assume !!(~i~0 < ~ielen~0 && ~bufsize~0 > 2); {979#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:34,798 INFO L272 TraceCheckUtils]: 54: Hoare triple {979#(<= (+ main_~p~0 2) main_~bufsize_0~0)} call __VERIFIER_assert((if 0 <= ~p~0 then 1 else 0)); {945#true} is VALID [2022-04-27 10:44:34,798 INFO L290 TraceCheckUtils]: 55: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:34,799 INFO L290 TraceCheckUtils]: 56: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:34,803 INFO L290 TraceCheckUtils]: 57: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:34,804 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {945#true} {979#(<= (+ main_~p~0 2) main_~bufsize_0~0)} #90#return; {979#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:34,805 INFO L272 TraceCheckUtils]: 59: Hoare triple {979#(<= (+ main_~p~0 2) main_~bufsize_0~0)} call __VERIFIER_assert((if 1 + ~p~0 < ~bufsize_0~0 then 1 else 0)); {1174#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 10:44:34,805 INFO L290 TraceCheckUtils]: 60: Hoare triple {1174#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1178#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 10:44:34,806 INFO L290 TraceCheckUtils]: 61: Hoare triple {1178#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {946#false} is VALID [2022-04-27 10:44:34,806 INFO L290 TraceCheckUtils]: 62: Hoare triple {946#false} assume !false; {946#false} is VALID [2022-04-27 10:44:34,808 INFO L134 CoverageAnalysis]: Checked inductivity of 122 backedges. 14 proven. 24 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2022-04-27 10:44:34,809 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 10:44:35,515 INFO L290 TraceCheckUtils]: 62: Hoare triple {946#false} assume !false; {946#false} is VALID [2022-04-27 10:44:35,516 INFO L290 TraceCheckUtils]: 61: Hoare triple {1178#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {946#false} is VALID [2022-04-27 10:44:35,516 INFO L290 TraceCheckUtils]: 60: Hoare triple {1174#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1178#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 10:44:35,517 INFO L272 TraceCheckUtils]: 59: Hoare triple {979#(<= (+ main_~p~0 2) main_~bufsize_0~0)} call __VERIFIER_assert((if 1 + ~p~0 < ~bufsize_0~0 then 1 else 0)); {1174#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 10:44:35,518 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {945#true} {979#(<= (+ main_~p~0 2) main_~bufsize_0~0)} #90#return; {979#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:35,518 INFO L290 TraceCheckUtils]: 57: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:35,518 INFO L290 TraceCheckUtils]: 56: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:35,518 INFO L290 TraceCheckUtils]: 55: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:35,518 INFO L272 TraceCheckUtils]: 54: Hoare triple {979#(<= (+ main_~p~0 2) main_~bufsize_0~0)} call __VERIFIER_assert((if 0 <= ~p~0 then 1 else 0)); {945#true} is VALID [2022-04-27 10:44:35,519 INFO L290 TraceCheckUtils]: 53: Hoare triple {1212#(or (not (< main_~i~0 main_~ielen~0)) (<= (+ main_~p~0 2) main_~bufsize_0~0))} assume !!(~i~0 < ~ielen~0 && ~bufsize~0 > 2); {979#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-27 10:44:35,520 INFO L290 TraceCheckUtils]: 52: Hoare triple {1216#(or (<= (+ main_~p~0 2) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1212#(or (not (< main_~i~0 main_~ielen~0)) (<= (+ main_~p~0 2) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:35,520 INFO L290 TraceCheckUtils]: 51: Hoare triple {1220#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} ~p~0 := 2 + ~p~0; {1216#(or (<= (+ main_~p~0 2) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} is VALID [2022-04-27 10:44:35,521 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {945#true} {1220#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} #92#return; {1220#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} is VALID [2022-04-27 10:44:35,521 INFO L290 TraceCheckUtils]: 49: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:35,521 INFO L290 TraceCheckUtils]: 48: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:35,521 INFO L290 TraceCheckUtils]: 47: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:35,521 INFO L272 TraceCheckUtils]: 46: Hoare triple {1220#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} call __VERIFIER_assert((if 1 + ~p~0 < ~bufsize_0~0 then 1 else 0)); {945#true} is VALID [2022-04-27 10:44:35,523 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {945#true} {1220#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} #90#return; {1220#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} is VALID [2022-04-27 10:44:35,523 INFO L290 TraceCheckUtils]: 44: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:35,523 INFO L290 TraceCheckUtils]: 43: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:35,523 INFO L290 TraceCheckUtils]: 42: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:35,523 INFO L272 TraceCheckUtils]: 41: Hoare triple {1220#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} call __VERIFIER_assert((if 0 <= ~p~0 then 1 else 0)); {945#true} is VALID [2022-04-27 10:44:35,524 INFO L290 TraceCheckUtils]: 40: Hoare triple {1220#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} assume !!(~i~0 < ~ielen~0 && ~bufsize~0 > 2); {1220#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} is VALID [2022-04-27 10:44:35,524 INFO L290 TraceCheckUtils]: 39: Hoare triple {1257#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 2)))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1220#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} is VALID [2022-04-27 10:44:35,525 INFO L290 TraceCheckUtils]: 38: Hoare triple {1261#(or (<= main_~ielen~0 (+ main_~i~0 2)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} ~p~0 := 2 + ~p~0; {1257#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 2)))} is VALID [2022-04-27 10:44:35,526 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {945#true} {1261#(or (<= main_~ielen~0 (+ main_~i~0 2)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} #92#return; {1261#(or (<= main_~ielen~0 (+ main_~i~0 2)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:35,526 INFO L290 TraceCheckUtils]: 36: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:35,526 INFO L290 TraceCheckUtils]: 35: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:35,527 INFO L290 TraceCheckUtils]: 34: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:35,527 INFO L272 TraceCheckUtils]: 33: Hoare triple {1261#(or (<= main_~ielen~0 (+ main_~i~0 2)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} call __VERIFIER_assert((if 1 + ~p~0 < ~bufsize_0~0 then 1 else 0)); {945#true} is VALID [2022-04-27 10:44:35,527 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {945#true} {1261#(or (<= main_~ielen~0 (+ main_~i~0 2)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} #90#return; {1261#(or (<= main_~ielen~0 (+ main_~i~0 2)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:35,527 INFO L290 TraceCheckUtils]: 31: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:35,528 INFO L290 TraceCheckUtils]: 30: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:35,528 INFO L290 TraceCheckUtils]: 29: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:35,528 INFO L272 TraceCheckUtils]: 28: Hoare triple {1261#(or (<= main_~ielen~0 (+ main_~i~0 2)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} call __VERIFIER_assert((if 0 <= ~p~0 then 1 else 0)); {945#true} is VALID [2022-04-27 10:44:35,534 INFO L290 TraceCheckUtils]: 27: Hoare triple {1261#(or (<= main_~ielen~0 (+ main_~i~0 2)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} assume !!(~i~0 < ~ielen~0 && ~bufsize~0 > 2); {1261#(or (<= main_~ielen~0 (+ main_~i~0 2)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:35,534 INFO L290 TraceCheckUtils]: 26: Hoare triple {1298#(or (<= main_~ielen~0 (+ main_~i~0 3)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} #t~post4 := ~i~0;~i~0 := 1 + #t~post4;havoc #t~post4; {1261#(or (<= main_~ielen~0 (+ main_~i~0 2)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:35,535 INFO L290 TraceCheckUtils]: 25: Hoare triple {1302#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 3)))} ~p~0 := 2 + ~p~0; {1298#(or (<= main_~ielen~0 (+ main_~i~0 3)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} is VALID [2022-04-27 10:44:35,536 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {945#true} {1302#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 3)))} #92#return; {1302#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 3)))} is VALID [2022-04-27 10:44:35,536 INFO L290 TraceCheckUtils]: 23: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:35,536 INFO L290 TraceCheckUtils]: 22: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:35,536 INFO L290 TraceCheckUtils]: 21: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:35,536 INFO L272 TraceCheckUtils]: 20: Hoare triple {1302#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 3)))} call __VERIFIER_assert((if 1 + ~p~0 < ~bufsize_0~0 then 1 else 0)); {945#true} is VALID [2022-04-27 10:44:35,537 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {945#true} {1302#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 3)))} #90#return; {1302#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 3)))} is VALID [2022-04-27 10:44:35,537 INFO L290 TraceCheckUtils]: 18: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:35,537 INFO L290 TraceCheckUtils]: 17: Hoare triple {945#true} assume !(0 == ~cond); {945#true} is VALID [2022-04-27 10:44:35,537 INFO L290 TraceCheckUtils]: 16: Hoare triple {945#true} ~cond := #in~cond; {945#true} is VALID [2022-04-27 10:44:35,538 INFO L272 TraceCheckUtils]: 15: Hoare triple {1302#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 3)))} call __VERIFIER_assert((if 0 <= ~p~0 then 1 else 0)); {945#true} is VALID [2022-04-27 10:44:35,538 INFO L290 TraceCheckUtils]: 14: Hoare triple {1302#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 3)))} assume !!(~i~0 < ~ielen~0 && ~bufsize~0 > 2); {1302#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 3)))} is VALID [2022-04-27 10:44:35,539 INFO L290 TraceCheckUtils]: 13: Hoare triple {1339#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= (div (+ (- 1) (* (- 1) main_~bufsize~0)) (- 2)) 4))} assume !(~bufsize~0 < 2 * ~ielen~0);~i~0 := 0; {1302#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 3)))} is VALID [2022-04-27 10:44:35,539 INFO L290 TraceCheckUtils]: 12: Hoare triple {945#true} assume !(~bufsize~0 < ~leader_len~0);~p~0 := 0;~bufsize_0~0 := ~bufsize~0;~bufsize~0 := ~bufsize~0 - ~leader_len~0;~p~0 := ~p~0 + ~leader_len~0; {1339#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= (div (+ (- 1) (* (- 1) main_~bufsize~0)) (- 2)) 4))} is VALID [2022-04-27 10:44:35,540 INFO L290 TraceCheckUtils]: 11: Hoare triple {945#true} assume ~ielen~0 > 0; {945#true} is VALID [2022-04-27 10:44:35,540 INFO L290 TraceCheckUtils]: 10: Hoare triple {945#true} assume ~bufsize~0 > 0; {945#true} is VALID [2022-04-27 10:44:35,540 INFO L290 TraceCheckUtils]: 9: Hoare triple {945#true} assume ~leader_len~0 > 0; {945#true} is VALID [2022-04-27 10:44:35,540 INFO L290 TraceCheckUtils]: 8: Hoare triple {945#true} assume !!(~ielen~0 < 1000000); {945#true} is VALID [2022-04-27 10:44:35,540 INFO L290 TraceCheckUtils]: 7: Hoare triple {945#true} assume !!(~bufsize~0 < 1000000); {945#true} is VALID [2022-04-27 10:44:35,540 INFO L290 TraceCheckUtils]: 6: Hoare triple {945#true} assume !!(~leader_len~0 < 1000000); {945#true} is VALID [2022-04-27 10:44:35,540 INFO L290 TraceCheckUtils]: 5: Hoare triple {945#true} havoc ~p~0;havoc ~i~0;havoc ~leader_len~0;havoc ~bufsize~0;havoc ~bufsize_0~0;havoc ~ielen~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~leader_len~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufsize~0 := #t~nondet2;havoc #t~nondet2;assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647;~ielen~0 := #t~nondet3;havoc #t~nondet3; {945#true} is VALID [2022-04-27 10:44:35,541 INFO L272 TraceCheckUtils]: 4: Hoare triple {945#true} call #t~ret5 := main(); {945#true} is VALID [2022-04-27 10:44:35,541 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {945#true} {945#true} #94#return; {945#true} is VALID [2022-04-27 10:44:35,541 INFO L290 TraceCheckUtils]: 2: Hoare triple {945#true} assume true; {945#true} is VALID [2022-04-27 10:44:35,541 INFO L290 TraceCheckUtils]: 1: Hoare triple {945#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(9, 2); {945#true} is VALID [2022-04-27 10:44:35,541 INFO L272 TraceCheckUtils]: 0: Hoare triple {945#true} call ULTIMATE.init(); {945#true} is VALID [2022-04-27 10:44:35,542 INFO L134 CoverageAnalysis]: Checked inductivity of 122 backedges. 14 proven. 24 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2022-04-27 10:44:35,542 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1849364702] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 10:44:35,542 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-27 10:44:35,542 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 13, 13] total 28 [2022-04-27 10:44:35,542 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [42030111] [2022-04-27 10:44:35,542 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-27 10:44:35,543 INFO L78 Accepts]: Start accepts. Automaton has has 28 states, 27 states have (on average 1.8518518518518519) internal successors, (50), 25 states have internal predecessors, (50), 10 states have call successors, (22), 4 states have call predecessors, (22), 1 states have return successors, (18), 10 states have call predecessors, (18), 10 states have call successors, (18) Word has length 63 [2022-04-27 10:44:35,544 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 10:44:35,545 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 28 states, 27 states have (on average 1.8518518518518519) internal successors, (50), 25 states have internal predecessors, (50), 10 states have call successors, (22), 4 states have call predecessors, (22), 1 states have return successors, (18), 10 states have call predecessors, (18), 10 states have call successors, (18) [2022-04-27 10:44:35,619 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 10:44:35,620 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 28 states [2022-04-27 10:44:35,620 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 10:44:35,620 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2022-04-27 10:44:35,621 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=146, Invalid=610, Unknown=0, NotChecked=0, Total=756 [2022-04-27 10:44:35,621 INFO L87 Difference]: Start difference. First operand 50 states and 54 transitions. Second operand has 28 states, 27 states have (on average 1.8518518518518519) internal successors, (50), 25 states have internal predecessors, (50), 10 states have call successors, (22), 4 states have call predecessors, (22), 1 states have return successors, (18), 10 states have call predecessors, (18), 10 states have call successors, (18) [2022-04-27 10:44:37,023 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 10:44:37,024 INFO L93 Difference]: Finished difference Result 56 states and 62 transitions. [2022-04-27 10:44:37,024 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-27 10:44:37,024 INFO L78 Accepts]: Start accepts. Automaton has has 28 states, 27 states have (on average 1.8518518518518519) internal successors, (50), 25 states have internal predecessors, (50), 10 states have call successors, (22), 4 states have call predecessors, (22), 1 states have return successors, (18), 10 states have call predecessors, (18), 10 states have call successors, (18) Word has length 63 [2022-04-27 10:44:37,025 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 10:44:37,025 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 27 states have (on average 1.8518518518518519) internal successors, (50), 25 states have internal predecessors, (50), 10 states have call successors, (22), 4 states have call predecessors, (22), 1 states have return successors, (18), 10 states have call predecessors, (18), 10 states have call successors, (18) [2022-04-27 10:44:37,027 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 56 transitions. [2022-04-27 10:44:37,028 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 27 states have (on average 1.8518518518518519) internal successors, (50), 25 states have internal predecessors, (50), 10 states have call successors, (22), 4 states have call predecessors, (22), 1 states have return successors, (18), 10 states have call predecessors, (18), 10 states have call successors, (18) [2022-04-27 10:44:37,030 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 56 transitions. [2022-04-27 10:44:37,030 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 56 transitions. [2022-04-27 10:44:37,082 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 10:44:37,082 INFO L225 Difference]: With dead ends: 56 [2022-04-27 10:44:37,083 INFO L226 Difference]: Without dead ends: 0 [2022-04-27 10:44:37,096 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 172 GetRequests, 125 SyntacticMatches, 3 SemanticMatches, 44 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 535 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=396, Invalid=1674, Unknown=0, NotChecked=0, Total=2070 [2022-04-27 10:44:37,097 INFO L413 NwaCegarLoop]: 25 mSDtfsCounter, 53 mSDsluCounter, 47 mSDsCounter, 0 mSdLazyCounter, 398 mSolverCounterSat, 104 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 53 SdHoareTripleChecker+Valid, 72 SdHoareTripleChecker+Invalid, 502 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 104 IncrementalHoareTripleChecker+Valid, 398 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-27 10:44:37,097 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [53 Valid, 72 Invalid, 502 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [104 Valid, 398 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-27 10:44:37,097 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-27 10:44:37,097 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-27 10:44:37,097 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 10:44:37,098 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-27 10:44:37,098 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-27 10:44:37,098 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-27 10:44:37,098 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 10:44:37,098 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-27 10:44:37,098 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 10:44:37,098 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 10:44:37,098 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 10:44:37,098 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-27 10:44:37,098 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-27 10:44:37,099 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 10:44:37,099 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-27 10:44:37,099 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 10:44:37,099 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 10:44:37,099 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 10:44:37,099 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 10:44:37,099 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 10:44:37,099 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-27 10:44:37,099 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-27 10:44:37,099 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 63 [2022-04-27 10:44:37,099 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 10:44:37,100 INFO L495 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-27 10:44:37,100 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 28 states, 27 states have (on average 1.8518518518518519) internal successors, (50), 25 states have internal predecessors, (50), 10 states have call successors, (22), 4 states have call predecessors, (22), 1 states have return successors, (18), 10 states have call predecessors, (18), 10 states have call successors, (18) [2022-04-27 10:44:37,100 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 10:44:37,100 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 10:44:37,102 INFO L805 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-27 10:44:37,120 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-27 10:44:37,307 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable3 [2022-04-27 10:44:37,309 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-27 10:44:37,438 INFO L899 garLoopResultBuilder]: For program point reach_errorEXIT(line 12) no Hoare annotation was computed. [2022-04-27 10:44:37,438 INFO L899 garLoopResultBuilder]: For program point reach_errorENTRY(line 12) no Hoare annotation was computed. [2022-04-27 10:44:37,438 INFO L899 garLoopResultBuilder]: For program point L12-1(line 12) no Hoare annotation was computed. [2022-04-27 10:44:37,438 INFO L899 garLoopResultBuilder]: For program point L15(line 15) no Hoare annotation was computed. [2022-04-27 10:44:37,438 INFO L899 garLoopResultBuilder]: For program point assume_abort_if_notENTRY(lines 14 16) no Hoare annotation was computed. [2022-04-27 10:44:37,438 INFO L899 garLoopResultBuilder]: For program point L15-2(lines 14 16) no Hoare annotation was computed. [2022-04-27 10:44:37,438 INFO L899 garLoopResultBuilder]: For program point assume_abort_if_notEXIT(lines 14 16) no Hoare annotation was computed. [2022-04-27 10:44:37,438 INFO L899 garLoopResultBuilder]: For program point mainEXIT(lines 24 56) no Hoare annotation was computed. [2022-04-27 10:44:37,438 INFO L899 garLoopResultBuilder]: For program point L40(lines 25 56) no Hoare annotation was computed. [2022-04-27 10:44:37,439 INFO L899 garLoopResultBuilder]: For program point L36(line 36) no Hoare annotation was computed. [2022-04-27 10:44:37,439 INFO L899 garLoopResultBuilder]: For program point L49-2(lines 49 53) no Hoare annotation was computed. [2022-04-27 10:44:37,439 INFO L895 garLoopResultBuilder]: At program point L49-3(lines 49 53) the Hoare annotation is: (and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2))) (<= 1 main_~p~0) (<= 1 main_~leader_len~0)) [2022-04-27 10:44:37,439 INFO L899 garLoopResultBuilder]: For program point L37(line 37) no Hoare annotation was computed. [2022-04-27 10:44:37,439 INFO L902 garLoopResultBuilder]: At program point L54(lines 24 56) the Hoare annotation is: true [2022-04-27 10:44:37,439 INFO L895 garLoopResultBuilder]: At program point L50(line 50) the Hoare annotation is: (and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2))) (<= 1 main_~p~0) (<= (+ main_~p~0 2) main_~bufsize_0~0) (<= 1 main_~leader_len~0)) [2022-04-27 10:44:37,439 INFO L895 garLoopResultBuilder]: At program point L50-1(line 50) the Hoare annotation is: (and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2))) (<= 1 main_~p~0) (<= (+ main_~p~0 2) main_~bufsize_0~0) (<= 1 main_~leader_len~0)) [2022-04-27 10:44:37,439 INFO L899 garLoopResultBuilder]: For program point L38(line 38) no Hoare annotation was computed. [2022-04-27 10:44:37,439 INFO L899 garLoopResultBuilder]: For program point L38-1(lines 25 56) no Hoare annotation was computed. [2022-04-27 10:44:37,439 INFO L902 garLoopResultBuilder]: At program point mainENTRY(lines 24 56) the Hoare annotation is: true [2022-04-27 10:44:37,439 INFO L899 garLoopResultBuilder]: For program point L51(line 51) no Hoare annotation was computed. [2022-04-27 10:44:37,440 INFO L899 garLoopResultBuilder]: For program point L47(lines 47 48) no Hoare annotation was computed. [2022-04-27 10:44:37,440 INFO L899 garLoopResultBuilder]: For program point L39(lines 25 56) no Hoare annotation was computed. [2022-04-27 10:44:37,440 INFO L899 garLoopResultBuilder]: For program point L35(line 35) no Hoare annotation was computed. [2022-04-27 10:44:37,440 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2022-04-27 10:44:37,440 INFO L895 garLoopResultBuilder]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: (and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|)) [2022-04-27 10:44:37,440 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2022-04-27 10:44:37,440 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-04-27 10:44:37,440 INFO L902 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-27 10:44:37,440 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-27 10:44:37,440 INFO L899 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-04-27 10:44:37,440 INFO L899 garLoopResultBuilder]: For program point L18-2(lines 17 22) no Hoare annotation was computed. [2022-04-27 10:44:37,440 INFO L902 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 17 22) the Hoare annotation is: true [2022-04-27 10:44:37,441 INFO L899 garLoopResultBuilder]: For program point __VERIFIER_assertEXIT(lines 17 22) no Hoare annotation was computed. [2022-04-27 10:44:37,441 INFO L899 garLoopResultBuilder]: For program point L19(line 19) no Hoare annotation was computed. [2022-04-27 10:44:37,441 INFO L899 garLoopResultBuilder]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 19) no Hoare annotation was computed. [2022-04-27 10:44:37,441 INFO L899 garLoopResultBuilder]: For program point L18(lines 18 20) no Hoare annotation was computed. [2022-04-27 10:44:37,443 INFO L356 BasicCegarLoop]: Path program histogram: [2, 1, 1] [2022-04-27 10:44:37,445 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-27 10:44:37,448 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-27 10:44:37,448 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-27 10:44:37,448 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-27 10:44:37,449 WARN L170 areAnnotationChecker]: assume_abort_if_notENTRY has no Hoare annotation [2022-04-27 10:44:37,449 WARN L170 areAnnotationChecker]: L35 has no Hoare annotation [2022-04-27 10:44:37,449 WARN L170 areAnnotationChecker]: L18 has no Hoare annotation [2022-04-27 10:44:37,449 WARN L170 areAnnotationChecker]: L12-1 has no Hoare annotation [2022-04-27 10:44:37,449 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-27 10:44:37,449 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-27 10:44:37,449 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-27 10:44:37,449 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-27 10:44:37,449 WARN L170 areAnnotationChecker]: L35 has no Hoare annotation [2022-04-27 10:44:37,449 WARN L170 areAnnotationChecker]: L35 has no Hoare annotation [2022-04-27 10:44:37,449 WARN L170 areAnnotationChecker]: L18 has no Hoare annotation [2022-04-27 10:44:37,449 WARN L170 areAnnotationChecker]: L18 has no Hoare annotation [2022-04-27 10:44:37,449 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-27 10:44:37,450 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-27 10:44:37,450 WARN L170 areAnnotationChecker]: L15-2 has no Hoare annotation [2022-04-27 10:44:37,450 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-27 10:44:37,450 WARN L170 areAnnotationChecker]: L36 has no Hoare annotation [2022-04-27 10:44:37,450 WARN L170 areAnnotationChecker]: L36 has no Hoare annotation [2022-04-27 10:44:37,450 WARN L170 areAnnotationChecker]: L19 has no Hoare annotation [2022-04-27 10:44:37,450 WARN L170 areAnnotationChecker]: L19 has no Hoare annotation [2022-04-27 10:44:37,450 WARN L170 areAnnotationChecker]: L18-2 has no Hoare annotation [2022-04-27 10:44:37,450 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-27 10:44:37,450 WARN L170 areAnnotationChecker]: L37 has no Hoare annotation [2022-04-27 10:44:37,450 WARN L170 areAnnotationChecker]: L37 has no Hoare annotation [2022-04-27 10:44:37,450 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 10:44:37,450 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-27 10:44:37,450 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2022-04-27 10:44:37,450 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2022-04-27 10:44:37,450 WARN L170 areAnnotationChecker]: L51 has no Hoare annotation [2022-04-27 10:44:37,450 WARN L170 areAnnotationChecker]: L51 has no Hoare annotation [2022-04-27 10:44:37,451 WARN L170 areAnnotationChecker]: L38-1 has no Hoare annotation [2022-04-27 10:44:37,451 WARN L170 areAnnotationChecker]: L38-1 has no Hoare annotation [2022-04-27 10:44:37,451 WARN L170 areAnnotationChecker]: L49-2 has no Hoare annotation [2022-04-27 10:44:37,451 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-27 10:44:37,451 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-27 10:44:37,452 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-27 10:44:37,452 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-27 10:44:37,453 WARN L170 areAnnotationChecker]: L47 has no Hoare annotation [2022-04-27 10:44:37,453 WARN L170 areAnnotationChecker]: L47 has no Hoare annotation [2022-04-27 10:44:37,453 INFO L163 areAnnotationChecker]: CFG has 7 edges. 7 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-27 10:44:37,460 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 10:44:37 BoogieIcfgContainer [2022-04-27 10:44:37,460 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-27 10:44:37,461 INFO L158 Benchmark]: Toolchain (without parser) took 8488.54ms. Allocated memory was 188.7MB in the beginning and 289.4MB in the end (delta: 100.7MB). Free memory was 132.6MB in the beginning and 238.4MB in the end (delta: -105.8MB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-27 10:44:37,461 INFO L158 Benchmark]: CDTParser took 0.35ms. Allocated memory is still 188.7MB. Free memory is still 148.9MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-27 10:44:37,462 INFO L158 Benchmark]: CACSL2BoogieTranslator took 295.73ms. Allocated memory was 188.7MB in the beginning and 241.2MB in the end (delta: 52.4MB). Free memory was 132.5MB in the beginning and 210.0MB in the end (delta: -77.6MB). Peak memory consumption was 10.8MB. Max. memory is 8.0GB. [2022-04-27 10:44:37,462 INFO L158 Benchmark]: Boogie Preprocessor took 46.54ms. Allocated memory is still 241.2MB. Free memory was 209.6MB in the beginning and 208.3MB in the end (delta: 1.3MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-27 10:44:37,462 INFO L158 Benchmark]: RCFGBuilder took 381.95ms. Allocated memory is still 241.2MB. Free memory was 208.3MB in the beginning and 195.4MB in the end (delta: 13.0MB). Peak memory consumption was 13.6MB. Max. memory is 8.0GB. [2022-04-27 10:44:37,462 INFO L158 Benchmark]: TraceAbstraction took 7753.82ms. Allocated memory was 241.2MB in the beginning and 289.4MB in the end (delta: 48.2MB). Free memory was 194.9MB in the beginning and 238.4MB in the end (delta: -43.5MB). Peak memory consumption was 5.6MB. Max. memory is 8.0GB. [2022-04-27 10:44:37,463 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.35ms. Allocated memory is still 188.7MB. Free memory is still 148.9MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 295.73ms. Allocated memory was 188.7MB in the beginning and 241.2MB in the end (delta: 52.4MB). Free memory was 132.5MB in the beginning and 210.0MB in the end (delta: -77.6MB). Peak memory consumption was 10.8MB. Max. memory is 8.0GB. * Boogie Preprocessor took 46.54ms. Allocated memory is still 241.2MB. Free memory was 209.6MB in the beginning and 208.3MB in the end (delta: 1.3MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 381.95ms. Allocated memory is still 241.2MB. Free memory was 208.3MB in the beginning and 195.4MB in the end (delta: 13.0MB). Peak memory consumption was 13.6MB. Max. memory is 8.0GB. * TraceAbstraction took 7753.82ms. Allocated memory was 241.2MB in the beginning and 289.4MB in the end (delta: 48.2MB). Free memory was 194.9MB in the beginning and 238.4MB in the end (delta: -43.5MB). Peak memory consumption was 5.6MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 19]: 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, 36 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 7.7s, OverallIterations: 4, TraceHistogramMax: 8, PathProgramHistogramMax: 2, EmptinessCheckTime: 0.0s, AutomataDifference: 3.4s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.1s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 167 SdHoareTripleChecker+Valid, 1.1s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 163 mSDsluCounter, 236 SdHoareTripleChecker+Invalid, 1.1s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 133 mSDsCounter, 172 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 862 IncrementalHoareTripleChecker+Invalid, 1034 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 172 mSolverCounterUnsat, 103 mSDtfsCounter, 862 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 303 GetRequests, 204 SyntacticMatches, 6 SemanticMatches, 93 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 731 ImplicationChecksByTransitivity, 1.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=50occurred in iteration=3, InterpolantAutomatonStates: 52, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.1s AutomataMinimizationTime, 4 MinimizatonAttempts, 2 StatesRemovedByMinimization, 2 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 9 LocationsWithAnnotation, 20 PreInvPairs, 38 NumberOfFragments, 76 HoareAnnotationTreeSize, 20 FomulaSimplifications, 14 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 9 FomulaSimplificationsInter, 290 FormulaSimplificationTreeSizeReductionInter, 0.1s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 3.0s InterpolantComputationTime, 243 NumberOfCodeBlocks, 243 NumberOfCodeBlocksAsserted, 7 NumberOfCheckSat, 335 ConstructedInterpolants, 0 QuantifiedInterpolants, 1211 SizeOfPredicates, 16 NumberOfNonLiveVariables, 262 ConjunctsInSsa, 26 ConjunctsInUnsatCore, 8 InterpolantComputations, 2 PerfectInterpolantSequences, 357/431 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: 24]: Loop Invariant Derived loop invariant: 1 - InvariantResult [Line: 49]: Loop Invariant Derived loop invariant: (p + 2 * ielen <= bufsize_0 + i * 2 && 1 <= p) && 1 <= leader_len RESULT: Ultimate proved your program to be correct! [2022-04-27 10:44:37,496 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...