/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/AutomizerCTransformed.xml -s ../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf -i ../../../trunk/examples/svcomp/loop-invgen/MADWiFi-encode_ie_ok.i -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-07 16:59:25,293 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-07 16:59:25,294 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-07 16:59:25,320 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-07 16:59:25,320 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-07 16:59:25,321 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-07 16:59:25,322 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-07 16:59:25,323 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-07 16:59:25,324 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-07 16:59:25,325 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-07 16:59:25,325 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-07 16:59:25,326 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-07 16:59:25,327 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-07 16:59:25,327 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-07 16:59:25,328 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-07 16:59:25,329 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-07 16:59:25,329 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-07 16:59:25,330 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-07 16:59:25,331 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-07 16:59:25,332 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-07 16:59:25,333 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-07 16:59:25,335 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-07 16:59:25,335 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-07 16:59:25,336 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-07 16:59:25,337 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-07 16:59:25,338 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-07 16:59:25,338 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-07 16:59:25,339 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-07 16:59:25,339 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-07 16:59:25,339 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-07 16:59:25,340 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-07 16:59:25,340 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-07 16:59:25,341 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-07 16:59:25,341 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-07 16:59:25,342 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-07 16:59:25,342 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-07 16:59:25,342 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-07 16:59:25,343 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-07 16:59:25,343 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-07 16:59:25,343 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-07 16:59:25,344 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-07 16:59:25,344 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-07 16:59:25,345 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-07 16:59:25,351 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-07 16:59:25,352 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-07 16:59:25,352 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-07 16:59:25,353 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-07 16:59:25,353 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-07 16:59:25,353 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-07 16:59:25,353 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-07 16:59:25,353 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-07 16:59:25,353 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-07 16:59:25,354 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-07 16:59:25,354 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-07 16:59:25,354 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-07 16:59:25,354 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-07 16:59:25,354 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-07 16:59:25,354 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-07 16:59:25,355 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-07 16:59:25,355 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-07 16:59:25,355 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-07 16:59:25,355 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 16:59:25,355 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-07 16:59:25,356 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-07 16:59:25,356 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-07 16:59:25,356 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_JORDAN WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-07 16:59:25,562 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-07 16:59:25,585 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-07 16:59:25,587 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-07 16:59:25,588 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-07 16:59:25,591 INFO L275 PluginConnector]: CDTParser initialized [2022-04-07 16:59:25,593 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-07 16:59:25,651 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/403119d5c/16a13364d2ce41a0a216480209375aa7/FLAG6ed0bbda8 [2022-04-07 16:59:26,030 INFO L306 CDTParser]: Found 1 translation units. [2022-04-07 16:59:26,030 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/loop-invgen/MADWiFi-encode_ie_ok.i [2022-04-07 16:59:26,035 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/403119d5c/16a13364d2ce41a0a216480209375aa7/FLAG6ed0bbda8 [2022-04-07 16:59:26,048 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/403119d5c/16a13364d2ce41a0a216480209375aa7 [2022-04-07 16:59:26,050 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-07 16:59:26,052 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-07 16:59:26,055 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-07 16:59:26,055 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-07 16:59:26,058 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-07 16:59:26,062 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 04:59:26" (1/1) ... [2022-04-07 16:59:26,063 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@66a84e6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 04:59:26, skipping insertion in model container [2022-04-07 16:59:26,064 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 04:59:26" (1/1) ... [2022-04-07 16:59:26,068 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-07 16:59:26,080 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-07 16:59:26,193 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-07 16:59:26,232 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 16:59:26,238 INFO L203 MainTranslator]: Completed pre-run [2022-04-07 16:59:26,250 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-07 16:59:26,267 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 16:59:26,276 INFO L208 MainTranslator]: Completed translation [2022-04-07 16:59:26,277 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 04:59:26 WrapperNode [2022-04-07 16:59:26,277 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-07 16:59:26,277 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-07 16:59:26,278 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-07 16:59:26,278 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-07 16:59:26,285 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 04:59:26" (1/1) ... [2022-04-07 16:59:26,285 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 04:59:26" (1/1) ... [2022-04-07 16:59:26,289 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 04:59:26" (1/1) ... [2022-04-07 16:59:26,289 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 04:59:26" (1/1) ... [2022-04-07 16:59:26,294 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 04:59:26" (1/1) ... [2022-04-07 16:59:26,297 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 04:59:26" (1/1) ... [2022-04-07 16:59:26,298 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 04:59:26" (1/1) ... [2022-04-07 16:59:26,300 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-07 16:59:26,301 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-07 16:59:26,301 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-07 16:59:26,301 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-07 16:59:26,305 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 04:59:26" (1/1) ... [2022-04-07 16:59:26,310 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 16:59:26,316 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 16:59:26,325 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-07 16:59:26,326 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-07 16:59:26,347 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-07 16:59:26,347 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-07 16:59:26,348 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-07 16:59:26,348 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-07 16:59:26,348 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-07 16:59:26,348 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-07 16:59:26,348 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-07 16:59:26,348 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-07 16:59:26,348 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_perror_fail [2022-04-07 16:59:26,348 INFO L130 BoogieDeclarations]: Found specification of procedure __assert [2022-04-07 16:59:26,348 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-07 16:59:26,348 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-07 16:59:26,348 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-07 16:59:26,348 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-07 16:59:26,349 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-07 16:59:26,349 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-07 16:59:26,349 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-07 16:59:26,349 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-07 16:59:26,349 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-07 16:59:26,349 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-07 16:59:26,349 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-07 16:59:26,349 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-07 16:59:26,411 INFO L234 CfgBuilder]: Building ICFG [2022-04-07 16:59:26,412 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-07 16:59:26,599 INFO L275 CfgBuilder]: Performing block encoding [2022-04-07 16:59:26,605 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-07 16:59:26,605 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-07 16:59:26,606 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 04:59:26 BoogieIcfgContainer [2022-04-07 16:59:26,606 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-07 16:59:26,607 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-07 16:59:26,607 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-07 16:59:26,608 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-07 16:59:26,610 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 04:59:26" (1/1) ... [2022-04-07 16:59:26,612 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-07 16:59:26,656 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 04:59:26 BasicIcfg [2022-04-07 16:59:26,656 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-07 16:59:26,657 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-07 16:59:26,657 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-07 16:59:26,659 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-07 16:59:26,660 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.04 04:59:26" (1/4) ... [2022-04-07 16:59:26,660 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@25b1612a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 04:59:26, skipping insertion in model container [2022-04-07 16:59:26,660 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 04:59:26" (2/4) ... [2022-04-07 16:59:26,660 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@25b1612a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 04:59:26, skipping insertion in model container [2022-04-07 16:59:26,660 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 04:59:26" (3/4) ... [2022-04-07 16:59:26,661 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@25b1612a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 04:59:26, skipping insertion in model container [2022-04-07 16:59:26,661 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 04:59:26" (4/4) ... [2022-04-07 16:59:26,662 INFO L111 eAbstractionObserver]: Analyzing ICFG MADWiFi-encode_ie_ok.iJordan [2022-04-07 16:59:26,665 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-07 16:59:26,665 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-07 16:59:26,717 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-07 16:59:26,729 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=ForwardPredicates, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-07 16:59:26,730 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-07 16:59:26,743 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-07 16:59:26,748 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-04-07 16:59:26,748 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 16:59:26,748 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 16:59:26,749 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 16:59:26,755 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 16:59:26,755 INFO L85 PathProgramCache]: Analyzing trace with hash 1231819666, now seen corresponding path program 1 times [2022-04-07 16:59:26,762 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 16:59:26,763 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [116689633] [2022-04-07 16:59:26,764 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 16:59:26,764 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 16:59:26,874 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 16:59:26,997 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 16:59:27,016 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 16:59:27,028 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [99] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {32#true} is VALID [2022-04-07 16:59:27,029 INFO L290 TraceCheckUtils]: 1: Hoare triple {32#true} [102] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32#true} is VALID [2022-04-07 16:59:27,029 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {32#true} {32#true} [133] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32#true} is VALID [2022-04-07 16:59:27,032 INFO L272 TraceCheckUtils]: 0: Hoare triple {32#true} [97] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-07 16:59:27,033 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [99] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {32#true} is VALID [2022-04-07 16:59:27,033 INFO L290 TraceCheckUtils]: 2: Hoare triple {32#true} [102] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32#true} is VALID [2022-04-07 16:59:27,033 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {32#true} {32#true} [133] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32#true} is VALID [2022-04-07 16:59:27,034 INFO L272 TraceCheckUtils]: 4: Hoare triple {32#true} [98] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32#true} is VALID [2022-04-07 16:59:27,035 INFO L290 TraceCheckUtils]: 5: Hoare triple {32#true} [101] mainENTRY-->L35: Formula: (and (= |v_main_#t~nondet3_2| v_main_~ielen~0_1) (= v_main_~leader_len~0_1 |v_main_#t~nondet1_2|) (<= |v_main_#t~nondet3_2| 2147483647) (= v_main_~bufsize~0_1 |v_main_#t~nondet2_2|) (<= |v_main_#t~nondet1_2| 2147483647) (<= 0 (+ |v_main_#t~nondet2_2| 2147483648)) (<= |v_main_#t~nondet2_2| 2147483647) (<= 0 (+ |v_main_#t~nondet1_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet3_2| 2147483648))) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet3=|v_main_#t~nondet3_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~ielen~0=v_main_~ielen~0_1, main_~bufsize_0~0=v_main_~bufsize_0~0_2, main_~i~0=v_main_~i~0_3, main_~bufsize~0=v_main_~bufsize~0_1, main_~leader_len~0=v_main_~leader_len~0_1, main_~p~0=v_main_~p~0_5} AuxVars[] AssignedVars[main_~ielen~0, main_#t~nondet1, main_#t~nondet3, main_#t~nondet2, main_~bufsize_0~0, main_~i~0, main_~bufsize~0, main_~leader_len~0, main_~p~0] {32#true} is VALID [2022-04-07 16:59:27,035 INFO L290 TraceCheckUtils]: 6: Hoare triple {32#true} [104] L35-->L36: Formula: (< v_main_~leader_len~0_5 1000000) InVars {main_~leader_len~0=v_main_~leader_len~0_5} OutVars{main_~leader_len~0=v_main_~leader_len~0_5} AuxVars[] AssignedVars[] {32#true} is VALID [2022-04-07 16:59:27,036 INFO L290 TraceCheckUtils]: 7: Hoare triple {32#true} [107] L36-->L37: Formula: (< v_main_~bufsize~0_5 1000000) InVars {main_~bufsize~0=v_main_~bufsize~0_5} OutVars{main_~bufsize~0=v_main_~bufsize~0_5} AuxVars[] AssignedVars[] {32#true} is VALID [2022-04-07 16:59:27,036 INFO L290 TraceCheckUtils]: 8: Hoare triple {32#true} [109] L37-->L38: Formula: (< v_main_~ielen~0_5 1000000) InVars {main_~ielen~0=v_main_~ielen~0_5} OutVars{main_~ielen~0=v_main_~ielen~0_5} AuxVars[] AssignedVars[] {32#true} is VALID [2022-04-07 16:59:27,038 INFO L290 TraceCheckUtils]: 9: Hoare triple {32#true} [110] L38-->L38-1: Formula: (< 0 v_main_~leader_len~0_6) InVars {main_~leader_len~0=v_main_~leader_len~0_6} OutVars{main_~leader_len~0=v_main_~leader_len~0_6} AuxVars[] AssignedVars[] {37#(<= 1 main_~leader_len~0)} is VALID [2022-04-07 16:59:27,038 INFO L290 TraceCheckUtils]: 10: Hoare triple {37#(<= 1 main_~leader_len~0)} [112] L38-1-->L39: Formula: (< 0 v_main_~bufsize~0_6) InVars {main_~bufsize~0=v_main_~bufsize~0_6} OutVars{main_~bufsize~0=v_main_~bufsize~0_6} AuxVars[] AssignedVars[] {37#(<= 1 main_~leader_len~0)} is VALID [2022-04-07 16:59:27,039 INFO L290 TraceCheckUtils]: 11: Hoare triple {37#(<= 1 main_~leader_len~0)} [114] L39-->L40: Formula: (< 0 v_main_~ielen~0_6) InVars {main_~ielen~0=v_main_~ielen~0_6} OutVars{main_~ielen~0=v_main_~ielen~0_6} AuxVars[] AssignedVars[] {37#(<= 1 main_~leader_len~0)} is VALID [2022-04-07 16:59:27,039 INFO L290 TraceCheckUtils]: 12: Hoare triple {37#(<= 1 main_~leader_len~0)} [117] L40-->L47: Formula: (and (= v_main_~p~0_6 v_main_~leader_len~0_9) (= v_main_~bufsize_0~0_3 v_main_~bufsize~0_10) (not (< v_main_~bufsize~0_10 v_main_~leader_len~0_9)) (= v_main_~bufsize~0_9 (+ (* (- 1) v_main_~leader_len~0_9) v_main_~bufsize~0_10))) InVars {main_~bufsize~0=v_main_~bufsize~0_10, main_~leader_len~0=v_main_~leader_len~0_9} OutVars{main_~bufsize_0~0=v_main_~bufsize_0~0_3, main_~bufsize~0=v_main_~bufsize~0_9, main_~p~0=v_main_~p~0_6, main_~leader_len~0=v_main_~leader_len~0_9} AuxVars[] AssignedVars[main_~bufsize_0~0, main_~bufsize~0, main_~p~0] {38#(<= 1 main_~p~0)} is VALID [2022-04-07 16:59:27,040 INFO L290 TraceCheckUtils]: 13: Hoare triple {38#(<= 1 main_~p~0)} [119] L47-->L49-3: Formula: (and (not (< v_main_~bufsize~0_12 (* 2 v_main_~ielen~0_9))) (= v_main_~i~0_4 0)) InVars {main_~ielen~0=v_main_~ielen~0_9, main_~bufsize~0=v_main_~bufsize~0_12} OutVars{main_~i~0=v_main_~i~0_4, main_~bufsize~0=v_main_~bufsize~0_12, main_~ielen~0=v_main_~ielen~0_9} AuxVars[] AssignedVars[main_~i~0] {38#(<= 1 main_~p~0)} is VALID [2022-04-07 16:59:27,042 INFO L290 TraceCheckUtils]: 14: Hoare triple {38#(<= 1 main_~p~0)} [122] L49-3-->L50: Formula: (and (< v_main_~i~0_6 v_main_~ielen~0_11) (< 2 v_main_~bufsize~0_14)) InVars {main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} OutVars{main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} AuxVars[] AssignedVars[] {38#(<= 1 main_~p~0)} is VALID [2022-04-07 16:59:27,043 INFO L272 TraceCheckUtils]: 15: Hoare triple {38#(<= 1 main_~p~0)} [123] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {39#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 16:59:27,043 INFO L290 TraceCheckUtils]: 16: Hoare triple {39#(not (= |__VERIFIER_assert_#in~cond| 0))} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {40#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 16:59:27,044 INFO L290 TraceCheckUtils]: 17: Hoare triple {40#(not (= __VERIFIER_assert_~cond 0))} [127] L18-->L19: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {33#false} is VALID [2022-04-07 16:59:27,044 INFO L290 TraceCheckUtils]: 18: Hoare triple {33#false} [130] L19-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#false} is VALID [2022-04-07 16:59:27,044 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 16:59:27,045 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 16:59:27,045 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [116689633] [2022-04-07 16:59:27,046 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [116689633] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 16:59:27,046 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 16:59:27,046 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-07 16:59:27,048 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [210425769] [2022-04-07 16:59:27,049 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 16:59:27,054 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-07 16:59:27,055 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 16:59:27,057 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-07 16:59:27,079 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-07 16:59:27,079 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-07 16:59:27,079 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 16:59:27,094 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-07 16:59:27,095 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-04-07 16:59:27,096 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-07 16:59:27,391 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 16:59:27,392 INFO L93 Difference]: Finished difference Result 37 states and 45 transitions. [2022-04-07 16:59:27,392 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-07 16:59:27,392 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-07 16:59:27,392 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 16:59:27,393 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-07 16:59:27,399 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-07 16:59:27,399 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-07 16:59:27,401 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 48 transitions. [2022-04-07 16:59:27,401 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 48 transitions. [2022-04-07 16:59:27,440 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 16:59:27,446 INFO L225 Difference]: With dead ends: 37 [2022-04-07 16:59:27,447 INFO L226 Difference]: Without dead ends: 29 [2022-04-07 16:59:27,448 INFO L912 BasicCegarLoop]: 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-07 16:59:27,450 INFO L913 BasicCegarLoop]: 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.1s IncrementalHoareTripleChecker+Time [2022-04-07 16:59:27,451 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [50 Valid, 60 Invalid, 130 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 116 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 16:59:27,462 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-07 16:59:27,470 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2022-04-07 16:59:27,470 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 16:59:27,470 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-07 16:59:27,471 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-07 16:59:27,471 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-07 16:59:27,473 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 16:59:27,473 INFO L93 Difference]: Finished difference Result 29 states and 29 transitions. [2022-04-07 16:59:27,473 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 29 transitions. [2022-04-07 16:59:27,474 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 16:59:27,474 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 16:59:27,474 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-07 16:59:27,474 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-07 16:59:27,476 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 16:59:27,476 INFO L93 Difference]: Finished difference Result 29 states and 29 transitions. [2022-04-07 16:59:27,476 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 29 transitions. [2022-04-07 16:59:27,476 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 16:59:27,477 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 16:59:27,477 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 16:59:27,477 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 16:59:27,477 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-07 16:59:27,479 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 29 transitions. [2022-04-07 16:59:27,480 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 29 transitions. Word has length 19 [2022-04-07 16:59:27,480 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 16:59:27,480 INFO L478 AbstractCegarLoop]: Abstraction has 29 states and 29 transitions. [2022-04-07 16:59:27,480 INFO L479 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-07 16:59:27,480 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 29 transitions. [2022-04-07 16:59:27,481 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-07 16:59:27,481 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 16:59:27,481 INFO L499 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 16:59:27,481 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-07 16:59:27,481 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 16:59:27,482 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 16:59:27,482 INFO L85 PathProgramCache]: Analyzing trace with hash 1598286936, now seen corresponding path program 1 times [2022-04-07 16:59:27,482 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 16:59:27,482 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [400340546] [2022-04-07 16:59:27,482 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 16:59:27,482 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 16:59:27,512 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 16:59:27,562 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 16:59:27,564 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 16:59:27,570 INFO L290 TraceCheckUtils]: 0: Hoare triple {191#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [99] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {178#true} is VALID [2022-04-07 16:59:27,571 INFO L290 TraceCheckUtils]: 1: Hoare triple {178#true} [102] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {178#true} is VALID [2022-04-07 16:59:27,571 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {178#true} {178#true} [133] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {178#true} is VALID [2022-04-07 16:59:27,571 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 15 [2022-04-07 16:59:27,573 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 16:59:27,576 INFO L290 TraceCheckUtils]: 0: Hoare triple {178#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {178#true} is VALID [2022-04-07 16:59:27,577 INFO L290 TraceCheckUtils]: 1: Hoare triple {178#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {178#true} is VALID [2022-04-07 16:59:27,577 INFO L290 TraceCheckUtils]: 2: Hoare triple {178#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {178#true} is VALID [2022-04-07 16:59:27,577 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {178#true} {184#(<= (+ main_~p~0 3) main_~bufsize_0~0)} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {184#(<= (+ main_~p~0 3) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:27,578 INFO L272 TraceCheckUtils]: 0: Hoare triple {178#true} [97] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {191#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-07 16:59:27,578 INFO L290 TraceCheckUtils]: 1: Hoare triple {191#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [99] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {178#true} is VALID [2022-04-07 16:59:27,578 INFO L290 TraceCheckUtils]: 2: Hoare triple {178#true} [102] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {178#true} is VALID [2022-04-07 16:59:27,578 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {178#true} {178#true} [133] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {178#true} is VALID [2022-04-07 16:59:27,578 INFO L272 TraceCheckUtils]: 4: Hoare triple {178#true} [98] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {178#true} is VALID [2022-04-07 16:59:27,579 INFO L290 TraceCheckUtils]: 5: Hoare triple {178#true} [101] mainENTRY-->L35: Formula: (and (= |v_main_#t~nondet3_2| v_main_~ielen~0_1) (= v_main_~leader_len~0_1 |v_main_#t~nondet1_2|) (<= |v_main_#t~nondet3_2| 2147483647) (= v_main_~bufsize~0_1 |v_main_#t~nondet2_2|) (<= |v_main_#t~nondet1_2| 2147483647) (<= 0 (+ |v_main_#t~nondet2_2| 2147483648)) (<= |v_main_#t~nondet2_2| 2147483647) (<= 0 (+ |v_main_#t~nondet1_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet3_2| 2147483648))) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet3=|v_main_#t~nondet3_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~ielen~0=v_main_~ielen~0_1, main_~bufsize_0~0=v_main_~bufsize_0~0_2, main_~i~0=v_main_~i~0_3, main_~bufsize~0=v_main_~bufsize~0_1, main_~leader_len~0=v_main_~leader_len~0_1, main_~p~0=v_main_~p~0_5} AuxVars[] AssignedVars[main_~ielen~0, main_#t~nondet1, main_#t~nondet3, main_#t~nondet2, main_~bufsize_0~0, main_~i~0, main_~bufsize~0, main_~leader_len~0, main_~p~0] {178#true} is VALID [2022-04-07 16:59:27,579 INFO L290 TraceCheckUtils]: 6: Hoare triple {178#true} [104] L35-->L36: Formula: (< v_main_~leader_len~0_5 1000000) InVars {main_~leader_len~0=v_main_~leader_len~0_5} OutVars{main_~leader_len~0=v_main_~leader_len~0_5} AuxVars[] AssignedVars[] {178#true} is VALID [2022-04-07 16:59:27,579 INFO L290 TraceCheckUtils]: 7: Hoare triple {178#true} [107] L36-->L37: Formula: (< v_main_~bufsize~0_5 1000000) InVars {main_~bufsize~0=v_main_~bufsize~0_5} OutVars{main_~bufsize~0=v_main_~bufsize~0_5} AuxVars[] AssignedVars[] {178#true} is VALID [2022-04-07 16:59:27,579 INFO L290 TraceCheckUtils]: 8: Hoare triple {178#true} [109] L37-->L38: Formula: (< v_main_~ielen~0_5 1000000) InVars {main_~ielen~0=v_main_~ielen~0_5} OutVars{main_~ielen~0=v_main_~ielen~0_5} AuxVars[] AssignedVars[] {178#true} is VALID [2022-04-07 16:59:27,579 INFO L290 TraceCheckUtils]: 9: Hoare triple {178#true} [110] L38-->L38-1: Formula: (< 0 v_main_~leader_len~0_6) InVars {main_~leader_len~0=v_main_~leader_len~0_6} OutVars{main_~leader_len~0=v_main_~leader_len~0_6} AuxVars[] AssignedVars[] {178#true} is VALID [2022-04-07 16:59:27,579 INFO L290 TraceCheckUtils]: 10: Hoare triple {178#true} [112] L38-1-->L39: Formula: (< 0 v_main_~bufsize~0_6) InVars {main_~bufsize~0=v_main_~bufsize~0_6} OutVars{main_~bufsize~0=v_main_~bufsize~0_6} AuxVars[] AssignedVars[] {178#true} is VALID [2022-04-07 16:59:27,579 INFO L290 TraceCheckUtils]: 11: Hoare triple {178#true} [114] L39-->L40: Formula: (< 0 v_main_~ielen~0_6) InVars {main_~ielen~0=v_main_~ielen~0_6} OutVars{main_~ielen~0=v_main_~ielen~0_6} AuxVars[] AssignedVars[] {178#true} is VALID [2022-04-07 16:59:27,580 INFO L290 TraceCheckUtils]: 12: Hoare triple {178#true} [117] L40-->L47: Formula: (and (= v_main_~p~0_6 v_main_~leader_len~0_9) (= v_main_~bufsize_0~0_3 v_main_~bufsize~0_10) (not (< v_main_~bufsize~0_10 v_main_~leader_len~0_9)) (= v_main_~bufsize~0_9 (+ (* (- 1) v_main_~leader_len~0_9) v_main_~bufsize~0_10))) InVars {main_~bufsize~0=v_main_~bufsize~0_10, main_~leader_len~0=v_main_~leader_len~0_9} OutVars{main_~bufsize_0~0=v_main_~bufsize_0~0_3, main_~bufsize~0=v_main_~bufsize~0_9, main_~p~0=v_main_~p~0_6, main_~leader_len~0=v_main_~leader_len~0_9} AuxVars[] AssignedVars[main_~bufsize_0~0, main_~bufsize~0, main_~p~0] {183#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:27,580 INFO L290 TraceCheckUtils]: 13: Hoare triple {183#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} [119] L47-->L49-3: Formula: (and (not (< v_main_~bufsize~0_12 (* 2 v_main_~ielen~0_9))) (= v_main_~i~0_4 0)) InVars {main_~ielen~0=v_main_~ielen~0_9, main_~bufsize~0=v_main_~bufsize~0_12} OutVars{main_~i~0=v_main_~i~0_4, main_~bufsize~0=v_main_~bufsize~0_12, main_~ielen~0=v_main_~ielen~0_9} AuxVars[] AssignedVars[main_~i~0] {183#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:27,581 INFO L290 TraceCheckUtils]: 14: Hoare triple {183#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} [122] L49-3-->L50: Formula: (and (< v_main_~i~0_6 v_main_~ielen~0_11) (< 2 v_main_~bufsize~0_14)) InVars {main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} OutVars{main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} AuxVars[] AssignedVars[] {184#(<= (+ main_~p~0 3) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:27,581 INFO L272 TraceCheckUtils]: 15: Hoare triple {184#(<= (+ main_~p~0 3) main_~bufsize_0~0)} [123] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {178#true} is VALID [2022-04-07 16:59:27,581 INFO L290 TraceCheckUtils]: 16: Hoare triple {178#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {178#true} is VALID [2022-04-07 16:59:27,581 INFO L290 TraceCheckUtils]: 17: Hoare triple {178#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {178#true} is VALID [2022-04-07 16:59:27,581 INFO L290 TraceCheckUtils]: 18: Hoare triple {178#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {178#true} is VALID [2022-04-07 16:59:27,582 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {178#true} {184#(<= (+ main_~p~0 3) main_~bufsize_0~0)} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {184#(<= (+ main_~p~0 3) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:27,583 INFO L272 TraceCheckUtils]: 20: Hoare triple {184#(<= (+ main_~p~0 3) main_~bufsize_0~0)} [124] L50-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {189#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 16:59:27,583 INFO L290 TraceCheckUtils]: 21: Hoare triple {189#(not (= |__VERIFIER_assert_#in~cond| 0))} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {190#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 16:59:27,583 INFO L290 TraceCheckUtils]: 22: Hoare triple {190#(not (= __VERIFIER_assert_~cond 0))} [127] L18-->L19: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {179#false} is VALID [2022-04-07 16:59:27,584 INFO L290 TraceCheckUtils]: 23: Hoare triple {179#false} [130] L19-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {179#false} is VALID [2022-04-07 16:59:27,584 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 16:59:27,584 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 16:59:27,584 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [400340546] [2022-04-07 16:59:27,584 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [400340546] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 16:59:27,584 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 16:59:27,584 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-07 16:59:27,585 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [44692559] [2022-04-07 16:59:27,585 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 16:59:27,586 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-07 16:59:27,586 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 16:59:27,586 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-07 16:59:27,602 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-07 16:59:27,602 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-07 16:59:27,602 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 16:59:27,602 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-07 16:59:27,603 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-04-07 16:59:27,603 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-07 16:59:27,864 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 16:59:27,864 INFO L93 Difference]: Finished difference Result 37 states and 38 transitions. [2022-04-07 16:59:27,864 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-07 16:59:27,864 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-07 16:59:27,865 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 16:59:27,865 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-07 16:59:27,866 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 36 transitions. [2022-04-07 16:59:27,866 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-07 16:59:27,868 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 36 transitions. [2022-04-07 16:59:27,868 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 36 transitions. [2022-04-07 16:59:27,906 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 16:59:27,908 INFO L225 Difference]: With dead ends: 37 [2022-04-07 16:59:27,908 INFO L226 Difference]: Without dead ends: 37 [2022-04-07 16:59:27,908 INFO L912 BasicCegarLoop]: 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-07 16:59:27,909 INFO L913 BasicCegarLoop]: 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-07 16:59:27,909 INFO L914 BasicCegarLoop]: 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-07 16:59:27,910 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-07 16:59:27,913 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 36. [2022-04-07 16:59:27,913 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 16:59:27,913 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-07 16:59:27,913 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-07 16:59:27,914 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-07 16:59:27,916 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 16:59:27,916 INFO L93 Difference]: Finished difference Result 37 states and 38 transitions. [2022-04-07 16:59:27,916 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 38 transitions. [2022-04-07 16:59:27,916 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 16:59:27,916 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 16:59:27,916 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-07 16:59:27,917 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-07 16:59:27,918 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 16:59:27,918 INFO L93 Difference]: Finished difference Result 37 states and 38 transitions. [2022-04-07 16:59:27,918 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 38 transitions. [2022-04-07 16:59:27,918 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 16:59:27,919 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 16:59:27,919 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 16:59:27,919 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 16:59:27,919 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-07 16:59:27,920 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 37 transitions. [2022-04-07 16:59:27,920 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 37 transitions. Word has length 24 [2022-04-07 16:59:27,920 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 16:59:27,920 INFO L478 AbstractCegarLoop]: Abstraction has 36 states and 37 transitions. [2022-04-07 16:59:27,921 INFO L479 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-07 16:59:27,921 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 37 transitions. [2022-04-07 16:59:27,921 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-07 16:59:27,921 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 16:59:27,921 INFO L499 BasicCegarLoop]: 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-07 16:59:27,922 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-07 16:59:27,922 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 16:59:27,922 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 16:59:27,922 INFO L85 PathProgramCache]: Analyzing trace with hash 1081273981, now seen corresponding path program 1 times [2022-04-07 16:59:27,922 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 16:59:27,922 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1442552821] [2022-04-07 16:59:27,922 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 16:59:27,923 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 16:59:27,946 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 16:59:28,054 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 16:59:28,056 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 16:59:28,062 INFO L290 TraceCheckUtils]: 0: Hoare triple {375#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [99] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {351#true} is VALID [2022-04-07 16:59:28,062 INFO L290 TraceCheckUtils]: 1: Hoare triple {351#true} [102] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,062 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {351#true} {351#true} [133] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,062 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 15 [2022-04-07 16:59:28,064 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 16:59:28,075 INFO L290 TraceCheckUtils]: 0: Hoare triple {351#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {351#true} is VALID [2022-04-07 16:59:28,076 INFO L290 TraceCheckUtils]: 1: Hoare triple {351#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,076 INFO L290 TraceCheckUtils]: 2: Hoare triple {351#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,077 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {351#true} {357#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {357#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:28,077 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 20 [2022-04-07 16:59:28,079 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 16:59:28,085 INFO L290 TraceCheckUtils]: 0: Hoare triple {351#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {351#true} is VALID [2022-04-07 16:59:28,085 INFO L290 TraceCheckUtils]: 1: Hoare triple {351#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,085 INFO L290 TraceCheckUtils]: 2: Hoare triple {351#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,086 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {351#true} {357#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [136] __VERIFIER_assertEXIT-->L51: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {357#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:28,086 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2022-04-07 16:59:28,090 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 16:59:28,093 INFO L290 TraceCheckUtils]: 0: Hoare triple {351#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {351#true} is VALID [2022-04-07 16:59:28,093 INFO L290 TraceCheckUtils]: 1: Hoare triple {351#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,094 INFO L290 TraceCheckUtils]: 2: Hoare triple {351#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,094 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {351#true} {368#(<= (+ main_~p~0 2) main_~bufsize_0~0)} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {368#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:28,095 INFO L272 TraceCheckUtils]: 0: Hoare triple {351#true} [97] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {375#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-07 16:59:28,095 INFO L290 TraceCheckUtils]: 1: Hoare triple {375#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [99] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {351#true} is VALID [2022-04-07 16:59:28,095 INFO L290 TraceCheckUtils]: 2: Hoare triple {351#true} [102] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,095 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {351#true} {351#true} [133] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,095 INFO L272 TraceCheckUtils]: 4: Hoare triple {351#true} [98] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,095 INFO L290 TraceCheckUtils]: 5: Hoare triple {351#true} [101] mainENTRY-->L35: Formula: (and (= |v_main_#t~nondet3_2| v_main_~ielen~0_1) (= v_main_~leader_len~0_1 |v_main_#t~nondet1_2|) (<= |v_main_#t~nondet3_2| 2147483647) (= v_main_~bufsize~0_1 |v_main_#t~nondet2_2|) (<= |v_main_#t~nondet1_2| 2147483647) (<= 0 (+ |v_main_#t~nondet2_2| 2147483648)) (<= |v_main_#t~nondet2_2| 2147483647) (<= 0 (+ |v_main_#t~nondet1_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet3_2| 2147483648))) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet3=|v_main_#t~nondet3_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~ielen~0=v_main_~ielen~0_1, main_~bufsize_0~0=v_main_~bufsize_0~0_2, main_~i~0=v_main_~i~0_3, main_~bufsize~0=v_main_~bufsize~0_1, main_~leader_len~0=v_main_~leader_len~0_1, main_~p~0=v_main_~p~0_5} AuxVars[] AssignedVars[main_~ielen~0, main_#t~nondet1, main_#t~nondet3, main_#t~nondet2, main_~bufsize_0~0, main_~i~0, main_~bufsize~0, main_~leader_len~0, main_~p~0] {351#true} is VALID [2022-04-07 16:59:28,096 INFO L290 TraceCheckUtils]: 6: Hoare triple {351#true} [104] L35-->L36: Formula: (< v_main_~leader_len~0_5 1000000) InVars {main_~leader_len~0=v_main_~leader_len~0_5} OutVars{main_~leader_len~0=v_main_~leader_len~0_5} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,096 INFO L290 TraceCheckUtils]: 7: Hoare triple {351#true} [107] L36-->L37: Formula: (< v_main_~bufsize~0_5 1000000) InVars {main_~bufsize~0=v_main_~bufsize~0_5} OutVars{main_~bufsize~0=v_main_~bufsize~0_5} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,096 INFO L290 TraceCheckUtils]: 8: Hoare triple {351#true} [109] L37-->L38: Formula: (< v_main_~ielen~0_5 1000000) InVars {main_~ielen~0=v_main_~ielen~0_5} OutVars{main_~ielen~0=v_main_~ielen~0_5} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,096 INFO L290 TraceCheckUtils]: 9: Hoare triple {351#true} [110] L38-->L38-1: Formula: (< 0 v_main_~leader_len~0_6) InVars {main_~leader_len~0=v_main_~leader_len~0_6} OutVars{main_~leader_len~0=v_main_~leader_len~0_6} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,097 INFO L290 TraceCheckUtils]: 10: Hoare triple {351#true} [112] L38-1-->L39: Formula: (< 0 v_main_~bufsize~0_6) InVars {main_~bufsize~0=v_main_~bufsize~0_6} OutVars{main_~bufsize~0=v_main_~bufsize~0_6} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,097 INFO L290 TraceCheckUtils]: 11: Hoare triple {351#true} [114] L39-->L40: Formula: (< 0 v_main_~ielen~0_6) InVars {main_~ielen~0=v_main_~ielen~0_6} OutVars{main_~ielen~0=v_main_~ielen~0_6} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,097 INFO L290 TraceCheckUtils]: 12: Hoare triple {351#true} [117] L40-->L47: Formula: (and (= v_main_~p~0_6 v_main_~leader_len~0_9) (= v_main_~bufsize_0~0_3 v_main_~bufsize~0_10) (not (< v_main_~bufsize~0_10 v_main_~leader_len~0_9)) (= v_main_~bufsize~0_9 (+ (* (- 1) v_main_~leader_len~0_9) v_main_~bufsize~0_10))) InVars {main_~bufsize~0=v_main_~bufsize~0_10, main_~leader_len~0=v_main_~leader_len~0_9} OutVars{main_~bufsize_0~0=v_main_~bufsize_0~0_3, main_~bufsize~0=v_main_~bufsize~0_9, main_~p~0=v_main_~p~0_6, main_~leader_len~0=v_main_~leader_len~0_9} AuxVars[] AssignedVars[main_~bufsize_0~0, main_~bufsize~0, main_~p~0] {356#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:28,098 INFO L290 TraceCheckUtils]: 13: Hoare triple {356#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} [119] L47-->L49-3: Formula: (and (not (< v_main_~bufsize~0_12 (* 2 v_main_~ielen~0_9))) (= v_main_~i~0_4 0)) InVars {main_~ielen~0=v_main_~ielen~0_9, main_~bufsize~0=v_main_~bufsize~0_12} OutVars{main_~i~0=v_main_~i~0_4, main_~bufsize~0=v_main_~bufsize~0_12, main_~ielen~0=v_main_~ielen~0_9} AuxVars[] AssignedVars[main_~i~0] {357#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:28,098 INFO L290 TraceCheckUtils]: 14: Hoare triple {357#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [122] L49-3-->L50: Formula: (and (< v_main_~i~0_6 v_main_~ielen~0_11) (< 2 v_main_~bufsize~0_14)) InVars {main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} OutVars{main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} AuxVars[] AssignedVars[] {357#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:28,099 INFO L272 TraceCheckUtils]: 15: Hoare triple {357#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [123] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {351#true} is VALID [2022-04-07 16:59:28,099 INFO L290 TraceCheckUtils]: 16: Hoare triple {351#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {351#true} is VALID [2022-04-07 16:59:28,099 INFO L290 TraceCheckUtils]: 17: Hoare triple {351#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,099 INFO L290 TraceCheckUtils]: 18: Hoare triple {351#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,101 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {351#true} {357#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {357#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:28,101 INFO L272 TraceCheckUtils]: 20: Hoare triple {357#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [124] L50-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {351#true} is VALID [2022-04-07 16:59:28,101 INFO L290 TraceCheckUtils]: 21: Hoare triple {351#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {351#true} is VALID [2022-04-07 16:59:28,101 INFO L290 TraceCheckUtils]: 22: Hoare triple {351#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,102 INFO L290 TraceCheckUtils]: 23: Hoare triple {351#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,103 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {351#true} {357#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [136] __VERIFIER_assertEXIT-->L51: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {357#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:28,103 INFO L290 TraceCheckUtils]: 25: Hoare triple {357#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [126] L51-->L49-2: Formula: (= v_main_~p~0_3 (+ v_main_~p~0_4 2)) InVars {main_~p~0=v_main_~p~0_4} OutVars{main_~p~0=v_main_~p~0_3} AuxVars[] AssignedVars[main_~p~0] {366#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (= main_~i~0 0))} is VALID [2022-04-07 16:59:28,104 INFO L290 TraceCheckUtils]: 26: Hoare triple {366#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (= main_~i~0 0))} [129] L49-2-->L49-3: Formula: (= v_main_~i~0_1 (+ v_main_~i~0_2 1)) InVars {main_~i~0=v_main_~i~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, main_~i~0=v_main_~i~0_1} AuxVars[] AssignedVars[main_#t~post4, main_~i~0] {367#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-07 16:59:28,104 INFO L290 TraceCheckUtils]: 27: Hoare triple {367#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} [122] L49-3-->L50: Formula: (and (< v_main_~i~0_6 v_main_~ielen~0_11) (< 2 v_main_~bufsize~0_14)) InVars {main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} OutVars{main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} AuxVars[] AssignedVars[] {368#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:28,105 INFO L272 TraceCheckUtils]: 28: Hoare triple {368#(<= (+ main_~p~0 2) main_~bufsize_0~0)} [123] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {351#true} is VALID [2022-04-07 16:59:28,105 INFO L290 TraceCheckUtils]: 29: Hoare triple {351#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {351#true} is VALID [2022-04-07 16:59:28,105 INFO L290 TraceCheckUtils]: 30: Hoare triple {351#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,105 INFO L290 TraceCheckUtils]: 31: Hoare triple {351#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,105 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {351#true} {368#(<= (+ main_~p~0 2) main_~bufsize_0~0)} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {368#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:28,106 INFO L272 TraceCheckUtils]: 33: Hoare triple {368#(<= (+ main_~p~0 2) main_~bufsize_0~0)} [124] L50-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {373#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 16:59:28,108 INFO L290 TraceCheckUtils]: 34: Hoare triple {373#(not (= |__VERIFIER_assert_#in~cond| 0))} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {374#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 16:59:28,108 INFO L290 TraceCheckUtils]: 35: Hoare triple {374#(not (= __VERIFIER_assert_~cond 0))} [127] L18-->L19: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {352#false} is VALID [2022-04-07 16:59:28,108 INFO L290 TraceCheckUtils]: 36: Hoare triple {352#false} [130] L19-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {352#false} is VALID [2022-04-07 16:59:28,109 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-07 16:59:28,109 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 16:59:28,109 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1442552821] [2022-04-07 16:59:28,109 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1442552821] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-07 16:59:28,110 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1367183978] [2022-04-07 16:59:28,110 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 16:59:28,110 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 16:59:28,110 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 16:59:28,111 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 16:59:28,116 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-07 16:59:28,164 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 16:59:28,165 INFO L263 TraceCheckSpWp]: Trace formula consists of 107 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-07 16:59:28,182 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 16:59:28,186 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 16:59:28,568 INFO L272 TraceCheckUtils]: 0: Hoare triple {351#true} [97] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,568 INFO L290 TraceCheckUtils]: 1: Hoare triple {351#true} [99] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {351#true} is VALID [2022-04-07 16:59:28,569 INFO L290 TraceCheckUtils]: 2: Hoare triple {351#true} [102] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,569 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {351#true} {351#true} [133] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,569 INFO L272 TraceCheckUtils]: 4: Hoare triple {351#true} [98] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,570 INFO L290 TraceCheckUtils]: 5: Hoare triple {351#true} [101] mainENTRY-->L35: Formula: (and (= |v_main_#t~nondet3_2| v_main_~ielen~0_1) (= v_main_~leader_len~0_1 |v_main_#t~nondet1_2|) (<= |v_main_#t~nondet3_2| 2147483647) (= v_main_~bufsize~0_1 |v_main_#t~nondet2_2|) (<= |v_main_#t~nondet1_2| 2147483647) (<= 0 (+ |v_main_#t~nondet2_2| 2147483648)) (<= |v_main_#t~nondet2_2| 2147483647) (<= 0 (+ |v_main_#t~nondet1_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet3_2| 2147483648))) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet3=|v_main_#t~nondet3_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~ielen~0=v_main_~ielen~0_1, main_~bufsize_0~0=v_main_~bufsize_0~0_2, main_~i~0=v_main_~i~0_3, main_~bufsize~0=v_main_~bufsize~0_1, main_~leader_len~0=v_main_~leader_len~0_1, main_~p~0=v_main_~p~0_5} AuxVars[] AssignedVars[main_~ielen~0, main_#t~nondet1, main_#t~nondet3, main_#t~nondet2, main_~bufsize_0~0, main_~i~0, main_~bufsize~0, main_~leader_len~0, main_~p~0] {351#true} is VALID [2022-04-07 16:59:28,570 INFO L290 TraceCheckUtils]: 6: Hoare triple {351#true} [104] L35-->L36: Formula: (< v_main_~leader_len~0_5 1000000) InVars {main_~leader_len~0=v_main_~leader_len~0_5} OutVars{main_~leader_len~0=v_main_~leader_len~0_5} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,570 INFO L290 TraceCheckUtils]: 7: Hoare triple {351#true} [107] L36-->L37: Formula: (< v_main_~bufsize~0_5 1000000) InVars {main_~bufsize~0=v_main_~bufsize~0_5} OutVars{main_~bufsize~0=v_main_~bufsize~0_5} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,571 INFO L290 TraceCheckUtils]: 8: Hoare triple {351#true} [109] L37-->L38: Formula: (< v_main_~ielen~0_5 1000000) InVars {main_~ielen~0=v_main_~ielen~0_5} OutVars{main_~ielen~0=v_main_~ielen~0_5} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,572 INFO L290 TraceCheckUtils]: 9: Hoare triple {351#true} [110] L38-->L38-1: Formula: (< 0 v_main_~leader_len~0_6) InVars {main_~leader_len~0=v_main_~leader_len~0_6} OutVars{main_~leader_len~0=v_main_~leader_len~0_6} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,572 INFO L290 TraceCheckUtils]: 10: Hoare triple {351#true} [112] L38-1-->L39: Formula: (< 0 v_main_~bufsize~0_6) InVars {main_~bufsize~0=v_main_~bufsize~0_6} OutVars{main_~bufsize~0=v_main_~bufsize~0_6} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,572 INFO L290 TraceCheckUtils]: 11: Hoare triple {351#true} [114] L39-->L40: Formula: (< 0 v_main_~ielen~0_6) InVars {main_~ielen~0=v_main_~ielen~0_6} OutVars{main_~ielen~0=v_main_~ielen~0_6} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,573 INFO L290 TraceCheckUtils]: 12: Hoare triple {351#true} [117] L40-->L47: Formula: (and (= v_main_~p~0_6 v_main_~leader_len~0_9) (= v_main_~bufsize_0~0_3 v_main_~bufsize~0_10) (not (< v_main_~bufsize~0_10 v_main_~leader_len~0_9)) (= v_main_~bufsize~0_9 (+ (* (- 1) v_main_~leader_len~0_9) v_main_~bufsize~0_10))) InVars {main_~bufsize~0=v_main_~bufsize~0_10, main_~leader_len~0=v_main_~leader_len~0_9} OutVars{main_~bufsize_0~0=v_main_~bufsize_0~0_3, main_~bufsize~0=v_main_~bufsize~0_9, main_~p~0=v_main_~p~0_6, main_~leader_len~0=v_main_~leader_len~0_9} AuxVars[] AssignedVars[main_~bufsize_0~0, main_~bufsize~0, main_~p~0] {356#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:28,574 INFO L290 TraceCheckUtils]: 13: Hoare triple {356#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} [119] L47-->L49-3: Formula: (and (not (< v_main_~bufsize~0_12 (* 2 v_main_~ielen~0_9))) (= v_main_~i~0_4 0)) InVars {main_~ielen~0=v_main_~ielen~0_9, main_~bufsize~0=v_main_~bufsize~0_12} OutVars{main_~i~0=v_main_~i~0_4, main_~bufsize~0=v_main_~bufsize~0_12, main_~ielen~0=v_main_~ielen~0_9} AuxVars[] AssignedVars[main_~i~0] {418#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:28,581 INFO L290 TraceCheckUtils]: 14: Hoare triple {418#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [122] L49-3-->L50: Formula: (and (< v_main_~i~0_6 v_main_~ielen~0_11) (< 2 v_main_~bufsize~0_14)) InVars {main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} OutVars{main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} AuxVars[] AssignedVars[] {418#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:28,581 INFO L272 TraceCheckUtils]: 15: Hoare triple {418#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [123] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {351#true} is VALID [2022-04-07 16:59:28,581 INFO L290 TraceCheckUtils]: 16: Hoare triple {351#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {351#true} is VALID [2022-04-07 16:59:28,582 INFO L290 TraceCheckUtils]: 17: Hoare triple {351#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,582 INFO L290 TraceCheckUtils]: 18: Hoare triple {351#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,584 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {351#true} {418#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {418#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:28,585 INFO L272 TraceCheckUtils]: 20: Hoare triple {418#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [124] L50-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {351#true} is VALID [2022-04-07 16:59:28,585 INFO L290 TraceCheckUtils]: 21: Hoare triple {351#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {351#true} is VALID [2022-04-07 16:59:28,585 INFO L290 TraceCheckUtils]: 22: Hoare triple {351#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,585 INFO L290 TraceCheckUtils]: 23: Hoare triple {351#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,586 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {351#true} {418#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [136] __VERIFIER_assertEXIT-->L51: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {418#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:28,586 INFO L290 TraceCheckUtils]: 25: Hoare triple {418#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [126] L51-->L49-2: Formula: (= v_main_~p~0_3 (+ v_main_~p~0_4 2)) InVars {main_~p~0=v_main_~p~0_4} OutVars{main_~p~0=v_main_~p~0_3} AuxVars[] AssignedVars[main_~p~0] {455#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 0 main_~i~0))} is VALID [2022-04-07 16:59:28,587 INFO L290 TraceCheckUtils]: 26: Hoare triple {455#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 0 main_~i~0))} [129] L49-2-->L49-3: Formula: (= v_main_~i~0_1 (+ v_main_~i~0_2 1)) InVars {main_~i~0=v_main_~i~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, main_~i~0=v_main_~i~0_1} AuxVars[] AssignedVars[main_#t~post4, main_~i~0] {459#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} is VALID [2022-04-07 16:59:28,587 INFO L290 TraceCheckUtils]: 27: Hoare triple {459#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} [122] L49-3-->L50: Formula: (and (< v_main_~i~0_6 v_main_~ielen~0_11) (< 2 v_main_~bufsize~0_14)) InVars {main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} OutVars{main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} AuxVars[] AssignedVars[] {368#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:28,587 INFO L272 TraceCheckUtils]: 28: Hoare triple {368#(<= (+ main_~p~0 2) main_~bufsize_0~0)} [123] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {351#true} is VALID [2022-04-07 16:59:28,588 INFO L290 TraceCheckUtils]: 29: Hoare triple {351#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {351#true} is VALID [2022-04-07 16:59:28,588 INFO L290 TraceCheckUtils]: 30: Hoare triple {351#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,588 INFO L290 TraceCheckUtils]: 31: Hoare triple {351#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:28,588 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {351#true} {368#(<= (+ main_~p~0 2) main_~bufsize_0~0)} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {368#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:28,589 INFO L272 TraceCheckUtils]: 33: Hoare triple {368#(<= (+ main_~p~0 2) main_~bufsize_0~0)} [124] L50-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {481#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 16:59:28,589 INFO L290 TraceCheckUtils]: 34: Hoare triple {481#(<= 1 |__VERIFIER_assert_#in~cond|)} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {485#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 16:59:28,589 INFO L290 TraceCheckUtils]: 35: Hoare triple {485#(<= 1 __VERIFIER_assert_~cond)} [127] L18-->L19: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {352#false} is VALID [2022-04-07 16:59:28,590 INFO L290 TraceCheckUtils]: 36: Hoare triple {352#false} [130] L19-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {352#false} is VALID [2022-04-07 16:59:28,590 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-07 16:59:28,590 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 16:59:29,032 INFO L290 TraceCheckUtils]: 36: Hoare triple {352#false} [130] L19-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {352#false} is VALID [2022-04-07 16:59:29,032 INFO L290 TraceCheckUtils]: 35: Hoare triple {485#(<= 1 __VERIFIER_assert_~cond)} [127] L18-->L19: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {352#false} is VALID [2022-04-07 16:59:29,033 INFO L290 TraceCheckUtils]: 34: Hoare triple {481#(<= 1 |__VERIFIER_assert_#in~cond|)} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {485#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 16:59:29,033 INFO L272 TraceCheckUtils]: 33: Hoare triple {368#(<= (+ main_~p~0 2) main_~bufsize_0~0)} [124] L50-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {481#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 16:59:29,034 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {351#true} {368#(<= (+ main_~p~0 2) main_~bufsize_0~0)} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {368#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:29,034 INFO L290 TraceCheckUtils]: 31: Hoare triple {351#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:29,034 INFO L290 TraceCheckUtils]: 30: Hoare triple {351#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:29,034 INFO L290 TraceCheckUtils]: 29: Hoare triple {351#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {351#true} is VALID [2022-04-07 16:59:29,034 INFO L272 TraceCheckUtils]: 28: Hoare triple {368#(<= (+ main_~p~0 2) main_~bufsize_0~0)} [123] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {351#true} is VALID [2022-04-07 16:59:29,035 INFO L290 TraceCheckUtils]: 27: Hoare triple {519#(or (not (< main_~i~0 main_~ielen~0)) (<= (+ main_~p~0 2) main_~bufsize_0~0))} [122] L49-3-->L50: Formula: (and (< v_main_~i~0_6 v_main_~ielen~0_11) (< 2 v_main_~bufsize~0_14)) InVars {main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} OutVars{main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} AuxVars[] AssignedVars[] {368#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:29,035 INFO L290 TraceCheckUtils]: 26: Hoare triple {523#(or (<= (+ main_~p~0 2) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} [129] L49-2-->L49-3: Formula: (= v_main_~i~0_1 (+ v_main_~i~0_2 1)) InVars {main_~i~0=v_main_~i~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, main_~i~0=v_main_~i~0_1} AuxVars[] AssignedVars[main_#t~post4, main_~i~0] {519#(or (not (< main_~i~0 main_~ielen~0)) (<= (+ main_~p~0 2) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:29,036 INFO L290 TraceCheckUtils]: 25: Hoare triple {527#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} [126] L51-->L49-2: Formula: (= v_main_~p~0_3 (+ v_main_~p~0_4 2)) InVars {main_~p~0=v_main_~p~0_4} OutVars{main_~p~0=v_main_~p~0_3} AuxVars[] AssignedVars[main_~p~0] {523#(or (<= (+ main_~p~0 2) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} is VALID [2022-04-07 16:59:29,036 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {351#true} {527#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} [136] __VERIFIER_assertEXIT-->L51: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {527#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} is VALID [2022-04-07 16:59:29,036 INFO L290 TraceCheckUtils]: 23: Hoare triple {351#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:29,037 INFO L290 TraceCheckUtils]: 22: Hoare triple {351#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:29,037 INFO L290 TraceCheckUtils]: 21: Hoare triple {351#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {351#true} is VALID [2022-04-07 16:59:29,037 INFO L272 TraceCheckUtils]: 20: Hoare triple {527#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} [124] L50-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {351#true} is VALID [2022-04-07 16:59:29,039 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {351#true} {527#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {527#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} is VALID [2022-04-07 16:59:29,039 INFO L290 TraceCheckUtils]: 18: Hoare triple {351#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:29,039 INFO L290 TraceCheckUtils]: 17: Hoare triple {351#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:29,039 INFO L290 TraceCheckUtils]: 16: Hoare triple {351#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {351#true} is VALID [2022-04-07 16:59:29,039 INFO L272 TraceCheckUtils]: 15: Hoare triple {527#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} [123] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {351#true} is VALID [2022-04-07 16:59:29,041 INFO L290 TraceCheckUtils]: 14: Hoare triple {527#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} [122] L49-3-->L50: Formula: (and (< v_main_~i~0_6 v_main_~ielen~0_11) (< 2 v_main_~bufsize~0_14)) InVars {main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} OutVars{main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} AuxVars[] AssignedVars[] {527#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} is VALID [2022-04-07 16:59:29,042 INFO L290 TraceCheckUtils]: 13: Hoare triple {564#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= (div (+ (- 1) (* (- 1) main_~bufsize~0)) (- 2)) 2))} [119] L47-->L49-3: Formula: (and (not (< v_main_~bufsize~0_12 (* 2 v_main_~ielen~0_9))) (= v_main_~i~0_4 0)) InVars {main_~ielen~0=v_main_~ielen~0_9, main_~bufsize~0=v_main_~bufsize~0_12} OutVars{main_~i~0=v_main_~i~0_4, main_~bufsize~0=v_main_~bufsize~0_12, main_~ielen~0=v_main_~ielen~0_9} AuxVars[] AssignedVars[main_~i~0] {527#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} is VALID [2022-04-07 16:59:29,042 INFO L290 TraceCheckUtils]: 12: Hoare triple {351#true} [117] L40-->L47: Formula: (and (= v_main_~p~0_6 v_main_~leader_len~0_9) (= v_main_~bufsize_0~0_3 v_main_~bufsize~0_10) (not (< v_main_~bufsize~0_10 v_main_~leader_len~0_9)) (= v_main_~bufsize~0_9 (+ (* (- 1) v_main_~leader_len~0_9) v_main_~bufsize~0_10))) InVars {main_~bufsize~0=v_main_~bufsize~0_10, main_~leader_len~0=v_main_~leader_len~0_9} OutVars{main_~bufsize_0~0=v_main_~bufsize_0~0_3, main_~bufsize~0=v_main_~bufsize~0_9, main_~p~0=v_main_~p~0_6, main_~leader_len~0=v_main_~leader_len~0_9} AuxVars[] AssignedVars[main_~bufsize_0~0, main_~bufsize~0, main_~p~0] {564#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= (div (+ (- 1) (* (- 1) main_~bufsize~0)) (- 2)) 2))} is VALID [2022-04-07 16:59:29,042 INFO L290 TraceCheckUtils]: 11: Hoare triple {351#true} [114] L39-->L40: Formula: (< 0 v_main_~ielen~0_6) InVars {main_~ielen~0=v_main_~ielen~0_6} OutVars{main_~ielen~0=v_main_~ielen~0_6} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:29,042 INFO L290 TraceCheckUtils]: 10: Hoare triple {351#true} [112] L38-1-->L39: Formula: (< 0 v_main_~bufsize~0_6) InVars {main_~bufsize~0=v_main_~bufsize~0_6} OutVars{main_~bufsize~0=v_main_~bufsize~0_6} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:29,043 INFO L290 TraceCheckUtils]: 9: Hoare triple {351#true} [110] L38-->L38-1: Formula: (< 0 v_main_~leader_len~0_6) InVars {main_~leader_len~0=v_main_~leader_len~0_6} OutVars{main_~leader_len~0=v_main_~leader_len~0_6} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:29,043 INFO L290 TraceCheckUtils]: 8: Hoare triple {351#true} [109] L37-->L38: Formula: (< v_main_~ielen~0_5 1000000) InVars {main_~ielen~0=v_main_~ielen~0_5} OutVars{main_~ielen~0=v_main_~ielen~0_5} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:29,043 INFO L290 TraceCheckUtils]: 7: Hoare triple {351#true} [107] L36-->L37: Formula: (< v_main_~bufsize~0_5 1000000) InVars {main_~bufsize~0=v_main_~bufsize~0_5} OutVars{main_~bufsize~0=v_main_~bufsize~0_5} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:29,043 INFO L290 TraceCheckUtils]: 6: Hoare triple {351#true} [104] L35-->L36: Formula: (< v_main_~leader_len~0_5 1000000) InVars {main_~leader_len~0=v_main_~leader_len~0_5} OutVars{main_~leader_len~0=v_main_~leader_len~0_5} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:29,043 INFO L290 TraceCheckUtils]: 5: Hoare triple {351#true} [101] mainENTRY-->L35: Formula: (and (= |v_main_#t~nondet3_2| v_main_~ielen~0_1) (= v_main_~leader_len~0_1 |v_main_#t~nondet1_2|) (<= |v_main_#t~nondet3_2| 2147483647) (= v_main_~bufsize~0_1 |v_main_#t~nondet2_2|) (<= |v_main_#t~nondet1_2| 2147483647) (<= 0 (+ |v_main_#t~nondet2_2| 2147483648)) (<= |v_main_#t~nondet2_2| 2147483647) (<= 0 (+ |v_main_#t~nondet1_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet3_2| 2147483648))) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet3=|v_main_#t~nondet3_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~ielen~0=v_main_~ielen~0_1, main_~bufsize_0~0=v_main_~bufsize_0~0_2, main_~i~0=v_main_~i~0_3, main_~bufsize~0=v_main_~bufsize~0_1, main_~leader_len~0=v_main_~leader_len~0_1, main_~p~0=v_main_~p~0_5} AuxVars[] AssignedVars[main_~ielen~0, main_#t~nondet1, main_#t~nondet3, main_#t~nondet2, main_~bufsize_0~0, main_~i~0, main_~bufsize~0, main_~leader_len~0, main_~p~0] {351#true} is VALID [2022-04-07 16:59:29,043 INFO L272 TraceCheckUtils]: 4: Hoare triple {351#true} [98] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:29,043 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {351#true} {351#true} [133] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:29,043 INFO L290 TraceCheckUtils]: 2: Hoare triple {351#true} [102] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:29,043 INFO L290 TraceCheckUtils]: 1: Hoare triple {351#true} [99] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {351#true} is VALID [2022-04-07 16:59:29,043 INFO L272 TraceCheckUtils]: 0: Hoare triple {351#true} [97] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {351#true} is VALID [2022-04-07 16:59:29,044 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-07 16:59:29,044 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1367183978] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 16:59:29,044 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-07 16:59:29,044 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9, 9] total 19 [2022-04-07 16:59:29,044 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [84712451] [2022-04-07 16:59:29,044 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-07 16:59:29,045 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-07 16:59:29,045 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 16:59:29,046 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-07 16:59:29,080 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-07 16:59:29,080 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-07 16:59:29,080 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 16:59:29,081 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-07 16:59:29,081 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=65, Invalid=277, Unknown=0, NotChecked=0, Total=342 [2022-04-07 16:59:29,081 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-07 16:59:29,753 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 16:59:29,754 INFO L93 Difference]: Finished difference Result 51 states and 55 transitions. [2022-04-07 16:59:29,754 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-07 16:59:29,754 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-07 16:59:29,754 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 16:59:29,754 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-07 16:59:29,756 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 50 transitions. [2022-04-07 16:59:29,757 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-07 16:59:29,758 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 50 transitions. [2022-04-07 16:59:29,758 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 50 transitions. [2022-04-07 16:59:29,796 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 16:59:29,797 INFO L225 Difference]: With dead ends: 51 [2022-04-07 16:59:29,797 INFO L226 Difference]: Without dead ends: 51 [2022-04-07 16:59:29,798 INFO L912 BasicCegarLoop]: 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-07 16:59:29,798 INFO L913 BasicCegarLoop]: 23 mSDtfsCounter, 41 mSDsluCounter, 32 mSDsCounter, 0 mSdLazyCounter, 225 mSolverCounterSat, 47 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 43 SdHoareTripleChecker+Valid, 55 SdHoareTripleChecker+Invalid, 272 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 47 IncrementalHoareTripleChecker+Valid, 225 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-07 16:59:29,799 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [43 Valid, 55 Invalid, 272 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [47 Valid, 225 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-07 16:59:29,799 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2022-04-07 16:59:29,816 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 50. [2022-04-07 16:59:29,816 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 16:59:29,816 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-07 16:59:29,816 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-07 16:59:29,817 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-07 16:59:29,818 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 16:59:29,818 INFO L93 Difference]: Finished difference Result 51 states and 55 transitions. [2022-04-07 16:59:29,819 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 55 transitions. [2022-04-07 16:59:29,819 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 16:59:29,819 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 16:59:29,819 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-07 16:59:29,819 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-07 16:59:29,821 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 16:59:29,821 INFO L93 Difference]: Finished difference Result 51 states and 55 transitions. [2022-04-07 16:59:29,821 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 55 transitions. [2022-04-07 16:59:29,821 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 16:59:29,821 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 16:59:29,822 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 16:59:29,822 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 16:59:29,822 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-07 16:59:29,823 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 54 transitions. [2022-04-07 16:59:29,823 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 54 transitions. Word has length 37 [2022-04-07 16:59:29,823 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 16:59:29,823 INFO L478 AbstractCegarLoop]: Abstraction has 50 states and 54 transitions. [2022-04-07 16:59:29,824 INFO L479 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-07 16:59:29,824 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 54 transitions. [2022-04-07 16:59:29,825 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-07 16:59:29,825 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 16:59:29,825 INFO L499 BasicCegarLoop]: 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-07 16:59:29,841 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-07 16:59:30,030 WARN L460 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-07 16:59:30,031 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 16:59:30,031 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 16:59:30,031 INFO L85 PathProgramCache]: Analyzing trace with hash 59588189, now seen corresponding path program 2 times [2022-04-07 16:59:30,032 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 16:59:30,032 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1295877671] [2022-04-07 16:59:30,032 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 16:59:30,032 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 16:59:30,068 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 16:59:30,159 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 16:59:30,160 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 16:59:30,168 INFO L290 TraceCheckUtils]: 0: Hoare triple {875#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [99] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {834#true} is VALID [2022-04-07 16:59:30,168 INFO L290 TraceCheckUtils]: 1: Hoare triple {834#true} [102] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,168 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {834#true} {834#true} [133] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,168 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 15 [2022-04-07 16:59:30,183 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 16:59:30,192 INFO L290 TraceCheckUtils]: 0: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:30,192 INFO L290 TraceCheckUtils]: 1: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,192 INFO L290 TraceCheckUtils]: 2: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,193 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {834#true} {840#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {840#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:30,193 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 20 [2022-04-07 16:59:30,194 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 16:59:30,197 INFO L290 TraceCheckUtils]: 0: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:30,197 INFO L290 TraceCheckUtils]: 1: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,197 INFO L290 TraceCheckUtils]: 2: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,198 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {834#true} {840#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [136] __VERIFIER_assertEXIT-->L51: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {840#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:30,198 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2022-04-07 16:59:30,199 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 16:59:30,201 INFO L290 TraceCheckUtils]: 0: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:30,201 INFO L290 TraceCheckUtils]: 1: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,202 INFO L290 TraceCheckUtils]: 2: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,202 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {834#true} {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-07 16:59:30,202 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 33 [2022-04-07 16:59:30,203 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 16:59:30,206 INFO L290 TraceCheckUtils]: 0: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:30,206 INFO L290 TraceCheckUtils]: 1: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,206 INFO L290 TraceCheckUtils]: 2: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,206 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {834#true} {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} [136] __VERIFIER_assertEXIT-->L51: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-07 16:59:30,206 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 41 [2022-04-07 16:59:30,207 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 16:59:30,209 INFO L290 TraceCheckUtils]: 0: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:30,210 INFO L290 TraceCheckUtils]: 1: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,210 INFO L290 TraceCheckUtils]: 2: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,210 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {834#true} {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-07 16:59:30,210 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 46 [2022-04-07 16:59:30,219 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 16:59:30,225 INFO L290 TraceCheckUtils]: 0: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:30,225 INFO L290 TraceCheckUtils]: 1: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,225 INFO L290 TraceCheckUtils]: 2: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,225 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {834#true} {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} [136] __VERIFIER_assertEXIT-->L51: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-07 16:59:30,225 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 54 [2022-04-07 16:59:30,227 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 16:59:30,233 INFO L290 TraceCheckUtils]: 0: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:30,233 INFO L290 TraceCheckUtils]: 1: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,233 INFO L290 TraceCheckUtils]: 2: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,234 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {834#true} {868#(<= (+ main_~p~0 2) main_~bufsize_0~0)} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {868#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:30,235 INFO L272 TraceCheckUtils]: 0: Hoare triple {834#true} [97] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {875#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-07 16:59:30,235 INFO L290 TraceCheckUtils]: 1: Hoare triple {875#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [99] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {834#true} is VALID [2022-04-07 16:59:30,235 INFO L290 TraceCheckUtils]: 2: Hoare triple {834#true} [102] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,235 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {834#true} {834#true} [133] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,235 INFO L272 TraceCheckUtils]: 4: Hoare triple {834#true} [98] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,236 INFO L290 TraceCheckUtils]: 5: Hoare triple {834#true} [101] mainENTRY-->L35: Formula: (and (= |v_main_#t~nondet3_2| v_main_~ielen~0_1) (= v_main_~leader_len~0_1 |v_main_#t~nondet1_2|) (<= |v_main_#t~nondet3_2| 2147483647) (= v_main_~bufsize~0_1 |v_main_#t~nondet2_2|) (<= |v_main_#t~nondet1_2| 2147483647) (<= 0 (+ |v_main_#t~nondet2_2| 2147483648)) (<= |v_main_#t~nondet2_2| 2147483647) (<= 0 (+ |v_main_#t~nondet1_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet3_2| 2147483648))) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet3=|v_main_#t~nondet3_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~ielen~0=v_main_~ielen~0_1, main_~bufsize_0~0=v_main_~bufsize_0~0_2, main_~i~0=v_main_~i~0_3, main_~bufsize~0=v_main_~bufsize~0_1, main_~leader_len~0=v_main_~leader_len~0_1, main_~p~0=v_main_~p~0_5} AuxVars[] AssignedVars[main_~ielen~0, main_#t~nondet1, main_#t~nondet3, main_#t~nondet2, main_~bufsize_0~0, main_~i~0, main_~bufsize~0, main_~leader_len~0, main_~p~0] {834#true} is VALID [2022-04-07 16:59:30,236 INFO L290 TraceCheckUtils]: 6: Hoare triple {834#true} [104] L35-->L36: Formula: (< v_main_~leader_len~0_5 1000000) InVars {main_~leader_len~0=v_main_~leader_len~0_5} OutVars{main_~leader_len~0=v_main_~leader_len~0_5} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,236 INFO L290 TraceCheckUtils]: 7: Hoare triple {834#true} [107] L36-->L37: Formula: (< v_main_~bufsize~0_5 1000000) InVars {main_~bufsize~0=v_main_~bufsize~0_5} OutVars{main_~bufsize~0=v_main_~bufsize~0_5} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,236 INFO L290 TraceCheckUtils]: 8: Hoare triple {834#true} [109] L37-->L38: Formula: (< v_main_~ielen~0_5 1000000) InVars {main_~ielen~0=v_main_~ielen~0_5} OutVars{main_~ielen~0=v_main_~ielen~0_5} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,236 INFO L290 TraceCheckUtils]: 9: Hoare triple {834#true} [110] L38-->L38-1: Formula: (< 0 v_main_~leader_len~0_6) InVars {main_~leader_len~0=v_main_~leader_len~0_6} OutVars{main_~leader_len~0=v_main_~leader_len~0_6} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,236 INFO L290 TraceCheckUtils]: 10: Hoare triple {834#true} [112] L38-1-->L39: Formula: (< 0 v_main_~bufsize~0_6) InVars {main_~bufsize~0=v_main_~bufsize~0_6} OutVars{main_~bufsize~0=v_main_~bufsize~0_6} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,236 INFO L290 TraceCheckUtils]: 11: Hoare triple {834#true} [114] L39-->L40: Formula: (< 0 v_main_~ielen~0_6) InVars {main_~ielen~0=v_main_~ielen~0_6} OutVars{main_~ielen~0=v_main_~ielen~0_6} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,236 INFO L290 TraceCheckUtils]: 12: Hoare triple {834#true} [117] L40-->L47: Formula: (and (= v_main_~p~0_6 v_main_~leader_len~0_9) (= v_main_~bufsize_0~0_3 v_main_~bufsize~0_10) (not (< v_main_~bufsize~0_10 v_main_~leader_len~0_9)) (= v_main_~bufsize~0_9 (+ (* (- 1) v_main_~leader_len~0_9) v_main_~bufsize~0_10))) InVars {main_~bufsize~0=v_main_~bufsize~0_10, main_~leader_len~0=v_main_~leader_len~0_9} OutVars{main_~bufsize_0~0=v_main_~bufsize_0~0_3, main_~bufsize~0=v_main_~bufsize~0_9, main_~p~0=v_main_~p~0_6, main_~leader_len~0=v_main_~leader_len~0_9} AuxVars[] AssignedVars[main_~bufsize_0~0, main_~bufsize~0, main_~p~0] {839#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:30,237 INFO L290 TraceCheckUtils]: 13: Hoare triple {839#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} [119] L47-->L49-3: Formula: (and (not (< v_main_~bufsize~0_12 (* 2 v_main_~ielen~0_9))) (= v_main_~i~0_4 0)) InVars {main_~ielen~0=v_main_~ielen~0_9, main_~bufsize~0=v_main_~bufsize~0_12} OutVars{main_~i~0=v_main_~i~0_4, main_~bufsize~0=v_main_~bufsize~0_12, main_~ielen~0=v_main_~ielen~0_9} AuxVars[] AssignedVars[main_~i~0] {840#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:30,237 INFO L290 TraceCheckUtils]: 14: Hoare triple {840#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [122] L49-3-->L50: Formula: (and (< v_main_~i~0_6 v_main_~ielen~0_11) (< 2 v_main_~bufsize~0_14)) InVars {main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} OutVars{main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} AuxVars[] AssignedVars[] {840#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:30,237 INFO L272 TraceCheckUtils]: 15: Hoare triple {840#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [123] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {834#true} is VALID [2022-04-07 16:59:30,237 INFO L290 TraceCheckUtils]: 16: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:30,238 INFO L290 TraceCheckUtils]: 17: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,238 INFO L290 TraceCheckUtils]: 18: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,239 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {834#true} {840#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {840#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:30,239 INFO L272 TraceCheckUtils]: 20: Hoare triple {840#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [124] L50-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {834#true} is VALID [2022-04-07 16:59:30,239 INFO L290 TraceCheckUtils]: 21: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:30,239 INFO L290 TraceCheckUtils]: 22: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,239 INFO L290 TraceCheckUtils]: 23: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,240 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {834#true} {840#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [136] __VERIFIER_assertEXIT-->L51: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {840#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:30,241 INFO L290 TraceCheckUtils]: 25: Hoare triple {840#(and (= main_~i~0 0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [126] L51-->L49-2: Formula: (= v_main_~p~0_3 (+ v_main_~p~0_4 2)) InVars {main_~p~0=v_main_~p~0_4} OutVars{main_~p~0=v_main_~p~0_3} AuxVars[] AssignedVars[main_~p~0] {849#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (= main_~i~0 0))} is VALID [2022-04-07 16:59:30,241 INFO L290 TraceCheckUtils]: 26: Hoare triple {849#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (= main_~i~0 0))} [129] L49-2-->L49-3: Formula: (= v_main_~i~0_1 (+ v_main_~i~0_2 1)) InVars {main_~i~0=v_main_~i~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, main_~i~0=v_main_~i~0_1} AuxVars[] AssignedVars[main_#t~post4, main_~i~0] {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-07 16:59:30,241 INFO L290 TraceCheckUtils]: 27: Hoare triple {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} [122] L49-3-->L50: Formula: (and (< v_main_~i~0_6 v_main_~ielen~0_11) (< 2 v_main_~bufsize~0_14)) InVars {main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} OutVars{main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} AuxVars[] AssignedVars[] {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-07 16:59:30,242 INFO L272 TraceCheckUtils]: 28: Hoare triple {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} [123] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {834#true} is VALID [2022-04-07 16:59:30,242 INFO L290 TraceCheckUtils]: 29: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:30,242 INFO L290 TraceCheckUtils]: 30: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,242 INFO L290 TraceCheckUtils]: 31: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,242 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {834#true} {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-07 16:59:30,242 INFO L272 TraceCheckUtils]: 33: Hoare triple {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} [124] L50-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {834#true} is VALID [2022-04-07 16:59:30,242 INFO L290 TraceCheckUtils]: 34: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:30,242 INFO L290 TraceCheckUtils]: 35: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,243 INFO L290 TraceCheckUtils]: 36: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,247 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {834#true} {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} [136] __VERIFIER_assertEXIT-->L51: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-07 16:59:30,248 INFO L290 TraceCheckUtils]: 38: Hoare triple {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} [126] L51-->L49-2: Formula: (= v_main_~p~0_3 (+ v_main_~p~0_4 2)) InVars {main_~p~0=v_main_~p~0_4} OutVars{main_~p~0=v_main_~p~0_3} AuxVars[] AssignedVars[main_~p~0] {859#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2 (* main_~i~0 2)))} is VALID [2022-04-07 16:59:30,249 INFO L290 TraceCheckUtils]: 39: Hoare triple {859#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2 (* main_~i~0 2)))} [129] L49-2-->L49-3: Formula: (= v_main_~i~0_1 (+ v_main_~i~0_2 1)) InVars {main_~i~0=v_main_~i~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, main_~i~0=v_main_~i~0_1} AuxVars[] AssignedVars[main_#t~post4, main_~i~0] {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-07 16:59:30,249 INFO L290 TraceCheckUtils]: 40: Hoare triple {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} [122] L49-3-->L50: Formula: (and (< v_main_~i~0_6 v_main_~ielen~0_11) (< 2 v_main_~bufsize~0_14)) InVars {main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} OutVars{main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} AuxVars[] AssignedVars[] {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-07 16:59:30,249 INFO L272 TraceCheckUtils]: 41: Hoare triple {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} [123] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {834#true} is VALID [2022-04-07 16:59:30,249 INFO L290 TraceCheckUtils]: 42: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:30,249 INFO L290 TraceCheckUtils]: 43: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,249 INFO L290 TraceCheckUtils]: 44: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,250 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {834#true} {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-07 16:59:30,250 INFO L272 TraceCheckUtils]: 46: Hoare triple {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} [124] L50-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {834#true} is VALID [2022-04-07 16:59:30,250 INFO L290 TraceCheckUtils]: 47: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:30,250 INFO L290 TraceCheckUtils]: 48: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,250 INFO L290 TraceCheckUtils]: 49: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,251 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {834#true} {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} [136] __VERIFIER_assertEXIT-->L51: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-07 16:59:30,252 INFO L290 TraceCheckUtils]: 51: Hoare triple {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} [126] L51-->L49-2: Formula: (= v_main_~p~0_3 (+ v_main_~p~0_4 2)) InVars {main_~p~0=v_main_~p~0_4} OutVars{main_~p~0=v_main_~p~0_3} AuxVars[] AssignedVars[main_~p~0] {859#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2 (* main_~i~0 2)))} is VALID [2022-04-07 16:59:30,252 INFO L290 TraceCheckUtils]: 52: Hoare triple {859#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2 (* main_~i~0 2)))} [129] L49-2-->L49-3: Formula: (= v_main_~i~0_1 (+ v_main_~i~0_2 1)) InVars {main_~i~0=v_main_~i~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, main_~i~0=v_main_~i~0_1} AuxVars[] AssignedVars[main_#t~post4, main_~i~0] {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} is VALID [2022-04-07 16:59:30,252 INFO L290 TraceCheckUtils]: 53: Hoare triple {850#(<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 (* main_~i~0 2)))} [122] L49-3-->L50: Formula: (and (< v_main_~i~0_6 v_main_~ielen~0_11) (< 2 v_main_~bufsize~0_14)) InVars {main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} OutVars{main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} AuxVars[] AssignedVars[] {868#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:30,253 INFO L272 TraceCheckUtils]: 54: Hoare triple {868#(<= (+ main_~p~0 2) main_~bufsize_0~0)} [123] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {834#true} is VALID [2022-04-07 16:59:30,253 INFO L290 TraceCheckUtils]: 55: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:30,253 INFO L290 TraceCheckUtils]: 56: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,253 INFO L290 TraceCheckUtils]: 57: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,253 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {834#true} {868#(<= (+ main_~p~0 2) main_~bufsize_0~0)} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {868#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:30,254 INFO L272 TraceCheckUtils]: 59: Hoare triple {868#(<= (+ main_~p~0 2) main_~bufsize_0~0)} [124] L50-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {873#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 16:59:30,254 INFO L290 TraceCheckUtils]: 60: Hoare triple {873#(not (= |__VERIFIER_assert_#in~cond| 0))} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {874#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 16:59:30,254 INFO L290 TraceCheckUtils]: 61: Hoare triple {874#(not (= __VERIFIER_assert_~cond 0))} [127] L18-->L19: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {835#false} is VALID [2022-04-07 16:59:30,254 INFO L290 TraceCheckUtils]: 62: Hoare triple {835#false} [130] L19-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {835#false} is VALID [2022-04-07 16:59:30,255 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-07 16:59:30,255 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 16:59:30,255 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1295877671] [2022-04-07 16:59:30,255 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1295877671] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-07 16:59:30,255 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1666169323] [2022-04-07 16:59:30,255 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-07 16:59:30,255 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 16:59:30,255 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 16:59:30,257 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 16:59:30,259 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-07 16:59:30,308 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-07 16:59:30,308 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-07 16:59:30,309 INFO L263 TraceCheckSpWp]: Trace formula consists of 155 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-07 16:59:30,335 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 16:59:30,337 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 16:59:30,817 INFO L272 TraceCheckUtils]: 0: Hoare triple {834#true} [97] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,817 INFO L290 TraceCheckUtils]: 1: Hoare triple {834#true} [99] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {834#true} is VALID [2022-04-07 16:59:30,818 INFO L290 TraceCheckUtils]: 2: Hoare triple {834#true} [102] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,818 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {834#true} {834#true} [133] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,818 INFO L272 TraceCheckUtils]: 4: Hoare triple {834#true} [98] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,818 INFO L290 TraceCheckUtils]: 5: Hoare triple {834#true} [101] mainENTRY-->L35: Formula: (and (= |v_main_#t~nondet3_2| v_main_~ielen~0_1) (= v_main_~leader_len~0_1 |v_main_#t~nondet1_2|) (<= |v_main_#t~nondet3_2| 2147483647) (= v_main_~bufsize~0_1 |v_main_#t~nondet2_2|) (<= |v_main_#t~nondet1_2| 2147483647) (<= 0 (+ |v_main_#t~nondet2_2| 2147483648)) (<= |v_main_#t~nondet2_2| 2147483647) (<= 0 (+ |v_main_#t~nondet1_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet3_2| 2147483648))) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet3=|v_main_#t~nondet3_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~ielen~0=v_main_~ielen~0_1, main_~bufsize_0~0=v_main_~bufsize_0~0_2, main_~i~0=v_main_~i~0_3, main_~bufsize~0=v_main_~bufsize~0_1, main_~leader_len~0=v_main_~leader_len~0_1, main_~p~0=v_main_~p~0_5} AuxVars[] AssignedVars[main_~ielen~0, main_#t~nondet1, main_#t~nondet3, main_#t~nondet2, main_~bufsize_0~0, main_~i~0, main_~bufsize~0, main_~leader_len~0, main_~p~0] {834#true} is VALID [2022-04-07 16:59:30,818 INFO L290 TraceCheckUtils]: 6: Hoare triple {834#true} [104] L35-->L36: Formula: (< v_main_~leader_len~0_5 1000000) InVars {main_~leader_len~0=v_main_~leader_len~0_5} OutVars{main_~leader_len~0=v_main_~leader_len~0_5} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,818 INFO L290 TraceCheckUtils]: 7: Hoare triple {834#true} [107] L36-->L37: Formula: (< v_main_~bufsize~0_5 1000000) InVars {main_~bufsize~0=v_main_~bufsize~0_5} OutVars{main_~bufsize~0=v_main_~bufsize~0_5} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,818 INFO L290 TraceCheckUtils]: 8: Hoare triple {834#true} [109] L37-->L38: Formula: (< v_main_~ielen~0_5 1000000) InVars {main_~ielen~0=v_main_~ielen~0_5} OutVars{main_~ielen~0=v_main_~ielen~0_5} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,818 INFO L290 TraceCheckUtils]: 9: Hoare triple {834#true} [110] L38-->L38-1: Formula: (< 0 v_main_~leader_len~0_6) InVars {main_~leader_len~0=v_main_~leader_len~0_6} OutVars{main_~leader_len~0=v_main_~leader_len~0_6} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,818 INFO L290 TraceCheckUtils]: 10: Hoare triple {834#true} [112] L38-1-->L39: Formula: (< 0 v_main_~bufsize~0_6) InVars {main_~bufsize~0=v_main_~bufsize~0_6} OutVars{main_~bufsize~0=v_main_~bufsize~0_6} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,818 INFO L290 TraceCheckUtils]: 11: Hoare triple {834#true} [114] L39-->L40: Formula: (< 0 v_main_~ielen~0_6) InVars {main_~ielen~0=v_main_~ielen~0_6} OutVars{main_~ielen~0=v_main_~ielen~0_6} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,819 INFO L290 TraceCheckUtils]: 12: Hoare triple {834#true} [117] L40-->L47: Formula: (and (= v_main_~p~0_6 v_main_~leader_len~0_9) (= v_main_~bufsize_0~0_3 v_main_~bufsize~0_10) (not (< v_main_~bufsize~0_10 v_main_~leader_len~0_9)) (= v_main_~bufsize~0_9 (+ (* (- 1) v_main_~leader_len~0_9) v_main_~bufsize~0_10))) InVars {main_~bufsize~0=v_main_~bufsize~0_10, main_~leader_len~0=v_main_~leader_len~0_9} OutVars{main_~bufsize_0~0=v_main_~bufsize_0~0_3, main_~bufsize~0=v_main_~bufsize~0_9, main_~p~0=v_main_~p~0_6, main_~leader_len~0=v_main_~leader_len~0_9} AuxVars[] AssignedVars[main_~bufsize_0~0, main_~bufsize~0, main_~p~0] {839#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:30,819 INFO L290 TraceCheckUtils]: 13: Hoare triple {839#(<= (+ main_~bufsize~0 main_~p~0) main_~bufsize_0~0)} [119] L47-->L49-3: Formula: (and (not (< v_main_~bufsize~0_12 (* 2 v_main_~ielen~0_9))) (= v_main_~i~0_4 0)) InVars {main_~ielen~0=v_main_~ielen~0_9, main_~bufsize~0=v_main_~bufsize~0_12} OutVars{main_~i~0=v_main_~i~0_4, main_~bufsize~0=v_main_~bufsize~0_12, main_~ielen~0=v_main_~ielen~0_9} AuxVars[] AssignedVars[main_~i~0] {918#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:30,820 INFO L290 TraceCheckUtils]: 14: Hoare triple {918#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [122] L49-3-->L50: Formula: (and (< v_main_~i~0_6 v_main_~ielen~0_11) (< 2 v_main_~bufsize~0_14)) InVars {main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} OutVars{main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} AuxVars[] AssignedVars[] {918#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:30,820 INFO L272 TraceCheckUtils]: 15: Hoare triple {918#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [123] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {834#true} is VALID [2022-04-07 16:59:30,820 INFO L290 TraceCheckUtils]: 16: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:30,820 INFO L290 TraceCheckUtils]: 17: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,820 INFO L290 TraceCheckUtils]: 18: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,821 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {834#true} {918#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {918#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:30,821 INFO L272 TraceCheckUtils]: 20: Hoare triple {918#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [124] L50-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {834#true} is VALID [2022-04-07 16:59:30,821 INFO L290 TraceCheckUtils]: 21: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:30,821 INFO L290 TraceCheckUtils]: 22: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,821 INFO L290 TraceCheckUtils]: 23: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,822 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {834#true} {918#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [136] __VERIFIER_assertEXIT-->L51: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {918#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:30,822 INFO L290 TraceCheckUtils]: 25: Hoare triple {918#(and (<= 0 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) main_~bufsize_0~0))} [126] L51-->L49-2: Formula: (= v_main_~p~0_3 (+ v_main_~p~0_4 2)) InVars {main_~p~0=v_main_~p~0_4} OutVars{main_~p~0=v_main_~p~0_3} AuxVars[] AssignedVars[main_~p~0] {955#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 0 main_~i~0))} is VALID [2022-04-07 16:59:30,822 INFO L290 TraceCheckUtils]: 26: Hoare triple {955#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 0 main_~i~0))} [129] L49-2-->L49-3: Formula: (= v_main_~i~0_1 (+ v_main_~i~0_2 1)) InVars {main_~i~0=v_main_~i~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, main_~i~0=v_main_~i~0_1} AuxVars[] AssignedVars[main_#t~post4, main_~i~0] {959#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} is VALID [2022-04-07 16:59:30,823 INFO L290 TraceCheckUtils]: 27: Hoare triple {959#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} [122] L49-3-->L50: Formula: (and (< v_main_~i~0_6 v_main_~ielen~0_11) (< 2 v_main_~bufsize~0_14)) InVars {main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} OutVars{main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} AuxVars[] AssignedVars[] {959#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} is VALID [2022-04-07 16:59:30,823 INFO L272 TraceCheckUtils]: 28: Hoare triple {959#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} [123] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {834#true} is VALID [2022-04-07 16:59:30,823 INFO L290 TraceCheckUtils]: 29: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:30,823 INFO L290 TraceCheckUtils]: 30: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,823 INFO L290 TraceCheckUtils]: 31: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,824 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {834#true} {959#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {959#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} is VALID [2022-04-07 16:59:30,824 INFO L272 TraceCheckUtils]: 33: Hoare triple {959#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} [124] L50-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {834#true} is VALID [2022-04-07 16:59:30,824 INFO L290 TraceCheckUtils]: 34: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:30,824 INFO L290 TraceCheckUtils]: 35: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,824 INFO L290 TraceCheckUtils]: 36: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,825 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {834#true} {959#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} [136] __VERIFIER_assertEXIT-->L51: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {959#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} is VALID [2022-04-07 16:59:30,826 INFO L290 TraceCheckUtils]: 38: Hoare triple {959#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 2)) (<= 1 main_~i~0))} [126] L51-->L49-2: Formula: (= v_main_~p~0_3 (+ v_main_~p~0_4 2)) InVars {main_~p~0=v_main_~p~0_4} OutVars{main_~p~0=v_main_~p~0_3} AuxVars[] AssignedVars[main_~p~0] {996#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)) (<= 1 main_~i~0))} is VALID [2022-04-07 16:59:30,826 INFO L290 TraceCheckUtils]: 39: Hoare triple {996#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)) (<= 1 main_~i~0))} [129] L49-2-->L49-3: Formula: (= v_main_~i~0_1 (+ v_main_~i~0_2 1)) InVars {main_~i~0=v_main_~i~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, main_~i~0=v_main_~i~0_1} AuxVars[] AssignedVars[main_#t~post4, main_~i~0] {1000#(and (<= 2 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)))} is VALID [2022-04-07 16:59:30,827 INFO L290 TraceCheckUtils]: 40: Hoare triple {1000#(and (<= 2 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)))} [122] L49-3-->L50: Formula: (and (< v_main_~i~0_6 v_main_~ielen~0_11) (< 2 v_main_~bufsize~0_14)) InVars {main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} OutVars{main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} AuxVars[] AssignedVars[] {1000#(and (<= 2 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)))} is VALID [2022-04-07 16:59:30,827 INFO L272 TraceCheckUtils]: 41: Hoare triple {1000#(and (<= 2 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)))} [123] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {834#true} is VALID [2022-04-07 16:59:30,827 INFO L290 TraceCheckUtils]: 42: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:30,827 INFO L290 TraceCheckUtils]: 43: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,827 INFO L290 TraceCheckUtils]: 44: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,828 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {834#true} {1000#(and (<= 2 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)))} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {1000#(and (<= 2 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)))} is VALID [2022-04-07 16:59:30,828 INFO L272 TraceCheckUtils]: 46: Hoare triple {1000#(and (<= 2 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)))} [124] L50-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {834#true} is VALID [2022-04-07 16:59:30,828 INFO L290 TraceCheckUtils]: 47: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:30,828 INFO L290 TraceCheckUtils]: 48: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,828 INFO L290 TraceCheckUtils]: 49: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,829 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {834#true} {1000#(and (<= 2 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)))} [136] __VERIFIER_assertEXIT-->L51: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {1000#(and (<= 2 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)))} is VALID [2022-04-07 16:59:30,829 INFO L290 TraceCheckUtils]: 51: Hoare triple {1000#(and (<= 2 main_~i~0) (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 4)))} [126] L51-->L49-2: Formula: (= v_main_~p~0_3 (+ v_main_~p~0_4 2)) InVars {main_~p~0=v_main_~p~0_4} OutVars{main_~p~0=v_main_~p~0_3} AuxVars[] AssignedVars[main_~p~0] {1037#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 6)) (<= 2 main_~i~0))} is VALID [2022-04-07 16:59:30,830 INFO L290 TraceCheckUtils]: 52: Hoare triple {1037#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 6)) (<= 2 main_~i~0))} [129] L49-2-->L49-3: Formula: (= v_main_~i~0_1 (+ v_main_~i~0_2 1)) InVars {main_~i~0=v_main_~i~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, main_~i~0=v_main_~i~0_1} AuxVars[] AssignedVars[main_#t~post4, main_~i~0] {1041#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 6)) (<= 3 main_~i~0))} is VALID [2022-04-07 16:59:30,831 INFO L290 TraceCheckUtils]: 53: Hoare triple {1041#(and (<= (+ main_~p~0 (* 2 main_~ielen~0)) (+ main_~bufsize_0~0 6)) (<= 3 main_~i~0))} [122] L49-3-->L50: Formula: (and (< v_main_~i~0_6 v_main_~ielen~0_11) (< 2 v_main_~bufsize~0_14)) InVars {main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} OutVars{main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} AuxVars[] AssignedVars[] {868#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:30,831 INFO L272 TraceCheckUtils]: 54: Hoare triple {868#(<= (+ main_~p~0 2) main_~bufsize_0~0)} [123] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {834#true} is VALID [2022-04-07 16:59:30,831 INFO L290 TraceCheckUtils]: 55: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:30,831 INFO L290 TraceCheckUtils]: 56: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,831 INFO L290 TraceCheckUtils]: 57: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:30,833 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {834#true} {868#(<= (+ main_~p~0 2) main_~bufsize_0~0)} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {868#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:30,834 INFO L272 TraceCheckUtils]: 59: Hoare triple {868#(<= (+ main_~p~0 2) main_~bufsize_0~0)} [124] L50-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {1063#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 16:59:30,834 INFO L290 TraceCheckUtils]: 60: Hoare triple {1063#(<= 1 |__VERIFIER_assert_#in~cond|)} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1067#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 16:59:30,835 INFO L290 TraceCheckUtils]: 61: Hoare triple {1067#(<= 1 __VERIFIER_assert_~cond)} [127] L18-->L19: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {835#false} is VALID [2022-04-07 16:59:30,835 INFO L290 TraceCheckUtils]: 62: Hoare triple {835#false} [130] L19-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {835#false} is VALID [2022-04-07 16:59:30,835 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-07 16:59:30,835 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 16:59:31,451 INFO L290 TraceCheckUtils]: 62: Hoare triple {835#false} [130] L19-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {835#false} is VALID [2022-04-07 16:59:31,452 INFO L290 TraceCheckUtils]: 61: Hoare triple {1067#(<= 1 __VERIFIER_assert_~cond)} [127] L18-->L19: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {835#false} is VALID [2022-04-07 16:59:31,452 INFO L290 TraceCheckUtils]: 60: Hoare triple {1063#(<= 1 |__VERIFIER_assert_#in~cond|)} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1067#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 16:59:31,453 INFO L272 TraceCheckUtils]: 59: Hoare triple {868#(<= (+ main_~p~0 2) main_~bufsize_0~0)} [124] L50-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {1063#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 16:59:31,453 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {834#true} {868#(<= (+ main_~p~0 2) main_~bufsize_0~0)} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {868#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:31,453 INFO L290 TraceCheckUtils]: 57: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,453 INFO L290 TraceCheckUtils]: 56: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,454 INFO L290 TraceCheckUtils]: 55: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:31,454 INFO L272 TraceCheckUtils]: 54: Hoare triple {868#(<= (+ main_~p~0 2) main_~bufsize_0~0)} [123] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {834#true} is VALID [2022-04-07 16:59:31,455 INFO L290 TraceCheckUtils]: 53: Hoare triple {1101#(or (not (< main_~i~0 main_~ielen~0)) (<= (+ main_~p~0 2) main_~bufsize_0~0))} [122] L49-3-->L50: Formula: (and (< v_main_~i~0_6 v_main_~ielen~0_11) (< 2 v_main_~bufsize~0_14)) InVars {main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} OutVars{main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} AuxVars[] AssignedVars[] {868#(<= (+ main_~p~0 2) main_~bufsize_0~0)} is VALID [2022-04-07 16:59:31,455 INFO L290 TraceCheckUtils]: 52: Hoare triple {1105#(or (<= (+ main_~p~0 2) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} [129] L49-2-->L49-3: Formula: (= v_main_~i~0_1 (+ v_main_~i~0_2 1)) InVars {main_~i~0=v_main_~i~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, main_~i~0=v_main_~i~0_1} AuxVars[] AssignedVars[main_#t~post4, main_~i~0] {1101#(or (not (< main_~i~0 main_~ielen~0)) (<= (+ main_~p~0 2) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:31,456 INFO L290 TraceCheckUtils]: 51: Hoare triple {1109#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} [126] L51-->L49-2: Formula: (= v_main_~p~0_3 (+ v_main_~p~0_4 2)) InVars {main_~p~0=v_main_~p~0_4} OutVars{main_~p~0=v_main_~p~0_3} AuxVars[] AssignedVars[main_~p~0] {1105#(or (<= (+ main_~p~0 2) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} is VALID [2022-04-07 16:59:31,456 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {834#true} {1109#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} [136] __VERIFIER_assertEXIT-->L51: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {1109#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} is VALID [2022-04-07 16:59:31,456 INFO L290 TraceCheckUtils]: 49: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,456 INFO L290 TraceCheckUtils]: 48: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,456 INFO L290 TraceCheckUtils]: 47: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:31,456 INFO L272 TraceCheckUtils]: 46: Hoare triple {1109#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} [124] L50-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {834#true} is VALID [2022-04-07 16:59:31,457 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {834#true} {1109#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {1109#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} is VALID [2022-04-07 16:59:31,457 INFO L290 TraceCheckUtils]: 44: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,457 INFO L290 TraceCheckUtils]: 43: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,457 INFO L290 TraceCheckUtils]: 42: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:31,457 INFO L272 TraceCheckUtils]: 41: Hoare triple {1109#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} [123] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {834#true} is VALID [2022-04-07 16:59:31,459 INFO L290 TraceCheckUtils]: 40: Hoare triple {1109#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} [122] L49-3-->L50: Formula: (and (< v_main_~i~0_6 v_main_~ielen~0_11) (< 2 v_main_~bufsize~0_14)) InVars {main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} OutVars{main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} AuxVars[] AssignedVars[] {1109#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} is VALID [2022-04-07 16:59:31,460 INFO L290 TraceCheckUtils]: 39: Hoare triple {1146#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 2)))} [129] L49-2-->L49-3: Formula: (= v_main_~i~0_1 (+ v_main_~i~0_2 1)) InVars {main_~i~0=v_main_~i~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, main_~i~0=v_main_~i~0_1} AuxVars[] AssignedVars[main_#t~post4, main_~i~0] {1109#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 1)))} is VALID [2022-04-07 16:59:31,461 INFO L290 TraceCheckUtils]: 38: Hoare triple {1150#(or (<= main_~ielen~0 (+ main_~i~0 2)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} [126] L51-->L49-2: Formula: (= v_main_~p~0_3 (+ v_main_~p~0_4 2)) InVars {main_~p~0=v_main_~p~0_4} OutVars{main_~p~0=v_main_~p~0_3} AuxVars[] AssignedVars[main_~p~0] {1146#(or (<= (+ main_~p~0 4) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 2)))} is VALID [2022-04-07 16:59:31,461 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {834#true} {1150#(or (<= main_~ielen~0 (+ main_~i~0 2)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} [136] __VERIFIER_assertEXIT-->L51: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {1150#(or (<= main_~ielen~0 (+ main_~i~0 2)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:31,462 INFO L290 TraceCheckUtils]: 36: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,462 INFO L290 TraceCheckUtils]: 35: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,462 INFO L290 TraceCheckUtils]: 34: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:31,462 INFO L272 TraceCheckUtils]: 33: Hoare triple {1150#(or (<= main_~ielen~0 (+ main_~i~0 2)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} [124] L50-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {834#true} is VALID [2022-04-07 16:59:31,463 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {834#true} {1150#(or (<= main_~ielen~0 (+ main_~i~0 2)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {1150#(or (<= main_~ielen~0 (+ main_~i~0 2)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:31,463 INFO L290 TraceCheckUtils]: 31: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,463 INFO L290 TraceCheckUtils]: 30: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,463 INFO L290 TraceCheckUtils]: 29: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:31,463 INFO L272 TraceCheckUtils]: 28: Hoare triple {1150#(or (<= main_~ielen~0 (+ main_~i~0 2)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} [123] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {834#true} is VALID [2022-04-07 16:59:31,464 INFO L290 TraceCheckUtils]: 27: Hoare triple {1150#(or (<= main_~ielen~0 (+ main_~i~0 2)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} [122] L49-3-->L50: Formula: (and (< v_main_~i~0_6 v_main_~ielen~0_11) (< 2 v_main_~bufsize~0_14)) InVars {main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} OutVars{main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} AuxVars[] AssignedVars[] {1150#(or (<= main_~ielen~0 (+ main_~i~0 2)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:31,464 INFO L290 TraceCheckUtils]: 26: Hoare triple {1187#(or (<= main_~ielen~0 (+ main_~i~0 3)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} [129] L49-2-->L49-3: Formula: (= v_main_~i~0_1 (+ v_main_~i~0_2 1)) InVars {main_~i~0=v_main_~i~0_2} OutVars{main_#t~post4=|v_main_#t~post4_1|, main_~i~0=v_main_~i~0_1} AuxVars[] AssignedVars[main_#t~post4, main_~i~0] {1150#(or (<= main_~ielen~0 (+ main_~i~0 2)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:31,465 INFO L290 TraceCheckUtils]: 25: Hoare triple {1191#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 3)))} [126] L51-->L49-2: Formula: (= v_main_~p~0_3 (+ v_main_~p~0_4 2)) InVars {main_~p~0=v_main_~p~0_4} OutVars{main_~p~0=v_main_~p~0_3} AuxVars[] AssignedVars[main_~p~0] {1187#(or (<= main_~ielen~0 (+ main_~i~0 3)) (<= (+ main_~p~0 6) main_~bufsize_0~0))} is VALID [2022-04-07 16:59:31,465 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {834#true} {1191#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 3)))} [136] __VERIFIER_assertEXIT-->L51: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {1191#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 3)))} is VALID [2022-04-07 16:59:31,465 INFO L290 TraceCheckUtils]: 23: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,466 INFO L290 TraceCheckUtils]: 22: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,466 INFO L290 TraceCheckUtils]: 21: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:31,466 INFO L272 TraceCheckUtils]: 20: Hoare triple {1191#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 3)))} [124] L50-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (< (+ v_main_~p~0_9 1) v_main_~bufsize_0~0_4) 1 0)) InVars {main_~bufsize_0~0=v_main_~bufsize_0~0_4, main_~p~0=v_main_~p~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~bufsize_0~0, main_~p~0] {834#true} is VALID [2022-04-07 16:59:31,467 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {834#true} {1191#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 3)))} [135] __VERIFIER_assertEXIT-->L50-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {1191#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 3)))} is VALID [2022-04-07 16:59:31,467 INFO L290 TraceCheckUtils]: 18: Hoare triple {834#true} [132] L18-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,467 INFO L290 TraceCheckUtils]: 17: Hoare triple {834#true} [128] L18-->L18-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,467 INFO L290 TraceCheckUtils]: 16: Hoare triple {834#true} [125] __VERIFIER_assertENTRY-->L18: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {834#true} is VALID [2022-04-07 16:59:31,471 INFO L272 TraceCheckUtils]: 15: Hoare triple {1191#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 3)))} [123] L50-->__VERIFIER_assertENTRY: Formula: (= (ite (<= 0 v_main_~p~0_8) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~p~0=v_main_~p~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~p~0] {834#true} is VALID [2022-04-07 16:59:31,472 INFO L290 TraceCheckUtils]: 14: Hoare triple {1191#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 3)))} [122] L49-3-->L50: Formula: (and (< v_main_~i~0_6 v_main_~ielen~0_11) (< 2 v_main_~bufsize~0_14)) InVars {main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} OutVars{main_~i~0=v_main_~i~0_6, main_~bufsize~0=v_main_~bufsize~0_14, main_~ielen~0=v_main_~ielen~0_11} AuxVars[] AssignedVars[] {1191#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 3)))} is VALID [2022-04-07 16:59:31,473 INFO L290 TraceCheckUtils]: 13: Hoare triple {1228#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= (div (+ (- 1) (* (- 1) main_~bufsize~0)) (- 2)) 4))} [119] L47-->L49-3: Formula: (and (not (< v_main_~bufsize~0_12 (* 2 v_main_~ielen~0_9))) (= v_main_~i~0_4 0)) InVars {main_~ielen~0=v_main_~ielen~0_9, main_~bufsize~0=v_main_~bufsize~0_12} OutVars{main_~i~0=v_main_~i~0_4, main_~bufsize~0=v_main_~bufsize~0_12, main_~ielen~0=v_main_~ielen~0_9} AuxVars[] AssignedVars[main_~i~0] {1191#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= main_~ielen~0 (+ main_~i~0 3)))} is VALID [2022-04-07 16:59:31,473 INFO L290 TraceCheckUtils]: 12: Hoare triple {834#true} [117] L40-->L47: Formula: (and (= v_main_~p~0_6 v_main_~leader_len~0_9) (= v_main_~bufsize_0~0_3 v_main_~bufsize~0_10) (not (< v_main_~bufsize~0_10 v_main_~leader_len~0_9)) (= v_main_~bufsize~0_9 (+ (* (- 1) v_main_~leader_len~0_9) v_main_~bufsize~0_10))) InVars {main_~bufsize~0=v_main_~bufsize~0_10, main_~leader_len~0=v_main_~leader_len~0_9} OutVars{main_~bufsize_0~0=v_main_~bufsize_0~0_3, main_~bufsize~0=v_main_~bufsize~0_9, main_~p~0=v_main_~p~0_6, main_~leader_len~0=v_main_~leader_len~0_9} AuxVars[] AssignedVars[main_~bufsize_0~0, main_~bufsize~0, main_~p~0] {1228#(or (<= (+ main_~p~0 8) main_~bufsize_0~0) (<= (div (+ (- 1) (* (- 1) main_~bufsize~0)) (- 2)) 4))} is VALID [2022-04-07 16:59:31,473 INFO L290 TraceCheckUtils]: 11: Hoare triple {834#true} [114] L39-->L40: Formula: (< 0 v_main_~ielen~0_6) InVars {main_~ielen~0=v_main_~ielen~0_6} OutVars{main_~ielen~0=v_main_~ielen~0_6} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,473 INFO L290 TraceCheckUtils]: 10: Hoare triple {834#true} [112] L38-1-->L39: Formula: (< 0 v_main_~bufsize~0_6) InVars {main_~bufsize~0=v_main_~bufsize~0_6} OutVars{main_~bufsize~0=v_main_~bufsize~0_6} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,473 INFO L290 TraceCheckUtils]: 9: Hoare triple {834#true} [110] L38-->L38-1: Formula: (< 0 v_main_~leader_len~0_6) InVars {main_~leader_len~0=v_main_~leader_len~0_6} OutVars{main_~leader_len~0=v_main_~leader_len~0_6} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,473 INFO L290 TraceCheckUtils]: 8: Hoare triple {834#true} [109] L37-->L38: Formula: (< v_main_~ielen~0_5 1000000) InVars {main_~ielen~0=v_main_~ielen~0_5} OutVars{main_~ielen~0=v_main_~ielen~0_5} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,474 INFO L290 TraceCheckUtils]: 7: Hoare triple {834#true} [107] L36-->L37: Formula: (< v_main_~bufsize~0_5 1000000) InVars {main_~bufsize~0=v_main_~bufsize~0_5} OutVars{main_~bufsize~0=v_main_~bufsize~0_5} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,474 INFO L290 TraceCheckUtils]: 6: Hoare triple {834#true} [104] L35-->L36: Formula: (< v_main_~leader_len~0_5 1000000) InVars {main_~leader_len~0=v_main_~leader_len~0_5} OutVars{main_~leader_len~0=v_main_~leader_len~0_5} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,474 INFO L290 TraceCheckUtils]: 5: Hoare triple {834#true} [101] mainENTRY-->L35: Formula: (and (= |v_main_#t~nondet3_2| v_main_~ielen~0_1) (= v_main_~leader_len~0_1 |v_main_#t~nondet1_2|) (<= |v_main_#t~nondet3_2| 2147483647) (= v_main_~bufsize~0_1 |v_main_#t~nondet2_2|) (<= |v_main_#t~nondet1_2| 2147483647) (<= 0 (+ |v_main_#t~nondet2_2| 2147483648)) (<= |v_main_#t~nondet2_2| 2147483647) (<= 0 (+ |v_main_#t~nondet1_2| 2147483648)) (<= 0 (+ |v_main_#t~nondet3_2| 2147483648))) InVars {main_#t~nondet1=|v_main_#t~nondet1_2|, main_#t~nondet3=|v_main_#t~nondet3_2|, main_#t~nondet2=|v_main_#t~nondet2_2|} OutVars{main_~ielen~0=v_main_~ielen~0_1, main_~bufsize_0~0=v_main_~bufsize_0~0_2, main_~i~0=v_main_~i~0_3, main_~bufsize~0=v_main_~bufsize~0_1, main_~leader_len~0=v_main_~leader_len~0_1, main_~p~0=v_main_~p~0_5} AuxVars[] AssignedVars[main_~ielen~0, main_#t~nondet1, main_#t~nondet3, main_#t~nondet2, main_~bufsize_0~0, main_~i~0, main_~bufsize~0, main_~leader_len~0, main_~p~0] {834#true} is VALID [2022-04-07 16:59:31,474 INFO L272 TraceCheckUtils]: 4: Hoare triple {834#true} [98] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,474 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {834#true} {834#true} [133] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,474 INFO L290 TraceCheckUtils]: 2: Hoare triple {834#true} [102] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,474 INFO L290 TraceCheckUtils]: 1: Hoare triple {834#true} [99] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= (select |v_#length_1| 2) 9) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {834#true} is VALID [2022-04-07 16:59:31,474 INFO L272 TraceCheckUtils]: 0: Hoare triple {834#true} [97] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {834#true} is VALID [2022-04-07 16:59:31,475 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-07 16:59:31,475 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1666169323] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 16:59:31,475 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-07 16:59:31,475 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 13, 13] total 28 [2022-04-07 16:59:31,475 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2050168449] [2022-04-07 16:59:31,477 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-07 16:59:31,478 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-07 16:59:31,482 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 16:59:31,482 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-07 16:59:31,550 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-07 16:59:31,551 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 28 states [2022-04-07 16:59:31,551 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 16:59:31,551 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2022-04-07 16:59:31,551 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=146, Invalid=610, Unknown=0, NotChecked=0, Total=756 [2022-04-07 16:59:31,552 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-07 16:59:32,778 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 16:59:32,778 INFO L93 Difference]: Finished difference Result 54 states and 60 transitions. [2022-04-07 16:59:32,778 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-07 16:59:32,779 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-07 16:59:32,779 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 16:59:32,779 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-07 16:59:32,781 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 55 transitions. [2022-04-07 16:59:32,781 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-07 16:59:32,783 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 55 transitions. [2022-04-07 16:59:32,783 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 55 transitions. [2022-04-07 16:59:32,824 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-07 16:59:32,825 INFO L225 Difference]: With dead ends: 54 [2022-04-07 16:59:32,825 INFO L226 Difference]: Without dead ends: 0 [2022-04-07 16:59:32,825 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 172 GetRequests, 125 SyntacticMatches, 3 SemanticMatches, 44 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 535 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=396, Invalid=1674, Unknown=0, NotChecked=0, Total=2070 [2022-04-07 16:59:32,826 INFO L913 BasicCegarLoop]: 25 mSDtfsCounter, 45 mSDsluCounter, 62 mSDsCounter, 0 mSdLazyCounter, 483 mSolverCounterSat, 93 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 45 SdHoareTripleChecker+Valid, 87 SdHoareTripleChecker+Invalid, 576 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 93 IncrementalHoareTripleChecker+Valid, 483 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-07 16:59:32,826 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [45 Valid, 87 Invalid, 576 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [93 Valid, 483 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-07 16:59:32,827 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-07 16:59:32,827 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-07 16:59:32,827 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 16:59:32,827 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 16:59:32,827 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 16:59:32,827 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 16:59:32,827 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 16:59:32,827 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 16:59:32,827 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 16:59:32,827 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 16:59:32,827 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 16:59:32,827 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-07 16:59:32,827 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-07 16:59:32,827 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 16:59:32,827 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 16:59:32,827 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 16:59:32,828 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 16:59:32,828 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 16:59:32,828 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 16:59:32,828 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 16:59:32,828 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 16:59:32,828 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-07 16:59:32,828 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 63 [2022-04-07 16:59:32,828 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 16:59:32,828 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-07 16:59:32,828 INFO L479 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-07 16:59:32,828 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 16:59:32,828 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 16:59:32,830 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-07 16:59:32,846 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-07 16:59:33,031 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable3 [2022-04-07 16:59:33,033 INFO L719 BasicCegarLoop]: Path program histogram: [2, 1, 1] [2022-04-07 16:59:33,034 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-07 16:59:33,036 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 04:59:33 BasicIcfg [2022-04-07 16:59:33,036 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-07 16:59:33,036 INFO L158 Benchmark]: Toolchain (without parser) took 6984.22ms. Allocated memory was 179.3MB in the beginning and 251.7MB in the end (delta: 72.4MB). Free memory was 122.1MB in the beginning and 188.0MB in the end (delta: -65.9MB). Peak memory consumption was 8.0MB. Max. memory is 8.0GB. [2022-04-07 16:59:33,037 INFO L158 Benchmark]: CDTParser took 0.13ms. Allocated memory is still 179.3MB. Free memory is still 138.9MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-07 16:59:33,037 INFO L158 Benchmark]: CACSL2BoogieTranslator took 222.08ms. Allocated memory was 179.3MB in the beginning and 251.7MB in the end (delta: 72.4MB). Free memory was 121.9MB in the beginning and 224.3MB in the end (delta: -102.5MB). Peak memory consumption was 15.7MB. Max. memory is 8.0GB. [2022-04-07 16:59:33,037 INFO L158 Benchmark]: Boogie Preprocessor took 22.46ms. Allocated memory is still 251.7MB. Free memory was 224.3MB in the beginning and 222.8MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-07 16:59:33,037 INFO L158 Benchmark]: RCFGBuilder took 306.01ms. Allocated memory is still 251.7MB. Free memory was 222.8MB in the beginning and 209.1MB in the end (delta: 13.7MB). Peak memory consumption was 13.6MB. Max. memory is 8.0GB. [2022-04-07 16:59:33,037 INFO L158 Benchmark]: IcfgTransformer took 49.20ms. Allocated memory is still 251.7MB. Free memory was 208.6MB in the beginning and 206.3MB in the end (delta: 2.3MB). Peak memory consumption was 3.1MB. Max. memory is 8.0GB. [2022-04-07 16:59:33,038 INFO L158 Benchmark]: TraceAbstraction took 6378.53ms. Allocated memory is still 251.7MB. Free memory was 205.7MB in the beginning and 188.0MB in the end (delta: 17.8MB). Peak memory consumption was 19.1MB. Max. memory is 8.0GB. [2022-04-07 16:59:33,038 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.13ms. Allocated memory is still 179.3MB. Free memory is still 138.9MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 222.08ms. Allocated memory was 179.3MB in the beginning and 251.7MB in the end (delta: 72.4MB). Free memory was 121.9MB in the beginning and 224.3MB in the end (delta: -102.5MB). Peak memory consumption was 15.7MB. Max. memory is 8.0GB. * Boogie Preprocessor took 22.46ms. Allocated memory is still 251.7MB. Free memory was 224.3MB in the beginning and 222.8MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 306.01ms. Allocated memory is still 251.7MB. Free memory was 222.8MB in the beginning and 209.1MB in the end (delta: 13.7MB). Peak memory consumption was 13.6MB. Max. memory is 8.0GB. * IcfgTransformer took 49.20ms. Allocated memory is still 251.7MB. Free memory was 208.6MB in the beginning and 206.3MB in the end (delta: 2.3MB). Peak memory consumption was 3.1MB. Max. memory is 8.0GB. * TraceAbstraction took 6378.53ms. Allocated memory is still 251.7MB. Free memory was 205.7MB in the beginning and 188.0MB in the end (delta: 17.8MB). Peak memory consumption was 19.1MB. 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 4 procedures, 29 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 6.3s, OverallIterations: 4, TraceHistogramMax: 8, PathProgramHistogramMax: 2, EmptinessCheckTime: 0.0s, AutomataDifference: 2.7s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 163 SdHoareTripleChecker+Valid, 1.0s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 159 mSDsluCounter, 246 SdHoareTripleChecker+Invalid, 1.0s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 143 mSDsCounter, 166 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 924 IncrementalHoareTripleChecker+Invalid, 1090 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 166 mSolverCounterUnsat, 103 mSDtfsCounter, 924 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, 0.8s 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: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 2.6s 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 RESULT: Ultimate proved your program to be correct! [2022-04-07 16:59:33,061 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...