/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/verifythis/lcp.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-14 20:08:19,576 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-14 20:08:19,578 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-14 20:08:19,601 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-14 20:08:19,601 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-14 20:08:19,602 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-14 20:08:19,603 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-14 20:08:19,604 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-14 20:08:19,605 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-14 20:08:19,606 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-14 20:08:19,606 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-14 20:08:19,607 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-14 20:08:19,607 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-14 20:08:19,608 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-14 20:08:19,609 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-14 20:08:19,609 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-14 20:08:19,610 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-14 20:08:19,610 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-14 20:08:19,612 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-14 20:08:19,613 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-14 20:08:19,615 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-14 20:08:19,617 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-14 20:08:19,617 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-14 20:08:19,618 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-14 20:08:19,619 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-14 20:08:19,620 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-14 20:08:19,621 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-14 20:08:19,621 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-14 20:08:19,621 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-14 20:08:19,622 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-14 20:08:19,622 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-14 20:08:19,622 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-14 20:08:19,623 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-14 20:08:19,623 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-14 20:08:19,624 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-14 20:08:19,624 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-14 20:08:19,624 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-14 20:08:19,625 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-14 20:08:19,625 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-14 20:08:19,625 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-14 20:08:19,625 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-14 20:08:19,626 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-14 20:08:19,626 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-14 20:08:19,632 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-14 20:08:19,632 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-14 20:08:19,633 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-14 20:08:19,633 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-14 20:08:19,633 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-14 20:08:19,633 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-14 20:08:19,633 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-14 20:08:19,633 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-14 20:08:19,634 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-14 20:08:19,634 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-14 20:08:19,634 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-14 20:08:19,634 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-14 20:08:19,634 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-14 20:08:19,634 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-14 20:08:19,634 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-14 20:08:19,634 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-14 20:08:19,634 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-14 20:08:19,635 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-14 20:08:19,635 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 20:08:19,635 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-14 20:08:19,635 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-14 20:08:19,635 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-14 20:08:19,636 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-14 20:08:19,824 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-14 20:08:19,851 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-14 20:08:19,853 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-14 20:08:19,853 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-14 20:08:19,855 INFO L275 PluginConnector]: CDTParser initialized [2022-04-14 20:08:19,855 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/verifythis/lcp.c [2022-04-14 20:08:19,898 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4609e8764/445f7664c7d14c0b89a0a0fab4169bb3/FLAG0b10b4628 [2022-04-14 20:08:20,280 INFO L306 CDTParser]: Found 1 translation units. [2022-04-14 20:08:20,281 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/verifythis/lcp.c [2022-04-14 20:08:20,286 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4609e8764/445f7664c7d14c0b89a0a0fab4169bb3/FLAG0b10b4628 [2022-04-14 20:08:20,295 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4609e8764/445f7664c7d14c0b89a0a0fab4169bb3 [2022-04-14 20:08:20,296 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-14 20:08:20,297 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-14 20:08:20,298 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-14 20:08:20,298 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-14 20:08:20,301 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-14 20:08:20,304 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 08:08:20" (1/1) ... [2022-04-14 20:08:20,305 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@558ff2f6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:08:20, skipping insertion in model container [2022-04-14 20:08:20,305 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 08:08:20" (1/1) ... [2022-04-14 20:08:20,310 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-14 20:08:20,320 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-14 20:08:20,431 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/verifythis/lcp.c[515,528] [2022-04-14 20:08:20,450 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 20:08:20,456 INFO L203 MainTranslator]: Completed pre-run [2022-04-14 20:08:20,465 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/verifythis/lcp.c[515,528] [2022-04-14 20:08:20,472 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 20:08:20,489 INFO L208 MainTranslator]: Completed translation [2022-04-14 20:08:20,489 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:08:20 WrapperNode [2022-04-14 20:08:20,489 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-14 20:08:20,490 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-14 20:08:20,490 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-14 20:08:20,490 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-14 20:08:20,503 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:08:20" (1/1) ... [2022-04-14 20:08:20,504 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:08:20" (1/1) ... [2022-04-14 20:08:20,510 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:08:20" (1/1) ... [2022-04-14 20:08:20,510 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:08:20" (1/1) ... [2022-04-14 20:08:20,517 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:08:20" (1/1) ... [2022-04-14 20:08:20,520 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:08:20" (1/1) ... [2022-04-14 20:08:20,521 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:08:20" (1/1) ... [2022-04-14 20:08:20,522 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-14 20:08:20,523 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-14 20:08:20,523 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-14 20:08:20,523 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-14 20:08:20,525 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:08:20" (1/1) ... [2022-04-14 20:08:20,529 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 20:08:20,535 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:08:20,544 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-14 20:08:20,549 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-14 20:08:20,569 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-14 20:08:20,569 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-14 20:08:20,569 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-14 20:08:20,569 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-14 20:08:20,569 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-14 20:08:20,569 INFO L138 BoogieDeclarations]: Found implementation of procedure lcp [2022-04-14 20:08:20,569 INFO L138 BoogieDeclarations]: Found implementation of procedure check [2022-04-14 20:08:20,569 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-14 20:08:20,570 INFO L138 BoogieDeclarations]: Found implementation of procedure #Ultimate.meminit [2022-04-14 20:08:20,570 INFO L130 BoogieDeclarations]: Found specification of procedure calloc [2022-04-14 20:08:20,570 INFO L130 BoogieDeclarations]: Found specification of procedure free [2022-04-14 20:08:20,570 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-14 20:08:20,570 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-14 20:08:20,570 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-14 20:08:20,570 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-14 20:08:20,570 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-14 20:08:20,570 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-14 20:08:20,570 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-14 20:08:20,570 INFO L130 BoogieDeclarations]: Found specification of procedure lcp [2022-04-14 20:08:20,571 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-14 20:08:20,571 INFO L130 BoogieDeclarations]: Found specification of procedure check [2022-04-14 20:08:20,571 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-14 20:08:20,571 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-04-14 20:08:20,571 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.meminit [2022-04-14 20:08:20,571 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-14 20:08:20,571 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-14 20:08:20,571 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-14 20:08:20,571 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-14 20:08:20,571 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-14 20:08:20,642 INFO L234 CfgBuilder]: Building ICFG [2022-04-14 20:08:20,644 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-14 20:08:20,844 INFO L275 CfgBuilder]: Performing block encoding [2022-04-14 20:08:20,849 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-14 20:08:20,849 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-14 20:08:20,851 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 08:08:20 BoogieIcfgContainer [2022-04-14 20:08:20,851 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-14 20:08:20,851 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-14 20:08:20,851 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-14 20:08:20,852 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-14 20:08:20,854 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 08:08:20" (1/1) ... [2022-04-14 20:08:20,855 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-14 20:08:20,878 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 14.04 08:08:20 BasicIcfg [2022-04-14 20:08:20,879 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-14 20:08:20,880 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-14 20:08:20,880 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-14 20:08:20,881 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-14 20:08:20,882 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 14.04 08:08:20" (1/4) ... [2022-04-14 20:08:20,882 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@350c8f2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 08:08:20, skipping insertion in model container [2022-04-14 20:08:20,882 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:08:20" (2/4) ... [2022-04-14 20:08:20,882 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@350c8f2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 08:08:20, skipping insertion in model container [2022-04-14 20:08:20,882 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 08:08:20" (3/4) ... [2022-04-14 20:08:20,883 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@350c8f2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 08:08:20, skipping insertion in model container [2022-04-14 20:08:20,883 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 14.04 08:08:20" (4/4) ... [2022-04-14 20:08:20,883 INFO L111 eAbstractionObserver]: Analyzing ICFG lcp.cJordan [2022-04-14 20:08:20,886 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-14 20:08:20,887 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-14 20:08:20,914 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-14 20:08:20,919 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-14 20:08:20,919 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-14 20:08:20,930 INFO L276 IsEmpty]: Start isEmpty. Operand has 49 states, 30 states have (on average 1.2333333333333334) internal successors, (37), 31 states have internal predecessors, (37), 10 states have call successors, (10), 7 states have call predecessors, (10), 7 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-14 20:08:20,935 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-14 20:08:20,935 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:08:20,935 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:08:20,936 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:08:20,939 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:08:20,939 INFO L85 PathProgramCache]: Analyzing trace with hash -1603802952, now seen corresponding path program 1 times [2022-04-14 20:08:20,945 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:08:20,945 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [59700161] [2022-04-14 20:08:20,946 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:08:20,946 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:08:21,036 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:21,094 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-14 20:08:21,104 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:21,127 INFO L290 TraceCheckUtils]: 0: Hoare triple {77#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [96] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_5| 1)) (.cse1 (select |v_#memory_int_5| 2))) (and (= (select .cse0 0) 48) (= (select |v_#valid_5| 1) 1) (= (select .cse1 3) 46) (= 2 (select |v_#length_3| 1)) (< 0 |v_#StackHeapBarrier_2|) (= 112 (select .cse1 2)) (= |v_#NULL.base_1| 0) (= (select |v_#valid_5| 2) 1) (= 108 (select .cse1 0)) (= (select .cse1 1) 99) (= (select .cse0 1) 0) (= 1 (select |v_#valid_5| 3)) (= (select .cse1 4) 99) (= (select .cse1 5) 0) (= 6 (select |v_#length_3| 2)) (= (select |v_#valid_5| 0) 0) (= |v_#NULL.offset_1| 0) (= 12 (select |v_#length_3| 3)))) InVars {#memory_int=|v_#memory_int_5|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_5|, #memory_int=|v_#memory_int_5|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_3|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {52#true} is VALID [2022-04-14 20:08:21,127 INFO L290 TraceCheckUtils]: 1: Hoare triple {52#true} [99] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52#true} is VALID [2022-04-14 20:08:21,127 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {52#true} {52#true} [141] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52#true} is VALID [2022-04-14 20:08:21,128 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-14 20:08:21,132 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:21,138 INFO L290 TraceCheckUtils]: 0: Hoare triple {52#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {52#true} is VALID [2022-04-14 20:08:21,139 INFO L290 TraceCheckUtils]: 1: Hoare triple {52#true} [104] L6-->L6-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {53#false} is VALID [2022-04-14 20:08:21,139 INFO L290 TraceCheckUtils]: 2: Hoare triple {53#false} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {53#false} is VALID [2022-04-14 20:08:21,140 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {53#false} {52#true} [142] assume_abort_if_notEXIT-->L38-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (and (< v_main_~n~0_7 1073741824) (<= 0 v_main_~n~0_7)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~n~0=v_main_~n~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~n~0, assume_abort_if_not_#in~cond] {53#false} is VALID [2022-04-14 20:08:21,147 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-14 20:08:21,149 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:21,157 INFO L290 TraceCheckUtils]: 0: Hoare triple {78#(= |#memory_int| |old(#memory_int)|)} [107] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_10| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_9|) InVars {#memory_int=|v_#memory_int_10|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_9|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {52#true} is VALID [2022-04-14 20:08:21,157 INFO L290 TraceCheckUtils]: 1: Hoare triple {52#true} [110] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52#true} is VALID [2022-04-14 20:08:21,158 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {52#true} {53#false} [145] #Ultimate.meminitEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_main_#t~malloc15.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= v_main_~n~0_8 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#productInParam_1| (* v_main_~n~0_8 4)) (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_main_#t~malloc15.offset_4|)) InVars {main_#t~malloc15.offset=|v_main_#t~malloc15.offset_4|, main_~n~0=v_main_~n~0_8, main_#t~malloc15.base=|v_main_#t~malloc15.base_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, #Ultimate.meminit_#product, main_~n~0, #Ultimate.meminit_#ptr.base, main_#t~malloc15.base, #Ultimate.meminit_#ptr.offset] {53#false} is VALID [2022-04-14 20:08:21,158 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-14 20:08:21,160 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:21,166 INFO L290 TraceCheckUtils]: 0: Hoare triple {52#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {52#true} is VALID [2022-04-14 20:08:21,167 INFO L290 TraceCheckUtils]: 1: Hoare triple {52#true} [104] L6-->L6-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {53#false} is VALID [2022-04-14 20:08:21,167 INFO L290 TraceCheckUtils]: 2: Hoare triple {53#false} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {53#false} is VALID [2022-04-14 20:08:21,167 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {53#false} {53#false} [143] assume_abort_if_notEXIT-->L43-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_5) (<= 0 v_main_~x~0_5)) 1 0)) InVars {main_~x~0=v_main_~x~0_5, main_~y~0=v_main_~y~0_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, assume_abort_if_not_#in~cond] {53#false} is VALID [2022-04-14 20:08:21,167 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-14 20:08:21,175 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:21,183 INFO L290 TraceCheckUtils]: 0: Hoare triple {52#true} [114] lcpENTRY-->L18-5: Formula: (and (= v_lcp_~a.base_1 |v_lcp_#in~a.base_1|) (= v_lcp_~n_1 |v_lcp_#in~n_1|) (= v_lcp_~l~0_1 0) (= v_lcp_~x_1 |v_lcp_#in~x_1|) (= v_lcp_~y_1 |v_lcp_#in~y_1|) (= |v_lcp_#in~a.offset_1| v_lcp_~a.offset_1)) InVars {lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_#in~y=|v_lcp_#in~y_1|, lcp_#in~x=|v_lcp_#in~x_1|} OutVars{lcp_~x=v_lcp_~x_1, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_~l~0=v_lcp_~l~0_1, lcp_~a.offset=v_lcp_~a.offset_1, lcp_~y=v_lcp_~y_1, lcp_#in~y=|v_lcp_#in~y_1|, lcp_~a.base=v_lcp_~a.base_1, lcp_#in~x=|v_lcp_#in~x_1|, lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_~n=v_lcp_~n_1} AuxVars[] AssignedVars[lcp_~x, lcp_~l~0, lcp_~a.offset, lcp_~y, lcp_~a.base, lcp_~n] {52#true} is VALID [2022-04-14 20:08:21,183 INFO L290 TraceCheckUtils]: 1: Hoare triple {52#true} [117] L18-5-->L18-6: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {53#false} is VALID [2022-04-14 20:08:21,184 INFO L290 TraceCheckUtils]: 2: Hoare triple {53#false} [123] L18-6-->lcpFINAL: Formula: (= |v_lcp_#res_1| v_lcp_~l~0_4) InVars {lcp_~l~0=v_lcp_~l~0_4} OutVars{lcp_#res=|v_lcp_#res_1|, lcp_~l~0=v_lcp_~l~0_4} AuxVars[] AssignedVars[lcp_#res] {53#false} is VALID [2022-04-14 20:08:21,185 INFO L290 TraceCheckUtils]: 3: Hoare triple {53#false} [132] lcpFINAL-->lcpEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {53#false} is VALID [2022-04-14 20:08:21,185 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {53#false} {53#false} [147] lcpEXIT-->L44: AOR: Formula: (= |v_lcp_#resOutParam_1| |v_main_#t~ret18_4|) InVars {lcp_#res=|v_lcp_#resOutParam_1|} OutVars{main_#t~ret18=|v_main_#t~ret18_4|} AuxVars[] AssignedVars[main_#t~ret18, lcp_#res] LVA: Formula: (and (= v_main_~y~0_6 |v_lcp_#in~yInParam_1|) (= |v_lcp_#in~nInParam_1| v_main_~n~0_9) (= v_main_~x~0_6 |v_lcp_#in~xInParam_1|) (= |v_lcp_#in~a.offsetInParam_1| v_main_~a~0.offset_5) (= |v_lcp_#in~a.baseInParam_1| v_main_~a~0.base_5)) InVars {main_~a~0.base=v_main_~a~0.base_5, main_~y~0=v_main_~y~0_6, main_~n~0=v_main_~n~0_9, main_~x~0=v_main_~x~0_6, main_~a~0.offset=v_main_~a~0.offset_5} OutVars{lcp_#in~a.base=|v_lcp_#in~a.baseInParam_1|, lcp_#in~a.offset=|v_lcp_#in~a.offsetInParam_1|, lcp_#in~n=|v_lcp_#in~nInParam_1|, lcp_#in~y=|v_lcp_#in~yInParam_1|, lcp_#in~x=|v_lcp_#in~xInParam_1|} AuxVars[] AssignedVars[lcp_#in~a.offset, lcp_#in~y, main_~x~0, lcp_#in~x, lcp_#in~a.base, main_~a~0.base, lcp_#in~n, main_~y~0, main_~n~0, main_~a~0.offset] {53#false} is VALID [2022-04-14 20:08:21,185 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 31 [2022-04-14 20:08:21,187 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:21,202 INFO L290 TraceCheckUtils]: 0: Hoare triple {52#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {52#true} is VALID [2022-04-14 20:08:21,202 INFO L290 TraceCheckUtils]: 1: Hoare triple {52#true} [104] L6-->L6-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {53#false} is VALID [2022-04-14 20:08:21,203 INFO L290 TraceCheckUtils]: 2: Hoare triple {53#false} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {53#false} is VALID [2022-04-14 20:08:21,203 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {53#false} {53#false} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (and (<= 0 v_check_~i~0_4) (< v_check_~i~0_4 v_check_~l_5)) 1 0)) InVars {check_~i~0=v_check_~i~0_4, check_~l=v_check_~l_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[check_~i~0, assume_abort_if_not_#in~cond, check_~l] {53#false} is VALID [2022-04-14 20:08:21,204 INFO L272 TraceCheckUtils]: 0: Hoare triple {52#true} [94] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {77#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-14 20:08:21,205 INFO L290 TraceCheckUtils]: 1: Hoare triple {77#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [96] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_5| 1)) (.cse1 (select |v_#memory_int_5| 2))) (and (= (select .cse0 0) 48) (= (select |v_#valid_5| 1) 1) (= (select .cse1 3) 46) (= 2 (select |v_#length_3| 1)) (< 0 |v_#StackHeapBarrier_2|) (= 112 (select .cse1 2)) (= |v_#NULL.base_1| 0) (= (select |v_#valid_5| 2) 1) (= 108 (select .cse1 0)) (= (select .cse1 1) 99) (= (select .cse0 1) 0) (= 1 (select |v_#valid_5| 3)) (= (select .cse1 4) 99) (= (select .cse1 5) 0) (= 6 (select |v_#length_3| 2)) (= (select |v_#valid_5| 0) 0) (= |v_#NULL.offset_1| 0) (= 12 (select |v_#length_3| 3)))) InVars {#memory_int=|v_#memory_int_5|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_5|, #memory_int=|v_#memory_int_5|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_3|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {52#true} is VALID [2022-04-14 20:08:21,205 INFO L290 TraceCheckUtils]: 2: Hoare triple {52#true} [99] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52#true} is VALID [2022-04-14 20:08:21,205 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {52#true} {52#true} [141] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52#true} is VALID [2022-04-14 20:08:21,205 INFO L272 TraceCheckUtils]: 4: Hoare triple {52#true} [95] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52#true} is VALID [2022-04-14 20:08:21,205 INFO L290 TraceCheckUtils]: 5: Hoare triple {52#true} [98] mainENTRY-->L38: Formula: (and (<= |v_main_#t~nondet14_2| 2147483647) (= v_main_~n~0_3 |v_main_#t~nondet14_2|) (<= 0 (+ |v_main_#t~nondet14_2| 2147483648))) InVars {main_#t~nondet14=|v_main_#t~nondet14_2|} OutVars{main_~n~0=v_main_~n~0_3} AuxVars[] AssignedVars[main_#t~nondet14, main_~n~0] {52#true} is VALID [2022-04-14 20:08:21,206 INFO L272 TraceCheckUtils]: 6: Hoare triple {52#true} [100] L38-->assume_abort_if_notENTRY: Formula: (= (ite (and (< v_main_~n~0_7 1073741824) (<= 0 v_main_~n~0_7)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~n~0=v_main_~n~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~n~0, assume_abort_if_not_#in~cond] {52#true} is VALID [2022-04-14 20:08:21,206 INFO L290 TraceCheckUtils]: 7: Hoare triple {52#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {52#true} is VALID [2022-04-14 20:08:21,208 INFO L290 TraceCheckUtils]: 8: Hoare triple {52#true} [104] L6-->L6-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {53#false} is VALID [2022-04-14 20:08:21,209 INFO L290 TraceCheckUtils]: 9: Hoare triple {53#false} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {53#false} is VALID [2022-04-14 20:08:21,209 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {53#false} {52#true} [142] assume_abort_if_notEXIT-->L38-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (and (< v_main_~n~0_7 1073741824) (<= 0 v_main_~n~0_7)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~n~0=v_main_~n~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~n~0, assume_abort_if_not_#in~cond] {53#false} is VALID [2022-04-14 20:08:21,209 INFO L290 TraceCheckUtils]: 11: Hoare triple {53#false} [101] L38-1-->L39: Formula: (and (= |v_#valid_3| (store |v_#valid_4| |v_main_#t~malloc15.base_1| 1)) (not (= |v_main_#t~malloc15.base_1| 0)) (= |v_#length_1| (store |v_#length_2| |v_main_#t~malloc15.base_1| (* v_main_~n~0_5 4))) (< |v_main_#t~malloc15.base_1| |v_#StackHeapBarrier_1|) (= (select |v_#valid_4| |v_main_#t~malloc15.base_1|) 0) (= |v_main_#t~malloc15.offset_1| 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_2|, main_~n~0=v_main_~n~0_5, #valid=|v_#valid_4|} OutVars{main_#t~malloc15.offset=|v_main_#t~malloc15.offset_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_3|, #length=|v_#length_1|, main_~n~0=v_main_~n~0_5, main_#t~malloc15.base=|v_main_#t~malloc15.base_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #valid, #length, main_#t~malloc15.base] {53#false} is VALID [2022-04-14 20:08:21,209 INFO L272 TraceCheckUtils]: 12: Hoare triple {53#false} [103] L39-->#Ultimate.meminitENTRY: Formula: (and (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_main_#t~malloc15.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= v_main_~n~0_8 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#productInParam_1| (* v_main_~n~0_8 4)) (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_main_#t~malloc15.offset_4|)) InVars {main_#t~malloc15.offset=|v_main_#t~malloc15.offset_4|, main_~n~0=v_main_~n~0_8, main_#t~malloc15.base=|v_main_#t~malloc15.base_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, #Ultimate.meminit_#product, main_~n~0, #Ultimate.meminit_#ptr.base, main_#t~malloc15.base, #Ultimate.meminit_#ptr.offset] {78#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-04-14 20:08:21,210 INFO L290 TraceCheckUtils]: 13: Hoare triple {78#(= |#memory_int| |old(#memory_int)|)} [107] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_10| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_9|) InVars {#memory_int=|v_#memory_int_10|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_9|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {52#true} is VALID [2022-04-14 20:08:21,210 INFO L290 TraceCheckUtils]: 14: Hoare triple {52#true} [110] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52#true} is VALID [2022-04-14 20:08:21,210 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {52#true} {53#false} [145] #Ultimate.meminitEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_main_#t~malloc15.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= v_main_~n~0_8 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#productInParam_1| (* v_main_~n~0_8 4)) (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_main_#t~malloc15.offset_4|)) InVars {main_#t~malloc15.offset=|v_main_#t~malloc15.offset_4|, main_~n~0=v_main_~n~0_8, main_#t~malloc15.base=|v_main_#t~malloc15.base_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, #Ultimate.meminit_#product, main_~n~0, #Ultimate.meminit_#ptr.base, main_#t~malloc15.base, #Ultimate.meminit_#ptr.offset] {53#false} is VALID [2022-04-14 20:08:21,210 INFO L290 TraceCheckUtils]: 16: Hoare triple {53#false} [106] L39-1-->L43: Formula: (and (<= |v_main_#t~nondet17_2| 2147483647) (= v_main_~a~0.offset_4 |v_main_#t~malloc15.offset_3|) (<= 0 (+ |v_main_#t~nondet16_2| 2147483648)) (= v_main_~y~0_3 |v_main_#t~nondet17_2|) (= v_main_~x~0_3 |v_main_#t~nondet16_2|) (<= |v_main_#t~nondet16_2| 2147483647) (<= 0 (+ |v_main_#t~nondet17_2| 2147483648)) (= v_main_~a~0.base_4 |v_main_#t~malloc15.base_3|)) InVars {main_#t~nondet16=|v_main_#t~nondet16_2|, main_#t~malloc15.offset=|v_main_#t~malloc15.offset_3|, main_#t~malloc15.base=|v_main_#t~malloc15.base_3|, main_#t~nondet17=|v_main_#t~nondet17_2|} OutVars{main_#t~malloc15.offset=|v_main_#t~malloc15.offset_3|, main_~x~0=v_main_~x~0_3, main_~a~0.base=v_main_~a~0.base_4, main_~y~0=v_main_~y~0_3, main_#t~malloc15.base=|v_main_#t~malloc15.base_3|, main_~a~0.offset=v_main_~a~0.offset_4} AuxVars[] AssignedVars[main_#t~nondet16, main_~x~0, main_#t~nondet17, main_~a~0.base, main_~y~0, main_~a~0.offset] {53#false} is VALID [2022-04-14 20:08:21,210 INFO L272 TraceCheckUtils]: 17: Hoare triple {53#false} [109] L43-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_5) (<= 0 v_main_~x~0_5)) 1 0)) InVars {main_~x~0=v_main_~x~0_5, main_~y~0=v_main_~y~0_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, assume_abort_if_not_#in~cond] {52#true} is VALID [2022-04-14 20:08:21,211 INFO L290 TraceCheckUtils]: 18: Hoare triple {52#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {52#true} is VALID [2022-04-14 20:08:21,212 INFO L290 TraceCheckUtils]: 19: Hoare triple {52#true} [104] L6-->L6-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {53#false} is VALID [2022-04-14 20:08:21,212 INFO L290 TraceCheckUtils]: 20: Hoare triple {53#false} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {53#false} is VALID [2022-04-14 20:08:21,212 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {53#false} {53#false} [143] assume_abort_if_notEXIT-->L43-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_5) (<= 0 v_main_~x~0_5)) 1 0)) InVars {main_~x~0=v_main_~x~0_5, main_~y~0=v_main_~y~0_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, assume_abort_if_not_#in~cond] {53#false} is VALID [2022-04-14 20:08:21,212 INFO L272 TraceCheckUtils]: 22: Hoare triple {53#false} [111] L43-1-->lcpENTRY: Formula: (and (= v_main_~y~0_6 |v_lcp_#in~yInParam_1|) (= |v_lcp_#in~nInParam_1| v_main_~n~0_9) (= v_main_~x~0_6 |v_lcp_#in~xInParam_1|) (= |v_lcp_#in~a.offsetInParam_1| v_main_~a~0.offset_5) (= |v_lcp_#in~a.baseInParam_1| v_main_~a~0.base_5)) InVars {main_~a~0.base=v_main_~a~0.base_5, main_~y~0=v_main_~y~0_6, main_~n~0=v_main_~n~0_9, main_~x~0=v_main_~x~0_6, main_~a~0.offset=v_main_~a~0.offset_5} OutVars{lcp_#in~a.base=|v_lcp_#in~a.baseInParam_1|, lcp_#in~a.offset=|v_lcp_#in~a.offsetInParam_1|, lcp_#in~n=|v_lcp_#in~nInParam_1|, lcp_#in~y=|v_lcp_#in~yInParam_1|, lcp_#in~x=|v_lcp_#in~xInParam_1|} AuxVars[] AssignedVars[lcp_#in~a.offset, lcp_#in~y, main_~x~0, lcp_#in~x, lcp_#in~a.base, main_~a~0.base, lcp_#in~n, main_~y~0, main_~n~0, main_~a~0.offset] {52#true} is VALID [2022-04-14 20:08:21,212 INFO L290 TraceCheckUtils]: 23: Hoare triple {52#true} [114] lcpENTRY-->L18-5: Formula: (and (= v_lcp_~a.base_1 |v_lcp_#in~a.base_1|) (= v_lcp_~n_1 |v_lcp_#in~n_1|) (= v_lcp_~l~0_1 0) (= v_lcp_~x_1 |v_lcp_#in~x_1|) (= v_lcp_~y_1 |v_lcp_#in~y_1|) (= |v_lcp_#in~a.offset_1| v_lcp_~a.offset_1)) InVars {lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_#in~y=|v_lcp_#in~y_1|, lcp_#in~x=|v_lcp_#in~x_1|} OutVars{lcp_~x=v_lcp_~x_1, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_~l~0=v_lcp_~l~0_1, lcp_~a.offset=v_lcp_~a.offset_1, lcp_~y=v_lcp_~y_1, lcp_#in~y=|v_lcp_#in~y_1|, lcp_~a.base=v_lcp_~a.base_1, lcp_#in~x=|v_lcp_#in~x_1|, lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_~n=v_lcp_~n_1} AuxVars[] AssignedVars[lcp_~x, lcp_~l~0, lcp_~a.offset, lcp_~y, lcp_~a.base, lcp_~n] {52#true} is VALID [2022-04-14 20:08:21,213 INFO L290 TraceCheckUtils]: 24: Hoare triple {52#true} [117] L18-5-->L18-6: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {53#false} is VALID [2022-04-14 20:08:21,216 INFO L290 TraceCheckUtils]: 25: Hoare triple {53#false} [123] L18-6-->lcpFINAL: Formula: (= |v_lcp_#res_1| v_lcp_~l~0_4) InVars {lcp_~l~0=v_lcp_~l~0_4} OutVars{lcp_#res=|v_lcp_#res_1|, lcp_~l~0=v_lcp_~l~0_4} AuxVars[] AssignedVars[lcp_#res] {53#false} is VALID [2022-04-14 20:08:21,217 INFO L290 TraceCheckUtils]: 26: Hoare triple {53#false} [132] lcpFINAL-->lcpEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {53#false} is VALID [2022-04-14 20:08:21,217 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {53#false} {53#false} [147] lcpEXIT-->L44: AOR: Formula: (= |v_lcp_#resOutParam_1| |v_main_#t~ret18_4|) InVars {lcp_#res=|v_lcp_#resOutParam_1|} OutVars{main_#t~ret18=|v_main_#t~ret18_4|} AuxVars[] AssignedVars[main_#t~ret18, lcp_#res] LVA: Formula: (and (= v_main_~y~0_6 |v_lcp_#in~yInParam_1|) (= |v_lcp_#in~nInParam_1| v_main_~n~0_9) (= v_main_~x~0_6 |v_lcp_#in~xInParam_1|) (= |v_lcp_#in~a.offsetInParam_1| v_main_~a~0.offset_5) (= |v_lcp_#in~a.baseInParam_1| v_main_~a~0.base_5)) InVars {main_~a~0.base=v_main_~a~0.base_5, main_~y~0=v_main_~y~0_6, main_~n~0=v_main_~n~0_9, main_~x~0=v_main_~x~0_6, main_~a~0.offset=v_main_~a~0.offset_5} OutVars{lcp_#in~a.base=|v_lcp_#in~a.baseInParam_1|, lcp_#in~a.offset=|v_lcp_#in~a.offsetInParam_1|, lcp_#in~n=|v_lcp_#in~nInParam_1|, lcp_#in~y=|v_lcp_#in~yInParam_1|, lcp_#in~x=|v_lcp_#in~xInParam_1|} AuxVars[] AssignedVars[lcp_#in~a.offset, lcp_#in~y, main_~x~0, lcp_#in~x, lcp_#in~a.base, main_~a~0.base, lcp_#in~n, main_~y~0, main_~n~0, main_~a~0.offset] {53#false} is VALID [2022-04-14 20:08:21,217 INFO L290 TraceCheckUtils]: 28: Hoare triple {53#false} [113] L44-->L45: Formula: (and (<= |v_main_#t~ret18_3| 2147483647) (= v_main_~l~1_1 |v_main_#t~ret18_3|) (<= 0 (+ |v_main_#t~ret18_3| 2147483648))) InVars {main_#t~ret18=|v_main_#t~ret18_3|} OutVars{main_~l~1=v_main_~l~1_1} AuxVars[] AssignedVars[main_#t~ret18, main_~l~1] {53#false} is VALID [2022-04-14 20:08:21,218 INFO L272 TraceCheckUtils]: 29: Hoare triple {53#false} [116] L45-->checkENTRY: Formula: (and (= v_main_~n~0_10 |v_check_#in~nInParam_1|) (= |v_check_#in~a.baseInParam_1| v_main_~a~0.base_6) (= v_main_~y~0_7 |v_check_#in~yInParam_1|) (= v_main_~x~0_7 |v_check_#in~xInParam_1|) (= |v_check_#in~a.offsetInParam_1| v_main_~a~0.offset_6) (= |v_check_#in~lInParam_1| v_main_~l~1_3)) InVars {main_~x~0=v_main_~x~0_7, main_~l~1=v_main_~l~1_3, main_~a~0.base=v_main_~a~0.base_6, main_~y~0=v_main_~y~0_7, main_~n~0=v_main_~n~0_10, main_~a~0.offset=v_main_~a~0.offset_6} OutVars{check_#in~y=|v_check_#in~yInParam_1|, check_#in~x=|v_check_#in~xInParam_1|, check_#in~a.offset=|v_check_#in~a.offsetInParam_1|, check_#in~a.base=|v_check_#in~a.baseInParam_1|, check_#in~l=|v_check_#in~lInParam_1|, check_#in~n=|v_check_#in~nInParam_1|} AuxVars[] AssignedVars[check_#in~y, check_#in~x, check_#in~a.offset, main_~x~0, main_~l~1, check_#in~a.base, main_~a~0.base, main_~y~0, main_~n~0, check_#in~l, main_~a~0.offset, check_#in~n] {53#false} is VALID [2022-04-14 20:08:21,218 INFO L290 TraceCheckUtils]: 30: Hoare triple {53#false} [122] checkENTRY-->L27: Formula: (and (= v_check_~x_2 |v_check_#in~x_1|) (= |v_check_#in~a.offset_1| v_check_~a.offset_1) (= v_check_~i~0_1 |v_check_#t~nondet9_2|) (= v_check_~l_2 |v_check_#in~l_1|) (= v_check_~n_2 |v_check_#in~n_1|) (= v_check_~a.base_1 |v_check_#in~a.base_1|) (<= 0 (+ 2147483648 |v_check_#t~nondet9_2|)) (= v_check_~y_2 |v_check_#in~y_1|) (<= |v_check_#t~nondet9_2| 2147483647)) InVars {check_#in~y=|v_check_#in~y_1|, check_#in~x=|v_check_#in~x_1|, check_#in~a.offset=|v_check_#in~a.offset_1|, check_#in~a.base=|v_check_#in~a.base_1|, check_#in~l=|v_check_#in~l_1|, check_#t~nondet9=|v_check_#t~nondet9_2|, check_#in~n=|v_check_#in~n_1|} OutVars{check_#in~y=|v_check_#in~y_1|, check_#in~x=|v_check_#in~x_1|, check_#in~a.offset=|v_check_#in~a.offset_1|, check_~a.base=v_check_~a.base_1, check_~i~0=v_check_~i~0_1, check_~y=v_check_~y_2, check_~x=v_check_~x_2, check_~a.offset=v_check_~a.offset_1, check_#in~a.base=|v_check_#in~a.base_1|, check_#in~l=|v_check_#in~l_1|, check_~n=v_check_~n_2, check_#in~n=|v_check_#in~n_1|, check_~l=v_check_~l_2} AuxVars[] AssignedVars[check_~y, check_~x, check_~a.base, check_~a.offset, check_~i~0, check_~n, check_#t~nondet9, check_~l] {53#false} is VALID [2022-04-14 20:08:21,218 INFO L272 TraceCheckUtils]: 31: Hoare triple {53#false} [131] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (and (<= 0 v_check_~i~0_4) (< v_check_~i~0_4 v_check_~l_5)) 1 0)) InVars {check_~i~0=v_check_~i~0_4, check_~l=v_check_~l_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[check_~i~0, assume_abort_if_not_#in~cond, check_~l] {52#true} is VALID [2022-04-14 20:08:21,220 INFO L290 TraceCheckUtils]: 32: Hoare triple {52#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {52#true} is VALID [2022-04-14 20:08:21,221 INFO L290 TraceCheckUtils]: 33: Hoare triple {52#true} [104] L6-->L6-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {53#false} is VALID [2022-04-14 20:08:21,221 INFO L290 TraceCheckUtils]: 34: Hoare triple {53#false} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {53#false} is VALID [2022-04-14 20:08:21,222 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {53#false} {53#false} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (and (<= 0 v_check_~i~0_4) (< v_check_~i~0_4 v_check_~l_5)) 1 0)) InVars {check_~i~0=v_check_~i~0_4, check_~l=v_check_~l_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[check_~i~0, assume_abort_if_not_#in~cond, check_~l] {53#false} is VALID [2022-04-14 20:08:21,222 INFO L290 TraceCheckUtils]: 36: Hoare triple {53#false} [112] L27-1-->L28: Formula: (let ((.cse0 (select |v_#memory_int_3| v_check_~a.base_2)) (.cse1 (* v_check_~i~0_3 4))) (and (= (select .cse0 (+ (* v_check_~y_3 4) v_check_~a.offset_2 .cse1)) |v_check_#t~mem11_1|) (= (select .cse0 (+ (* v_check_~x_3 4) v_check_~a.offset_2 .cse1)) |v_check_#t~mem10_1|))) InVars {check_~y=v_check_~y_3, check_~x=v_check_~x_3, check_~a.base=v_check_~a.base_2, check_~a.offset=v_check_~a.offset_2, check_~i~0=v_check_~i~0_3, #memory_int=|v_#memory_int_3|} OutVars{check_~y=v_check_~y_3, check_~x=v_check_~x_3, check_#t~mem10=|v_check_#t~mem10_1|, check_~a.base=v_check_~a.base_2, check_~a.offset=v_check_~a.offset_2, check_~i~0=v_check_~i~0_3, check_#t~mem11=|v_check_#t~mem11_1|, #memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[check_#t~mem10, check_#t~mem11] {53#false} is VALID [2022-04-14 20:08:21,222 INFO L272 TraceCheckUtils]: 37: Hoare triple {53#false} [115] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= |v_check_#t~mem11_4| |v_check_#t~mem10_4|) 1 0)) InVars {check_#t~mem10=|v_check_#t~mem10_4|, check_#t~mem11=|v_check_#t~mem11_4|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, check_#t~mem10, check_#t~mem11] {53#false} is VALID [2022-04-14 20:08:21,222 INFO L290 TraceCheckUtils]: 38: Hoare triple {53#false} [120] __VERIFIER_assertENTRY-->L13: 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] {53#false} is VALID [2022-04-14 20:08:21,223 INFO L290 TraceCheckUtils]: 39: Hoare triple {53#false} [128] L13-->L13-1: 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[] {53#false} is VALID [2022-04-14 20:08:21,223 INFO L290 TraceCheckUtils]: 40: Hoare triple {53#false} [137] L13-1-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {53#false} is VALID [2022-04-14 20:08:21,223 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-14 20:08:21,224 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:08:21,224 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [59700161] [2022-04-14 20:08:21,224 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [59700161] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 20:08:21,225 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 20:08:21,225 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-14 20:08:21,226 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1644574494] [2022-04-14 20:08:21,226 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:08:21,229 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 5.0) internal successors, (20), 2 states have internal predecessors, (20), 2 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 41 [2022-04-14 20:08:21,231 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:08:21,234 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 5.0) internal successors, (20), 2 states have internal predecessors, (20), 2 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-14 20:08:21,275 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:08:21,276 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-14 20:08:21,276 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:08:21,295 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-14 20:08:21,296 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-14 20:08:21,298 INFO L87 Difference]: Start difference. First operand has 49 states, 30 states have (on average 1.2333333333333334) internal successors, (37), 31 states have internal predecessors, (37), 10 states have call successors, (10), 7 states have call predecessors, (10), 7 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand has 4 states, 4 states have (on average 5.0) internal successors, (20), 2 states have internal predecessors, (20), 2 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-14 20:08:21,593 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:08:21,593 INFO L93 Difference]: Finished difference Result 49 states and 54 transitions. [2022-04-14 20:08:21,593 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 20:08:21,593 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 5.0) internal successors, (20), 2 states have internal predecessors, (20), 2 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 41 [2022-04-14 20:08:21,594 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:08:21,594 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 5.0) internal successors, (20), 2 states have internal predecessors, (20), 2 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-14 20:08:21,600 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 57 transitions. [2022-04-14 20:08:21,601 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 5.0) internal successors, (20), 2 states have internal predecessors, (20), 2 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-14 20:08:21,603 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 57 transitions. [2022-04-14 20:08:21,603 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 57 transitions. [2022-04-14 20:08:21,662 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:08:21,671 INFO L225 Difference]: With dead ends: 49 [2022-04-14 20:08:21,671 INFO L226 Difference]: Without dead ends: 41 [2022-04-14 20:08:21,672 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 17 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-04-14 20:08:21,674 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 56 mSDsluCounter, 2 mSDsCounter, 0 mSdLazyCounter, 29 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 59 SdHoareTripleChecker+Valid, 43 SdHoareTripleChecker+Invalid, 59 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 29 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 20:08:21,675 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [59 Valid, 43 Invalid, 59 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 29 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 20:08:21,685 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 41 states. [2022-04-14 20:08:21,692 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 41 to 41. [2022-04-14 20:08:21,693 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:08:21,693 INFO L82 GeneralOperation]: Start isEquivalent. First operand 41 states. Second operand has 41 states, 25 states have (on average 1.12) internal successors, (28), 26 states have internal predecessors, (28), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 20:08:21,694 INFO L74 IsIncluded]: Start isIncluded. First operand 41 states. Second operand has 41 states, 25 states have (on average 1.12) internal successors, (28), 26 states have internal predecessors, (28), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 20:08:21,694 INFO L87 Difference]: Start difference. First operand 41 states. Second operand has 41 states, 25 states have (on average 1.12) internal successors, (28), 26 states have internal predecessors, (28), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 20:08:21,697 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:08:21,697 INFO L93 Difference]: Finished difference Result 41 states and 45 transitions. [2022-04-14 20:08:21,698 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 45 transitions. [2022-04-14 20:08:21,698 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:08:21,698 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:08:21,698 INFO L74 IsIncluded]: Start isIncluded. First operand has 41 states, 25 states have (on average 1.12) internal successors, (28), 26 states have internal predecessors, (28), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 41 states. [2022-04-14 20:08:21,699 INFO L87 Difference]: Start difference. First operand has 41 states, 25 states have (on average 1.12) internal successors, (28), 26 states have internal predecessors, (28), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 41 states. [2022-04-14 20:08:21,701 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:08:21,702 INFO L93 Difference]: Finished difference Result 41 states and 45 transitions. [2022-04-14 20:08:21,702 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 45 transitions. [2022-04-14 20:08:21,702 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:08:21,702 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:08:21,702 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:08:21,702 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:08:21,703 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 25 states have (on average 1.12) internal successors, (28), 26 states have internal predecessors, (28), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 20:08:21,705 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 45 transitions. [2022-04-14 20:08:21,705 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 45 transitions. Word has length 41 [2022-04-14 20:08:21,706 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:08:21,706 INFO L478 AbstractCegarLoop]: Abstraction has 41 states and 45 transitions. [2022-04-14 20:08:21,706 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 5.0) internal successors, (20), 2 states have internal predecessors, (20), 2 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-14 20:08:21,706 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 45 transitions. [2022-04-14 20:08:21,707 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-14 20:08:21,707 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:08:21,707 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:08:21,707 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-14 20:08:21,707 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:08:21,708 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:08:21,708 INFO L85 PathProgramCache]: Analyzing trace with hash -345645567, now seen corresponding path program 1 times [2022-04-14 20:08:21,708 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:08:21,708 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [552541621] [2022-04-14 20:08:21,708 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:08:21,708 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:08:21,756 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:21,807 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-14 20:08:21,824 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:21,828 INFO L290 TraceCheckUtils]: 0: Hoare triple {285#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [96] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_5| 1)) (.cse1 (select |v_#memory_int_5| 2))) (and (= (select .cse0 0) 48) (= (select |v_#valid_5| 1) 1) (= (select .cse1 3) 46) (= 2 (select |v_#length_3| 1)) (< 0 |v_#StackHeapBarrier_2|) (= 112 (select .cse1 2)) (= |v_#NULL.base_1| 0) (= (select |v_#valid_5| 2) 1) (= 108 (select .cse1 0)) (= (select .cse1 1) 99) (= (select .cse0 1) 0) (= 1 (select |v_#valid_5| 3)) (= (select .cse1 4) 99) (= (select .cse1 5) 0) (= 6 (select |v_#length_3| 2)) (= (select |v_#valid_5| 0) 0) (= |v_#NULL.offset_1| 0) (= 12 (select |v_#length_3| 3)))) InVars {#memory_int=|v_#memory_int_5|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_5|, #memory_int=|v_#memory_int_5|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_3|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {256#true} is VALID [2022-04-14 20:08:21,829 INFO L290 TraceCheckUtils]: 1: Hoare triple {256#true} [99] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {256#true} is VALID [2022-04-14 20:08:21,829 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {256#true} {256#true} [141] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {256#true} is VALID [2022-04-14 20:08:21,829 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-14 20:08:21,830 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:21,833 INFO L290 TraceCheckUtils]: 0: Hoare triple {256#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {256#true} is VALID [2022-04-14 20:08:21,833 INFO L290 TraceCheckUtils]: 1: Hoare triple {256#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {256#true} is VALID [2022-04-14 20:08:21,833 INFO L290 TraceCheckUtils]: 2: Hoare triple {256#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {256#true} is VALID [2022-04-14 20:08:21,833 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {256#true} {256#true} [142] assume_abort_if_notEXIT-->L38-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (and (< v_main_~n~0_7 1073741824) (<= 0 v_main_~n~0_7)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~n~0=v_main_~n~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~n~0, assume_abort_if_not_#in~cond] {256#true} is VALID [2022-04-14 20:08:21,837 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-14 20:08:21,840 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:21,853 INFO L290 TraceCheckUtils]: 0: Hoare triple {286#(= |#memory_int| |old(#memory_int)|)} [107] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_10| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_9|) InVars {#memory_int=|v_#memory_int_10|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_9|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {287#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} is VALID [2022-04-14 20:08:21,854 INFO L290 TraceCheckUtils]: 1: Hoare triple {287#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} [110] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {287#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} is VALID [2022-04-14 20:08:21,855 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {287#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} {256#true} [145] #Ultimate.meminitEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_main_#t~malloc15.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= v_main_~n~0_8 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#productInParam_1| (* v_main_~n~0_8 4)) (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_main_#t~malloc15.offset_4|)) InVars {main_#t~malloc15.offset=|v_main_#t~malloc15.offset_4|, main_~n~0=v_main_~n~0_8, main_#t~malloc15.base=|v_main_#t~malloc15.base_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, #Ultimate.meminit_#product, main_~n~0, #Ultimate.meminit_#ptr.base, main_#t~malloc15.base, #Ultimate.meminit_#ptr.offset] {268#(= ((as const (Array Int Int)) 0) (select |#memory_int| |main_#t~malloc15.base|))} is VALID [2022-04-14 20:08:21,855 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-14 20:08:21,857 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:21,863 INFO L290 TraceCheckUtils]: 0: Hoare triple {256#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {256#true} is VALID [2022-04-14 20:08:21,863 INFO L290 TraceCheckUtils]: 1: Hoare triple {256#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {256#true} is VALID [2022-04-14 20:08:21,863 INFO L290 TraceCheckUtils]: 2: Hoare triple {256#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {256#true} is VALID [2022-04-14 20:08:21,864 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {256#true} {269#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} [143] assume_abort_if_notEXIT-->L43-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_5) (<= 0 v_main_~x~0_5)) 1 0)) InVars {main_~x~0=v_main_~x~0_5, main_~y~0=v_main_~y~0_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, assume_abort_if_not_#in~cond] {269#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} is VALID [2022-04-14 20:08:21,865 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-14 20:08:21,888 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:21,934 INFO L290 TraceCheckUtils]: 0: Hoare triple {256#true} [114] lcpENTRY-->L18-5: Formula: (and (= v_lcp_~a.base_1 |v_lcp_#in~a.base_1|) (= v_lcp_~n_1 |v_lcp_#in~n_1|) (= v_lcp_~l~0_1 0) (= v_lcp_~x_1 |v_lcp_#in~x_1|) (= v_lcp_~y_1 |v_lcp_#in~y_1|) (= |v_lcp_#in~a.offset_1| v_lcp_~a.offset_1)) InVars {lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_#in~y=|v_lcp_#in~y_1|, lcp_#in~x=|v_lcp_#in~x_1|} OutVars{lcp_~x=v_lcp_~x_1, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_~l~0=v_lcp_~l~0_1, lcp_~a.offset=v_lcp_~a.offset_1, lcp_~y=v_lcp_~y_1, lcp_#in~y=|v_lcp_#in~y_1|, lcp_~a.base=v_lcp_~a.base_1, lcp_#in~x=|v_lcp_#in~x_1|, lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_~n=v_lcp_~n_1} AuxVars[] AssignedVars[lcp_~x, lcp_~l~0, lcp_~a.offset, lcp_~y, lcp_~a.base, lcp_~n] {288#(= |lcp_#in~a.base| lcp_~a.base)} is VALID [2022-04-14 20:08:21,935 INFO L290 TraceCheckUtils]: 1: Hoare triple {288#(= |lcp_#in~a.base| lcp_~a.base)} [118] L18-5-->L18-1: Formula: (let ((.cse1 (< (+ v_lcp_~y_2 v_lcp_~l~0_5) v_lcp_~n_2)) (.cse0 (< (+ v_lcp_~x_2 v_lcp_~l~0_5) v_lcp_~n_2))) (or (and (or (not .cse0) (not .cse1)) (not |v_lcp_#t~short7_5|)) (and .cse1 .cse0 |v_lcp_#t~short7_5|))) InVars {lcp_~x=v_lcp_~x_2, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} OutVars{lcp_~x=v_lcp_~x_2, lcp_#t~short7=|v_lcp_#t~short7_5|, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} AuxVars[] AssignedVars[lcp_#t~short7] {288#(= |lcp_#in~a.base| lcp_~a.base)} is VALID [2022-04-14 20:08:21,936 INFO L290 TraceCheckUtils]: 2: Hoare triple {288#(= |lcp_#in~a.base| lcp_~a.base)} [124] L18-1-->L18-3: Formula: (let ((.cse0 (select |v_#memory_int_6| v_lcp_~a.base_2)) (.cse1 (* v_lcp_~l~0_6 4))) (and (= (select .cse0 (+ v_lcp_~a.offset_2 .cse1 (* v_lcp_~y_3 4))) |v_lcp_#t~mem6_3|) (let ((.cse2 (= |v_lcp_#t~mem6_3| |v_lcp_#t~mem5_3|))) (or (and (not |v_lcp_#t~short7_6|) (not .cse2)) (and .cse2 |v_lcp_#t~short7_6|))) (= |v_lcp_#t~mem5_3| (select .cse0 (+ v_lcp_~a.offset_2 .cse1 (* v_lcp_~x_3 4)))) |v_lcp_#t~short7_7|)) InVars {lcp_~x=v_lcp_~x_3, lcp_~a.offset=v_lcp_~a.offset_2, lcp_~l~0=v_lcp_~l~0_6, lcp_~y=v_lcp_~y_3, lcp_~a.base=v_lcp_~a.base_2, #memory_int=|v_#memory_int_6|, lcp_#t~short7=|v_lcp_#t~short7_7|} OutVars{lcp_~x=v_lcp_~x_3, lcp_~a.offset=v_lcp_~a.offset_2, lcp_~l~0=v_lcp_~l~0_6, lcp_~y=v_lcp_~y_3, lcp_~a.base=v_lcp_~a.base_2, lcp_#t~mem6=|v_lcp_#t~mem6_3|, #memory_int=|v_#memory_int_6|, lcp_#t~short7=|v_lcp_#t~short7_6|, lcp_#t~mem5=|v_lcp_#t~mem5_3|} AuxVars[] AssignedVars[lcp_#t~mem6, lcp_#t~short7, lcp_#t~mem5] {289#(or |lcp_#t~short7| (not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|))))} is VALID [2022-04-14 20:08:21,936 INFO L290 TraceCheckUtils]: 3: Hoare triple {289#(or |lcp_#t~short7| (not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|))))} [133] L18-3-->L18-6: Formula: (not |v_lcp_#t~short7_2|) InVars {lcp_#t~short7=|v_lcp_#t~short7_2|} OutVars{lcp_#t~mem6=|v_lcp_#t~mem6_1|, lcp_#t~mem5=|v_lcp_#t~mem5_1|} AuxVars[] AssignedVars[lcp_#t~mem6, lcp_#t~mem5, lcp_#t~short7] {290#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} is VALID [2022-04-14 20:08:21,937 INFO L290 TraceCheckUtils]: 4: Hoare triple {290#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} [123] L18-6-->lcpFINAL: Formula: (= |v_lcp_#res_1| v_lcp_~l~0_4) InVars {lcp_~l~0=v_lcp_~l~0_4} OutVars{lcp_#res=|v_lcp_#res_1|, lcp_~l~0=v_lcp_~l~0_4} AuxVars[] AssignedVars[lcp_#res] {290#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} is VALID [2022-04-14 20:08:21,938 INFO L290 TraceCheckUtils]: 5: Hoare triple {290#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} [132] lcpFINAL-->lcpEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {290#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} is VALID [2022-04-14 20:08:21,939 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {290#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} {269#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} [147] lcpEXIT-->L44: AOR: Formula: (= |v_lcp_#resOutParam_1| |v_main_#t~ret18_4|) InVars {lcp_#res=|v_lcp_#resOutParam_1|} OutVars{main_#t~ret18=|v_main_#t~ret18_4|} AuxVars[] AssignedVars[main_#t~ret18, lcp_#res] LVA: Formula: (and (= v_main_~y~0_6 |v_lcp_#in~yInParam_1|) (= |v_lcp_#in~nInParam_1| v_main_~n~0_9) (= v_main_~x~0_6 |v_lcp_#in~xInParam_1|) (= |v_lcp_#in~a.offsetInParam_1| v_main_~a~0.offset_5) (= |v_lcp_#in~a.baseInParam_1| v_main_~a~0.base_5)) InVars {main_~a~0.base=v_main_~a~0.base_5, main_~y~0=v_main_~y~0_6, main_~n~0=v_main_~n~0_9, main_~x~0=v_main_~x~0_6, main_~a~0.offset=v_main_~a~0.offset_5} OutVars{lcp_#in~a.base=|v_lcp_#in~a.baseInParam_1|, lcp_#in~a.offset=|v_lcp_#in~a.offsetInParam_1|, lcp_#in~n=|v_lcp_#in~nInParam_1|, lcp_#in~y=|v_lcp_#in~yInParam_1|, lcp_#in~x=|v_lcp_#in~xInParam_1|} AuxVars[] AssignedVars[lcp_#in~a.offset, lcp_#in~y, main_~x~0, lcp_#in~x, lcp_#in~a.base, main_~a~0.base, lcp_#in~n, main_~y~0, main_~n~0, main_~a~0.offset] {257#false} is VALID [2022-04-14 20:08:21,940 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 33 [2022-04-14 20:08:21,942 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:21,949 INFO L290 TraceCheckUtils]: 0: Hoare triple {256#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {256#true} is VALID [2022-04-14 20:08:21,950 INFO L290 TraceCheckUtils]: 1: Hoare triple {256#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {256#true} is VALID [2022-04-14 20:08:21,950 INFO L290 TraceCheckUtils]: 2: Hoare triple {256#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {256#true} is VALID [2022-04-14 20:08:21,950 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {256#true} {257#false} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (and (<= 0 v_check_~i~0_4) (< v_check_~i~0_4 v_check_~l_5)) 1 0)) InVars {check_~i~0=v_check_~i~0_4, check_~l=v_check_~l_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[check_~i~0, assume_abort_if_not_#in~cond, check_~l] {257#false} is VALID [2022-04-14 20:08:21,951 INFO L272 TraceCheckUtils]: 0: Hoare triple {256#true} [94] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {285#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-14 20:08:21,952 INFO L290 TraceCheckUtils]: 1: Hoare triple {285#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [96] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_5| 1)) (.cse1 (select |v_#memory_int_5| 2))) (and (= (select .cse0 0) 48) (= (select |v_#valid_5| 1) 1) (= (select .cse1 3) 46) (= 2 (select |v_#length_3| 1)) (< 0 |v_#StackHeapBarrier_2|) (= 112 (select .cse1 2)) (= |v_#NULL.base_1| 0) (= (select |v_#valid_5| 2) 1) (= 108 (select .cse1 0)) (= (select .cse1 1) 99) (= (select .cse0 1) 0) (= 1 (select |v_#valid_5| 3)) (= (select .cse1 4) 99) (= (select .cse1 5) 0) (= 6 (select |v_#length_3| 2)) (= (select |v_#valid_5| 0) 0) (= |v_#NULL.offset_1| 0) (= 12 (select |v_#length_3| 3)))) InVars {#memory_int=|v_#memory_int_5|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_5|, #memory_int=|v_#memory_int_5|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_3|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {256#true} is VALID [2022-04-14 20:08:21,952 INFO L290 TraceCheckUtils]: 2: Hoare triple {256#true} [99] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {256#true} is VALID [2022-04-14 20:08:21,952 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {256#true} {256#true} [141] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {256#true} is VALID [2022-04-14 20:08:21,952 INFO L272 TraceCheckUtils]: 4: Hoare triple {256#true} [95] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {256#true} is VALID [2022-04-14 20:08:21,953 INFO L290 TraceCheckUtils]: 5: Hoare triple {256#true} [98] mainENTRY-->L38: Formula: (and (<= |v_main_#t~nondet14_2| 2147483647) (= v_main_~n~0_3 |v_main_#t~nondet14_2|) (<= 0 (+ |v_main_#t~nondet14_2| 2147483648))) InVars {main_#t~nondet14=|v_main_#t~nondet14_2|} OutVars{main_~n~0=v_main_~n~0_3} AuxVars[] AssignedVars[main_#t~nondet14, main_~n~0] {256#true} is VALID [2022-04-14 20:08:21,953 INFO L272 TraceCheckUtils]: 6: Hoare triple {256#true} [100] L38-->assume_abort_if_notENTRY: Formula: (= (ite (and (< v_main_~n~0_7 1073741824) (<= 0 v_main_~n~0_7)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~n~0=v_main_~n~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~n~0, assume_abort_if_not_#in~cond] {256#true} is VALID [2022-04-14 20:08:21,953 INFO L290 TraceCheckUtils]: 7: Hoare triple {256#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {256#true} is VALID [2022-04-14 20:08:21,953 INFO L290 TraceCheckUtils]: 8: Hoare triple {256#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {256#true} is VALID [2022-04-14 20:08:21,954 INFO L290 TraceCheckUtils]: 9: Hoare triple {256#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {256#true} is VALID [2022-04-14 20:08:21,954 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {256#true} {256#true} [142] assume_abort_if_notEXIT-->L38-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (and (< v_main_~n~0_7 1073741824) (<= 0 v_main_~n~0_7)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~n~0=v_main_~n~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~n~0, assume_abort_if_not_#in~cond] {256#true} is VALID [2022-04-14 20:08:21,956 INFO L290 TraceCheckUtils]: 11: Hoare triple {256#true} [101] L38-1-->L39: Formula: (and (= |v_#valid_3| (store |v_#valid_4| |v_main_#t~malloc15.base_1| 1)) (not (= |v_main_#t~malloc15.base_1| 0)) (= |v_#length_1| (store |v_#length_2| |v_main_#t~malloc15.base_1| (* v_main_~n~0_5 4))) (< |v_main_#t~malloc15.base_1| |v_#StackHeapBarrier_1|) (= (select |v_#valid_4| |v_main_#t~malloc15.base_1|) 0) (= |v_main_#t~malloc15.offset_1| 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_2|, main_~n~0=v_main_~n~0_5, #valid=|v_#valid_4|} OutVars{main_#t~malloc15.offset=|v_main_#t~malloc15.offset_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_3|, #length=|v_#length_1|, main_~n~0=v_main_~n~0_5, main_#t~malloc15.base=|v_main_#t~malloc15.base_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #valid, #length, main_#t~malloc15.base] {256#true} is VALID [2022-04-14 20:08:21,958 INFO L272 TraceCheckUtils]: 12: Hoare triple {256#true} [103] L39-->#Ultimate.meminitENTRY: Formula: (and (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_main_#t~malloc15.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= v_main_~n~0_8 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#productInParam_1| (* v_main_~n~0_8 4)) (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_main_#t~malloc15.offset_4|)) InVars {main_#t~malloc15.offset=|v_main_#t~malloc15.offset_4|, main_~n~0=v_main_~n~0_8, main_#t~malloc15.base=|v_main_#t~malloc15.base_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, #Ultimate.meminit_#product, main_~n~0, #Ultimate.meminit_#ptr.base, main_#t~malloc15.base, #Ultimate.meminit_#ptr.offset] {286#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-04-14 20:08:21,961 INFO L290 TraceCheckUtils]: 13: Hoare triple {286#(= |#memory_int| |old(#memory_int)|)} [107] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_10| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_9|) InVars {#memory_int=|v_#memory_int_10|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_9|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {287#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} is VALID [2022-04-14 20:08:21,962 INFO L290 TraceCheckUtils]: 14: Hoare triple {287#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} [110] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {287#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} is VALID [2022-04-14 20:08:21,966 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {287#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} {256#true} [145] #Ultimate.meminitEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_main_#t~malloc15.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= v_main_~n~0_8 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#productInParam_1| (* v_main_~n~0_8 4)) (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_main_#t~malloc15.offset_4|)) InVars {main_#t~malloc15.offset=|v_main_#t~malloc15.offset_4|, main_~n~0=v_main_~n~0_8, main_#t~malloc15.base=|v_main_#t~malloc15.base_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, #Ultimate.meminit_#product, main_~n~0, #Ultimate.meminit_#ptr.base, main_#t~malloc15.base, #Ultimate.meminit_#ptr.offset] {268#(= ((as const (Array Int Int)) 0) (select |#memory_int| |main_#t~malloc15.base|))} is VALID [2022-04-14 20:08:21,967 INFO L290 TraceCheckUtils]: 16: Hoare triple {268#(= ((as const (Array Int Int)) 0) (select |#memory_int| |main_#t~malloc15.base|))} [106] L39-1-->L43: Formula: (and (<= |v_main_#t~nondet17_2| 2147483647) (= v_main_~a~0.offset_4 |v_main_#t~malloc15.offset_3|) (<= 0 (+ |v_main_#t~nondet16_2| 2147483648)) (= v_main_~y~0_3 |v_main_#t~nondet17_2|) (= v_main_~x~0_3 |v_main_#t~nondet16_2|) (<= |v_main_#t~nondet16_2| 2147483647) (<= 0 (+ |v_main_#t~nondet17_2| 2147483648)) (= v_main_~a~0.base_4 |v_main_#t~malloc15.base_3|)) InVars {main_#t~nondet16=|v_main_#t~nondet16_2|, main_#t~malloc15.offset=|v_main_#t~malloc15.offset_3|, main_#t~malloc15.base=|v_main_#t~malloc15.base_3|, main_#t~nondet17=|v_main_#t~nondet17_2|} OutVars{main_#t~malloc15.offset=|v_main_#t~malloc15.offset_3|, main_~x~0=v_main_~x~0_3, main_~a~0.base=v_main_~a~0.base_4, main_~y~0=v_main_~y~0_3, main_#t~malloc15.base=|v_main_#t~malloc15.base_3|, main_~a~0.offset=v_main_~a~0.offset_4} AuxVars[] AssignedVars[main_#t~nondet16, main_~x~0, main_#t~nondet17, main_~a~0.base, main_~y~0, main_~a~0.offset] {269#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} is VALID [2022-04-14 20:08:21,967 INFO L272 TraceCheckUtils]: 17: Hoare triple {269#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} [109] L43-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_5) (<= 0 v_main_~x~0_5)) 1 0)) InVars {main_~x~0=v_main_~x~0_5, main_~y~0=v_main_~y~0_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, assume_abort_if_not_#in~cond] {256#true} is VALID [2022-04-14 20:08:21,967 INFO L290 TraceCheckUtils]: 18: Hoare triple {256#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {256#true} is VALID [2022-04-14 20:08:21,967 INFO L290 TraceCheckUtils]: 19: Hoare triple {256#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {256#true} is VALID [2022-04-14 20:08:21,967 INFO L290 TraceCheckUtils]: 20: Hoare triple {256#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {256#true} is VALID [2022-04-14 20:08:21,969 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {256#true} {269#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} [143] assume_abort_if_notEXIT-->L43-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_5) (<= 0 v_main_~x~0_5)) 1 0)) InVars {main_~x~0=v_main_~x~0_5, main_~y~0=v_main_~y~0_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, assume_abort_if_not_#in~cond] {269#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} is VALID [2022-04-14 20:08:21,969 INFO L272 TraceCheckUtils]: 22: Hoare triple {269#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} [111] L43-1-->lcpENTRY: Formula: (and (= v_main_~y~0_6 |v_lcp_#in~yInParam_1|) (= |v_lcp_#in~nInParam_1| v_main_~n~0_9) (= v_main_~x~0_6 |v_lcp_#in~xInParam_1|) (= |v_lcp_#in~a.offsetInParam_1| v_main_~a~0.offset_5) (= |v_lcp_#in~a.baseInParam_1| v_main_~a~0.base_5)) InVars {main_~a~0.base=v_main_~a~0.base_5, main_~y~0=v_main_~y~0_6, main_~n~0=v_main_~n~0_9, main_~x~0=v_main_~x~0_6, main_~a~0.offset=v_main_~a~0.offset_5} OutVars{lcp_#in~a.base=|v_lcp_#in~a.baseInParam_1|, lcp_#in~a.offset=|v_lcp_#in~a.offsetInParam_1|, lcp_#in~n=|v_lcp_#in~nInParam_1|, lcp_#in~y=|v_lcp_#in~yInParam_1|, lcp_#in~x=|v_lcp_#in~xInParam_1|} AuxVars[] AssignedVars[lcp_#in~a.offset, lcp_#in~y, main_~x~0, lcp_#in~x, lcp_#in~a.base, main_~a~0.base, lcp_#in~n, main_~y~0, main_~n~0, main_~a~0.offset] {256#true} is VALID [2022-04-14 20:08:21,970 INFO L290 TraceCheckUtils]: 23: Hoare triple {256#true} [114] lcpENTRY-->L18-5: Formula: (and (= v_lcp_~a.base_1 |v_lcp_#in~a.base_1|) (= v_lcp_~n_1 |v_lcp_#in~n_1|) (= v_lcp_~l~0_1 0) (= v_lcp_~x_1 |v_lcp_#in~x_1|) (= v_lcp_~y_1 |v_lcp_#in~y_1|) (= |v_lcp_#in~a.offset_1| v_lcp_~a.offset_1)) InVars {lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_#in~y=|v_lcp_#in~y_1|, lcp_#in~x=|v_lcp_#in~x_1|} OutVars{lcp_~x=v_lcp_~x_1, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_~l~0=v_lcp_~l~0_1, lcp_~a.offset=v_lcp_~a.offset_1, lcp_~y=v_lcp_~y_1, lcp_#in~y=|v_lcp_#in~y_1|, lcp_~a.base=v_lcp_~a.base_1, lcp_#in~x=|v_lcp_#in~x_1|, lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_~n=v_lcp_~n_1} AuxVars[] AssignedVars[lcp_~x, lcp_~l~0, lcp_~a.offset, lcp_~y, lcp_~a.base, lcp_~n] {288#(= |lcp_#in~a.base| lcp_~a.base)} is VALID [2022-04-14 20:08:21,970 INFO L290 TraceCheckUtils]: 24: Hoare triple {288#(= |lcp_#in~a.base| lcp_~a.base)} [118] L18-5-->L18-1: Formula: (let ((.cse1 (< (+ v_lcp_~y_2 v_lcp_~l~0_5) v_lcp_~n_2)) (.cse0 (< (+ v_lcp_~x_2 v_lcp_~l~0_5) v_lcp_~n_2))) (or (and (or (not .cse0) (not .cse1)) (not |v_lcp_#t~short7_5|)) (and .cse1 .cse0 |v_lcp_#t~short7_5|))) InVars {lcp_~x=v_lcp_~x_2, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} OutVars{lcp_~x=v_lcp_~x_2, lcp_#t~short7=|v_lcp_#t~short7_5|, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} AuxVars[] AssignedVars[lcp_#t~short7] {288#(= |lcp_#in~a.base| lcp_~a.base)} is VALID [2022-04-14 20:08:21,972 INFO L290 TraceCheckUtils]: 25: Hoare triple {288#(= |lcp_#in~a.base| lcp_~a.base)} [124] L18-1-->L18-3: Formula: (let ((.cse0 (select |v_#memory_int_6| v_lcp_~a.base_2)) (.cse1 (* v_lcp_~l~0_6 4))) (and (= (select .cse0 (+ v_lcp_~a.offset_2 .cse1 (* v_lcp_~y_3 4))) |v_lcp_#t~mem6_3|) (let ((.cse2 (= |v_lcp_#t~mem6_3| |v_lcp_#t~mem5_3|))) (or (and (not |v_lcp_#t~short7_6|) (not .cse2)) (and .cse2 |v_lcp_#t~short7_6|))) (= |v_lcp_#t~mem5_3| (select .cse0 (+ v_lcp_~a.offset_2 .cse1 (* v_lcp_~x_3 4)))) |v_lcp_#t~short7_7|)) InVars {lcp_~x=v_lcp_~x_3, lcp_~a.offset=v_lcp_~a.offset_2, lcp_~l~0=v_lcp_~l~0_6, lcp_~y=v_lcp_~y_3, lcp_~a.base=v_lcp_~a.base_2, #memory_int=|v_#memory_int_6|, lcp_#t~short7=|v_lcp_#t~short7_7|} OutVars{lcp_~x=v_lcp_~x_3, lcp_~a.offset=v_lcp_~a.offset_2, lcp_~l~0=v_lcp_~l~0_6, lcp_~y=v_lcp_~y_3, lcp_~a.base=v_lcp_~a.base_2, lcp_#t~mem6=|v_lcp_#t~mem6_3|, #memory_int=|v_#memory_int_6|, lcp_#t~short7=|v_lcp_#t~short7_6|, lcp_#t~mem5=|v_lcp_#t~mem5_3|} AuxVars[] AssignedVars[lcp_#t~mem6, lcp_#t~short7, lcp_#t~mem5] {289#(or |lcp_#t~short7| (not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|))))} is VALID [2022-04-14 20:08:21,973 INFO L290 TraceCheckUtils]: 26: Hoare triple {289#(or |lcp_#t~short7| (not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|))))} [133] L18-3-->L18-6: Formula: (not |v_lcp_#t~short7_2|) InVars {lcp_#t~short7=|v_lcp_#t~short7_2|} OutVars{lcp_#t~mem6=|v_lcp_#t~mem6_1|, lcp_#t~mem5=|v_lcp_#t~mem5_1|} AuxVars[] AssignedVars[lcp_#t~mem6, lcp_#t~mem5, lcp_#t~short7] {290#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} is VALID [2022-04-14 20:08:21,973 INFO L290 TraceCheckUtils]: 27: Hoare triple {290#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} [123] L18-6-->lcpFINAL: Formula: (= |v_lcp_#res_1| v_lcp_~l~0_4) InVars {lcp_~l~0=v_lcp_~l~0_4} OutVars{lcp_#res=|v_lcp_#res_1|, lcp_~l~0=v_lcp_~l~0_4} AuxVars[] AssignedVars[lcp_#res] {290#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} is VALID [2022-04-14 20:08:21,974 INFO L290 TraceCheckUtils]: 28: Hoare triple {290#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} [132] lcpFINAL-->lcpEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {290#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} is VALID [2022-04-14 20:08:21,976 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {290#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} {269#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} [147] lcpEXIT-->L44: AOR: Formula: (= |v_lcp_#resOutParam_1| |v_main_#t~ret18_4|) InVars {lcp_#res=|v_lcp_#resOutParam_1|} OutVars{main_#t~ret18=|v_main_#t~ret18_4|} AuxVars[] AssignedVars[main_#t~ret18, lcp_#res] LVA: Formula: (and (= v_main_~y~0_6 |v_lcp_#in~yInParam_1|) (= |v_lcp_#in~nInParam_1| v_main_~n~0_9) (= v_main_~x~0_6 |v_lcp_#in~xInParam_1|) (= |v_lcp_#in~a.offsetInParam_1| v_main_~a~0.offset_5) (= |v_lcp_#in~a.baseInParam_1| v_main_~a~0.base_5)) InVars {main_~a~0.base=v_main_~a~0.base_5, main_~y~0=v_main_~y~0_6, main_~n~0=v_main_~n~0_9, main_~x~0=v_main_~x~0_6, main_~a~0.offset=v_main_~a~0.offset_5} OutVars{lcp_#in~a.base=|v_lcp_#in~a.baseInParam_1|, lcp_#in~a.offset=|v_lcp_#in~a.offsetInParam_1|, lcp_#in~n=|v_lcp_#in~nInParam_1|, lcp_#in~y=|v_lcp_#in~yInParam_1|, lcp_#in~x=|v_lcp_#in~xInParam_1|} AuxVars[] AssignedVars[lcp_#in~a.offset, lcp_#in~y, main_~x~0, lcp_#in~x, lcp_#in~a.base, main_~a~0.base, lcp_#in~n, main_~y~0, main_~n~0, main_~a~0.offset] {257#false} is VALID [2022-04-14 20:08:21,976 INFO L290 TraceCheckUtils]: 30: Hoare triple {257#false} [113] L44-->L45: Formula: (and (<= |v_main_#t~ret18_3| 2147483647) (= v_main_~l~1_1 |v_main_#t~ret18_3|) (<= 0 (+ |v_main_#t~ret18_3| 2147483648))) InVars {main_#t~ret18=|v_main_#t~ret18_3|} OutVars{main_~l~1=v_main_~l~1_1} AuxVars[] AssignedVars[main_#t~ret18, main_~l~1] {257#false} is VALID [2022-04-14 20:08:21,976 INFO L272 TraceCheckUtils]: 31: Hoare triple {257#false} [116] L45-->checkENTRY: Formula: (and (= v_main_~n~0_10 |v_check_#in~nInParam_1|) (= |v_check_#in~a.baseInParam_1| v_main_~a~0.base_6) (= v_main_~y~0_7 |v_check_#in~yInParam_1|) (= v_main_~x~0_7 |v_check_#in~xInParam_1|) (= |v_check_#in~a.offsetInParam_1| v_main_~a~0.offset_6) (= |v_check_#in~lInParam_1| v_main_~l~1_3)) InVars {main_~x~0=v_main_~x~0_7, main_~l~1=v_main_~l~1_3, main_~a~0.base=v_main_~a~0.base_6, main_~y~0=v_main_~y~0_7, main_~n~0=v_main_~n~0_10, main_~a~0.offset=v_main_~a~0.offset_6} OutVars{check_#in~y=|v_check_#in~yInParam_1|, check_#in~x=|v_check_#in~xInParam_1|, check_#in~a.offset=|v_check_#in~a.offsetInParam_1|, check_#in~a.base=|v_check_#in~a.baseInParam_1|, check_#in~l=|v_check_#in~lInParam_1|, check_#in~n=|v_check_#in~nInParam_1|} AuxVars[] AssignedVars[check_#in~y, check_#in~x, check_#in~a.offset, main_~x~0, main_~l~1, check_#in~a.base, main_~a~0.base, main_~y~0, main_~n~0, check_#in~l, main_~a~0.offset, check_#in~n] {257#false} is VALID [2022-04-14 20:08:21,976 INFO L290 TraceCheckUtils]: 32: Hoare triple {257#false} [122] checkENTRY-->L27: Formula: (and (= v_check_~x_2 |v_check_#in~x_1|) (= |v_check_#in~a.offset_1| v_check_~a.offset_1) (= v_check_~i~0_1 |v_check_#t~nondet9_2|) (= v_check_~l_2 |v_check_#in~l_1|) (= v_check_~n_2 |v_check_#in~n_1|) (= v_check_~a.base_1 |v_check_#in~a.base_1|) (<= 0 (+ 2147483648 |v_check_#t~nondet9_2|)) (= v_check_~y_2 |v_check_#in~y_1|) (<= |v_check_#t~nondet9_2| 2147483647)) InVars {check_#in~y=|v_check_#in~y_1|, check_#in~x=|v_check_#in~x_1|, check_#in~a.offset=|v_check_#in~a.offset_1|, check_#in~a.base=|v_check_#in~a.base_1|, check_#in~l=|v_check_#in~l_1|, check_#t~nondet9=|v_check_#t~nondet9_2|, check_#in~n=|v_check_#in~n_1|} OutVars{check_#in~y=|v_check_#in~y_1|, check_#in~x=|v_check_#in~x_1|, check_#in~a.offset=|v_check_#in~a.offset_1|, check_~a.base=v_check_~a.base_1, check_~i~0=v_check_~i~0_1, check_~y=v_check_~y_2, check_~x=v_check_~x_2, check_~a.offset=v_check_~a.offset_1, check_#in~a.base=|v_check_#in~a.base_1|, check_#in~l=|v_check_#in~l_1|, check_~n=v_check_~n_2, check_#in~n=|v_check_#in~n_1|, check_~l=v_check_~l_2} AuxVars[] AssignedVars[check_~y, check_~x, check_~a.base, check_~a.offset, check_~i~0, check_~n, check_#t~nondet9, check_~l] {257#false} is VALID [2022-04-14 20:08:21,977 INFO L272 TraceCheckUtils]: 33: Hoare triple {257#false} [131] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (and (<= 0 v_check_~i~0_4) (< v_check_~i~0_4 v_check_~l_5)) 1 0)) InVars {check_~i~0=v_check_~i~0_4, check_~l=v_check_~l_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[check_~i~0, assume_abort_if_not_#in~cond, check_~l] {256#true} is VALID [2022-04-14 20:08:21,977 INFO L290 TraceCheckUtils]: 34: Hoare triple {256#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {256#true} is VALID [2022-04-14 20:08:21,977 INFO L290 TraceCheckUtils]: 35: Hoare triple {256#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {256#true} is VALID [2022-04-14 20:08:21,977 INFO L290 TraceCheckUtils]: 36: Hoare triple {256#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {256#true} is VALID [2022-04-14 20:08:21,977 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {256#true} {257#false} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (and (<= 0 v_check_~i~0_4) (< v_check_~i~0_4 v_check_~l_5)) 1 0)) InVars {check_~i~0=v_check_~i~0_4, check_~l=v_check_~l_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[check_~i~0, assume_abort_if_not_#in~cond, check_~l] {257#false} is VALID [2022-04-14 20:08:21,977 INFO L290 TraceCheckUtils]: 38: Hoare triple {257#false} [112] L27-1-->L28: Formula: (let ((.cse0 (select |v_#memory_int_3| v_check_~a.base_2)) (.cse1 (* v_check_~i~0_3 4))) (and (= (select .cse0 (+ (* v_check_~y_3 4) v_check_~a.offset_2 .cse1)) |v_check_#t~mem11_1|) (= (select .cse0 (+ (* v_check_~x_3 4) v_check_~a.offset_2 .cse1)) |v_check_#t~mem10_1|))) InVars {check_~y=v_check_~y_3, check_~x=v_check_~x_3, check_~a.base=v_check_~a.base_2, check_~a.offset=v_check_~a.offset_2, check_~i~0=v_check_~i~0_3, #memory_int=|v_#memory_int_3|} OutVars{check_~y=v_check_~y_3, check_~x=v_check_~x_3, check_#t~mem10=|v_check_#t~mem10_1|, check_~a.base=v_check_~a.base_2, check_~a.offset=v_check_~a.offset_2, check_~i~0=v_check_~i~0_3, check_#t~mem11=|v_check_#t~mem11_1|, #memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[check_#t~mem10, check_#t~mem11] {257#false} is VALID [2022-04-14 20:08:21,977 INFO L272 TraceCheckUtils]: 39: Hoare triple {257#false} [115] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= |v_check_#t~mem11_4| |v_check_#t~mem10_4|) 1 0)) InVars {check_#t~mem10=|v_check_#t~mem10_4|, check_#t~mem11=|v_check_#t~mem11_4|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, check_#t~mem10, check_#t~mem11] {257#false} is VALID [2022-04-14 20:08:21,978 INFO L290 TraceCheckUtils]: 40: Hoare triple {257#false} [120] __VERIFIER_assertENTRY-->L13: 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] {257#false} is VALID [2022-04-14 20:08:21,978 INFO L290 TraceCheckUtils]: 41: Hoare triple {257#false} [128] L13-->L13-1: 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[] {257#false} is VALID [2022-04-14 20:08:21,978 INFO L290 TraceCheckUtils]: 42: Hoare triple {257#false} [137] L13-1-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {257#false} is VALID [2022-04-14 20:08:21,978 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-14 20:08:21,978 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:08:21,978 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [552541621] [2022-04-14 20:08:21,979 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [552541621] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 20:08:21,979 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 20:08:21,979 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-14 20:08:21,979 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1864516419] [2022-04-14 20:08:21,979 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:08:21,980 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.4444444444444446) internal successors, (22), 7 states have internal predecessors, (22), 3 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) Word has length 43 [2022-04-14 20:08:21,980 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:08:21,980 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.4444444444444446) internal successors, (22), 7 states have internal predecessors, (22), 3 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 20:08:22,005 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:08:22,006 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-14 20:08:22,006 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:08:22,006 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-14 20:08:22,007 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=72, Unknown=0, NotChecked=0, Total=90 [2022-04-14 20:08:22,007 INFO L87 Difference]: Start difference. First operand 41 states and 45 transitions. Second operand has 10 states, 9 states have (on average 2.4444444444444446) internal successors, (22), 7 states have internal predecessors, (22), 3 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 20:08:22,614 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:08:22,614 INFO L93 Difference]: Finished difference Result 45 states and 49 transitions. [2022-04-14 20:08:22,614 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-14 20:08:22,614 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.4444444444444446) internal successors, (22), 7 states have internal predecessors, (22), 3 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) Word has length 43 [2022-04-14 20:08:22,614 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:08:22,615 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.4444444444444446) internal successors, (22), 7 states have internal predecessors, (22), 3 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 20:08:22,617 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 50 transitions. [2022-04-14 20:08:22,617 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.4444444444444446) internal successors, (22), 7 states have internal predecessors, (22), 3 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 20:08:22,618 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 50 transitions. [2022-04-14 20:08:22,618 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 50 transitions. [2022-04-14 20:08:22,671 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-14 20:08:22,672 INFO L225 Difference]: With dead ends: 45 [2022-04-14 20:08:22,673 INFO L226 Difference]: Without dead ends: 42 [2022-04-14 20:08:22,673 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 11 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=60, Invalid=212, Unknown=0, NotChecked=0, Total=272 [2022-04-14 20:08:22,674 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 65 mSDsluCounter, 10 mSDsCounter, 0 mSdLazyCounter, 221 mSolverCounterSat, 39 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 65 SdHoareTripleChecker+Valid, 41 SdHoareTripleChecker+Invalid, 260 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 39 IncrementalHoareTripleChecker+Valid, 221 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-14 20:08:22,674 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [65 Valid, 41 Invalid, 260 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [39 Valid, 221 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-14 20:08:22,675 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states. [2022-04-14 20:08:22,677 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 42. [2022-04-14 20:08:22,677 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:08:22,677 INFO L82 GeneralOperation]: Start isEquivalent. First operand 42 states. Second operand has 42 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 27 states have internal predecessors, (29), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 20:08:22,677 INFO L74 IsIncluded]: Start isIncluded. First operand 42 states. Second operand has 42 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 27 states have internal predecessors, (29), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 20:08:22,677 INFO L87 Difference]: Start difference. First operand 42 states. Second operand has 42 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 27 states have internal predecessors, (29), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 20:08:22,679 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:08:22,680 INFO L93 Difference]: Finished difference Result 42 states and 46 transitions. [2022-04-14 20:08:22,680 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 46 transitions. [2022-04-14 20:08:22,680 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:08:22,680 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:08:22,680 INFO L74 IsIncluded]: Start isIncluded. First operand has 42 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 27 states have internal predecessors, (29), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 42 states. [2022-04-14 20:08:22,681 INFO L87 Difference]: Start difference. First operand has 42 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 27 states have internal predecessors, (29), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 42 states. [2022-04-14 20:08:22,682 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:08:22,682 INFO L93 Difference]: Finished difference Result 42 states and 46 transitions. [2022-04-14 20:08:22,682 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 46 transitions. [2022-04-14 20:08:22,683 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:08:22,683 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:08:22,683 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:08:22,683 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:08:22,683 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 42 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 27 states have internal predecessors, (29), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 20:08:22,685 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 46 transitions. [2022-04-14 20:08:22,685 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 46 transitions. Word has length 43 [2022-04-14 20:08:22,685 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:08:22,685 INFO L478 AbstractCegarLoop]: Abstraction has 42 states and 46 transitions. [2022-04-14 20:08:22,685 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.4444444444444446) internal successors, (22), 7 states have internal predecessors, (22), 3 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 20:08:22,685 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 46 transitions. [2022-04-14 20:08:22,686 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-14 20:08:22,686 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:08:22,686 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:08:22,686 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-14 20:08:22,686 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:08:22,686 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:08:22,687 INFO L85 PathProgramCache]: Analyzing trace with hash -1342717920, now seen corresponding path program 1 times [2022-04-14 20:08:22,687 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:08:22,687 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1925542587] [2022-04-14 20:08:22,687 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:08:22,687 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:08:22,708 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:22,779 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-14 20:08:22,781 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:22,792 INFO L290 TraceCheckUtils]: 0: Hoare triple {513#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [96] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_5| 1)) (.cse1 (select |v_#memory_int_5| 2))) (and (= (select .cse0 0) 48) (= (select |v_#valid_5| 1) 1) (= (select .cse1 3) 46) (= 2 (select |v_#length_3| 1)) (< 0 |v_#StackHeapBarrier_2|) (= 112 (select .cse1 2)) (= |v_#NULL.base_1| 0) (= (select |v_#valid_5| 2) 1) (= 108 (select .cse1 0)) (= (select .cse1 1) 99) (= (select .cse0 1) 0) (= 1 (select |v_#valid_5| 3)) (= (select .cse1 4) 99) (= (select .cse1 5) 0) (= 6 (select |v_#length_3| 2)) (= (select |v_#valid_5| 0) 0) (= |v_#NULL.offset_1| 0) (= 12 (select |v_#length_3| 3)))) InVars {#memory_int=|v_#memory_int_5|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_5|, #memory_int=|v_#memory_int_5|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_3|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {479#true} is VALID [2022-04-14 20:08:22,792 INFO L290 TraceCheckUtils]: 1: Hoare triple {479#true} [99] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {479#true} is VALID [2022-04-14 20:08:22,793 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {479#true} {479#true} [141] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {479#true} is VALID [2022-04-14 20:08:22,793 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-14 20:08:22,793 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:22,796 INFO L290 TraceCheckUtils]: 0: Hoare triple {479#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {479#true} is VALID [2022-04-14 20:08:22,796 INFO L290 TraceCheckUtils]: 1: Hoare triple {479#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {479#true} is VALID [2022-04-14 20:08:22,796 INFO L290 TraceCheckUtils]: 2: Hoare triple {479#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {479#true} is VALID [2022-04-14 20:08:22,796 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {479#true} {479#true} [142] assume_abort_if_notEXIT-->L38-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (and (< v_main_~n~0_7 1073741824) (<= 0 v_main_~n~0_7)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~n~0=v_main_~n~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~n~0, assume_abort_if_not_#in~cond] {479#true} is VALID [2022-04-14 20:08:22,802 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-14 20:08:22,804 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:22,815 INFO L290 TraceCheckUtils]: 0: Hoare triple {514#(= |#memory_int| |old(#memory_int)|)} [107] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_10| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_9|) InVars {#memory_int=|v_#memory_int_10|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_9|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {515#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} is VALID [2022-04-14 20:08:22,815 INFO L290 TraceCheckUtils]: 1: Hoare triple {515#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} [110] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {515#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} is VALID [2022-04-14 20:08:22,816 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {515#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} {479#true} [145] #Ultimate.meminitEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_main_#t~malloc15.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= v_main_~n~0_8 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#productInParam_1| (* v_main_~n~0_8 4)) (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_main_#t~malloc15.offset_4|)) InVars {main_#t~malloc15.offset=|v_main_#t~malloc15.offset_4|, main_~n~0=v_main_~n~0_8, main_#t~malloc15.base=|v_main_#t~malloc15.base_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, #Ultimate.meminit_#product, main_~n~0, #Ultimate.meminit_#ptr.base, main_#t~malloc15.base, #Ultimate.meminit_#ptr.offset] {491#(= ((as const (Array Int Int)) 0) (select |#memory_int| |main_#t~malloc15.base|))} is VALID [2022-04-14 20:08:22,816 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-14 20:08:22,818 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:22,823 INFO L290 TraceCheckUtils]: 0: Hoare triple {479#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {479#true} is VALID [2022-04-14 20:08:22,823 INFO L290 TraceCheckUtils]: 1: Hoare triple {479#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {479#true} is VALID [2022-04-14 20:08:22,823 INFO L290 TraceCheckUtils]: 2: Hoare triple {479#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {479#true} is VALID [2022-04-14 20:08:22,824 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {479#true} {492#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} [143] assume_abort_if_notEXIT-->L43-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_5) (<= 0 v_main_~x~0_5)) 1 0)) InVars {main_~x~0=v_main_~x~0_5, main_~y~0=v_main_~y~0_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, assume_abort_if_not_#in~cond] {492#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} is VALID [2022-04-14 20:08:22,824 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-14 20:08:22,827 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:22,835 INFO L290 TraceCheckUtils]: 0: Hoare triple {479#true} [114] lcpENTRY-->L18-5: Formula: (and (= v_lcp_~a.base_1 |v_lcp_#in~a.base_1|) (= v_lcp_~n_1 |v_lcp_#in~n_1|) (= v_lcp_~l~0_1 0) (= v_lcp_~x_1 |v_lcp_#in~x_1|) (= v_lcp_~y_1 |v_lcp_#in~y_1|) (= |v_lcp_#in~a.offset_1| v_lcp_~a.offset_1)) InVars {lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_#in~y=|v_lcp_#in~y_1|, lcp_#in~x=|v_lcp_#in~x_1|} OutVars{lcp_~x=v_lcp_~x_1, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_~l~0=v_lcp_~l~0_1, lcp_~a.offset=v_lcp_~a.offset_1, lcp_~y=v_lcp_~y_1, lcp_#in~y=|v_lcp_#in~y_1|, lcp_~a.base=v_lcp_~a.base_1, lcp_#in~x=|v_lcp_#in~x_1|, lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_~n=v_lcp_~n_1} AuxVars[] AssignedVars[lcp_~x, lcp_~l~0, lcp_~a.offset, lcp_~y, lcp_~a.base, lcp_~n] {479#true} is VALID [2022-04-14 20:08:22,835 INFO L290 TraceCheckUtils]: 1: Hoare triple {479#true} [118] L18-5-->L18-1: Formula: (let ((.cse1 (< (+ v_lcp_~y_2 v_lcp_~l~0_5) v_lcp_~n_2)) (.cse0 (< (+ v_lcp_~x_2 v_lcp_~l~0_5) v_lcp_~n_2))) (or (and (or (not .cse0) (not .cse1)) (not |v_lcp_#t~short7_5|)) (and .cse1 .cse0 |v_lcp_#t~short7_5|))) InVars {lcp_~x=v_lcp_~x_2, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} OutVars{lcp_~x=v_lcp_~x_2, lcp_#t~short7=|v_lcp_#t~short7_5|, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} AuxVars[] AssignedVars[lcp_#t~short7] {479#true} is VALID [2022-04-14 20:08:22,835 INFO L290 TraceCheckUtils]: 2: Hoare triple {479#true} [125] L18-1-->L18-3: Formula: (not |v_lcp_#t~short7_8|) InVars {lcp_#t~short7=|v_lcp_#t~short7_8|} OutVars{lcp_#t~short7=|v_lcp_#t~short7_8|} AuxVars[] AssignedVars[] {479#true} is VALID [2022-04-14 20:08:22,835 INFO L290 TraceCheckUtils]: 3: Hoare triple {479#true} [133] L18-3-->L18-6: Formula: (not |v_lcp_#t~short7_2|) InVars {lcp_#t~short7=|v_lcp_#t~short7_2|} OutVars{lcp_#t~mem6=|v_lcp_#t~mem6_1|, lcp_#t~mem5=|v_lcp_#t~mem5_1|} AuxVars[] AssignedVars[lcp_#t~mem6, lcp_#t~mem5, lcp_#t~short7] {479#true} is VALID [2022-04-14 20:08:22,836 INFO L290 TraceCheckUtils]: 4: Hoare triple {479#true} [123] L18-6-->lcpFINAL: Formula: (= |v_lcp_#res_1| v_lcp_~l~0_4) InVars {lcp_~l~0=v_lcp_~l~0_4} OutVars{lcp_#res=|v_lcp_#res_1|, lcp_~l~0=v_lcp_~l~0_4} AuxVars[] AssignedVars[lcp_#res] {479#true} is VALID [2022-04-14 20:08:22,836 INFO L290 TraceCheckUtils]: 5: Hoare triple {479#true} [132] lcpFINAL-->lcpEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {479#true} is VALID [2022-04-14 20:08:22,837 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {479#true} {492#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} [147] lcpEXIT-->L44: AOR: Formula: (= |v_lcp_#resOutParam_1| |v_main_#t~ret18_4|) InVars {lcp_#res=|v_lcp_#resOutParam_1|} OutVars{main_#t~ret18=|v_main_#t~ret18_4|} AuxVars[] AssignedVars[main_#t~ret18, lcp_#res] LVA: Formula: (and (= v_main_~y~0_6 |v_lcp_#in~yInParam_1|) (= |v_lcp_#in~nInParam_1| v_main_~n~0_9) (= v_main_~x~0_6 |v_lcp_#in~xInParam_1|) (= |v_lcp_#in~a.offsetInParam_1| v_main_~a~0.offset_5) (= |v_lcp_#in~a.baseInParam_1| v_main_~a~0.base_5)) InVars {main_~a~0.base=v_main_~a~0.base_5, main_~y~0=v_main_~y~0_6, main_~n~0=v_main_~n~0_9, main_~x~0=v_main_~x~0_6, main_~a~0.offset=v_main_~a~0.offset_5} OutVars{lcp_#in~a.base=|v_lcp_#in~a.baseInParam_1|, lcp_#in~a.offset=|v_lcp_#in~a.offsetInParam_1|, lcp_#in~n=|v_lcp_#in~nInParam_1|, lcp_#in~y=|v_lcp_#in~yInParam_1|, lcp_#in~x=|v_lcp_#in~xInParam_1|} AuxVars[] AssignedVars[lcp_#in~a.offset, lcp_#in~y, main_~x~0, lcp_#in~x, lcp_#in~a.base, main_~a~0.base, lcp_#in~n, main_~y~0, main_~n~0, main_~a~0.offset] {492#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} is VALID [2022-04-14 20:08:22,837 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 33 [2022-04-14 20:08:22,838 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:22,841 INFO L290 TraceCheckUtils]: 0: Hoare triple {479#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {479#true} is VALID [2022-04-14 20:08:22,841 INFO L290 TraceCheckUtils]: 1: Hoare triple {479#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {479#true} is VALID [2022-04-14 20:08:22,841 INFO L290 TraceCheckUtils]: 2: Hoare triple {479#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {479#true} is VALID [2022-04-14 20:08:22,842 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {479#true} {505#(and (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~x) check_~a.offset)) 0) (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~y) check_~a.offset)) 0))} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (and (<= 0 v_check_~i~0_4) (< v_check_~i~0_4 v_check_~l_5)) 1 0)) InVars {check_~i~0=v_check_~i~0_4, check_~l=v_check_~l_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[check_~i~0, assume_abort_if_not_#in~cond, check_~l] {505#(and (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~x) check_~a.offset)) 0) (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~y) check_~a.offset)) 0))} is VALID [2022-04-14 20:08:22,843 INFO L272 TraceCheckUtils]: 0: Hoare triple {479#true} [94] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {513#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-14 20:08:22,843 INFO L290 TraceCheckUtils]: 1: Hoare triple {513#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [96] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_5| 1)) (.cse1 (select |v_#memory_int_5| 2))) (and (= (select .cse0 0) 48) (= (select |v_#valid_5| 1) 1) (= (select .cse1 3) 46) (= 2 (select |v_#length_3| 1)) (< 0 |v_#StackHeapBarrier_2|) (= 112 (select .cse1 2)) (= |v_#NULL.base_1| 0) (= (select |v_#valid_5| 2) 1) (= 108 (select .cse1 0)) (= (select .cse1 1) 99) (= (select .cse0 1) 0) (= 1 (select |v_#valid_5| 3)) (= (select .cse1 4) 99) (= (select .cse1 5) 0) (= 6 (select |v_#length_3| 2)) (= (select |v_#valid_5| 0) 0) (= |v_#NULL.offset_1| 0) (= 12 (select |v_#length_3| 3)))) InVars {#memory_int=|v_#memory_int_5|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_5|, #memory_int=|v_#memory_int_5|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_3|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {479#true} is VALID [2022-04-14 20:08:22,843 INFO L290 TraceCheckUtils]: 2: Hoare triple {479#true} [99] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {479#true} is VALID [2022-04-14 20:08:22,843 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {479#true} {479#true} [141] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {479#true} is VALID [2022-04-14 20:08:22,843 INFO L272 TraceCheckUtils]: 4: Hoare triple {479#true} [95] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {479#true} is VALID [2022-04-14 20:08:22,843 INFO L290 TraceCheckUtils]: 5: Hoare triple {479#true} [98] mainENTRY-->L38: Formula: (and (<= |v_main_#t~nondet14_2| 2147483647) (= v_main_~n~0_3 |v_main_#t~nondet14_2|) (<= 0 (+ |v_main_#t~nondet14_2| 2147483648))) InVars {main_#t~nondet14=|v_main_#t~nondet14_2|} OutVars{main_~n~0=v_main_~n~0_3} AuxVars[] AssignedVars[main_#t~nondet14, main_~n~0] {479#true} is VALID [2022-04-14 20:08:22,843 INFO L272 TraceCheckUtils]: 6: Hoare triple {479#true} [100] L38-->assume_abort_if_notENTRY: Formula: (= (ite (and (< v_main_~n~0_7 1073741824) (<= 0 v_main_~n~0_7)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~n~0=v_main_~n~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~n~0, assume_abort_if_not_#in~cond] {479#true} is VALID [2022-04-14 20:08:22,843 INFO L290 TraceCheckUtils]: 7: Hoare triple {479#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {479#true} is VALID [2022-04-14 20:08:22,843 INFO L290 TraceCheckUtils]: 8: Hoare triple {479#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {479#true} is VALID [2022-04-14 20:08:22,844 INFO L290 TraceCheckUtils]: 9: Hoare triple {479#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {479#true} is VALID [2022-04-14 20:08:22,844 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {479#true} {479#true} [142] assume_abort_if_notEXIT-->L38-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (and (< v_main_~n~0_7 1073741824) (<= 0 v_main_~n~0_7)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~n~0=v_main_~n~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~n~0, assume_abort_if_not_#in~cond] {479#true} is VALID [2022-04-14 20:08:22,844 INFO L290 TraceCheckUtils]: 11: Hoare triple {479#true} [101] L38-1-->L39: Formula: (and (= |v_#valid_3| (store |v_#valid_4| |v_main_#t~malloc15.base_1| 1)) (not (= |v_main_#t~malloc15.base_1| 0)) (= |v_#length_1| (store |v_#length_2| |v_main_#t~malloc15.base_1| (* v_main_~n~0_5 4))) (< |v_main_#t~malloc15.base_1| |v_#StackHeapBarrier_1|) (= (select |v_#valid_4| |v_main_#t~malloc15.base_1|) 0) (= |v_main_#t~malloc15.offset_1| 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_2|, main_~n~0=v_main_~n~0_5, #valid=|v_#valid_4|} OutVars{main_#t~malloc15.offset=|v_main_#t~malloc15.offset_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_3|, #length=|v_#length_1|, main_~n~0=v_main_~n~0_5, main_#t~malloc15.base=|v_main_#t~malloc15.base_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #valid, #length, main_#t~malloc15.base] {479#true} is VALID [2022-04-14 20:08:22,848 INFO L272 TraceCheckUtils]: 12: Hoare triple {479#true} [103] L39-->#Ultimate.meminitENTRY: Formula: (and (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_main_#t~malloc15.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= v_main_~n~0_8 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#productInParam_1| (* v_main_~n~0_8 4)) (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_main_#t~malloc15.offset_4|)) InVars {main_#t~malloc15.offset=|v_main_#t~malloc15.offset_4|, main_~n~0=v_main_~n~0_8, main_#t~malloc15.base=|v_main_#t~malloc15.base_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, #Ultimate.meminit_#product, main_~n~0, #Ultimate.meminit_#ptr.base, main_#t~malloc15.base, #Ultimate.meminit_#ptr.offset] {514#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-04-14 20:08:22,848 INFO L290 TraceCheckUtils]: 13: Hoare triple {514#(= |#memory_int| |old(#memory_int)|)} [107] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_10| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_9|) InVars {#memory_int=|v_#memory_int_10|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_9|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {515#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} is VALID [2022-04-14 20:08:22,849 INFO L290 TraceCheckUtils]: 14: Hoare triple {515#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} [110] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {515#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} is VALID [2022-04-14 20:08:22,849 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {515#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} {479#true} [145] #Ultimate.meminitEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_main_#t~malloc15.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= v_main_~n~0_8 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#productInParam_1| (* v_main_~n~0_8 4)) (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_main_#t~malloc15.offset_4|)) InVars {main_#t~malloc15.offset=|v_main_#t~malloc15.offset_4|, main_~n~0=v_main_~n~0_8, main_#t~malloc15.base=|v_main_#t~malloc15.base_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, #Ultimate.meminit_#product, main_~n~0, #Ultimate.meminit_#ptr.base, main_#t~malloc15.base, #Ultimate.meminit_#ptr.offset] {491#(= ((as const (Array Int Int)) 0) (select |#memory_int| |main_#t~malloc15.base|))} is VALID [2022-04-14 20:08:22,850 INFO L290 TraceCheckUtils]: 16: Hoare triple {491#(= ((as const (Array Int Int)) 0) (select |#memory_int| |main_#t~malloc15.base|))} [106] L39-1-->L43: Formula: (and (<= |v_main_#t~nondet17_2| 2147483647) (= v_main_~a~0.offset_4 |v_main_#t~malloc15.offset_3|) (<= 0 (+ |v_main_#t~nondet16_2| 2147483648)) (= v_main_~y~0_3 |v_main_#t~nondet17_2|) (= v_main_~x~0_3 |v_main_#t~nondet16_2|) (<= |v_main_#t~nondet16_2| 2147483647) (<= 0 (+ |v_main_#t~nondet17_2| 2147483648)) (= v_main_~a~0.base_4 |v_main_#t~malloc15.base_3|)) InVars {main_#t~nondet16=|v_main_#t~nondet16_2|, main_#t~malloc15.offset=|v_main_#t~malloc15.offset_3|, main_#t~malloc15.base=|v_main_#t~malloc15.base_3|, main_#t~nondet17=|v_main_#t~nondet17_2|} OutVars{main_#t~malloc15.offset=|v_main_#t~malloc15.offset_3|, main_~x~0=v_main_~x~0_3, main_~a~0.base=v_main_~a~0.base_4, main_~y~0=v_main_~y~0_3, main_#t~malloc15.base=|v_main_#t~malloc15.base_3|, main_~a~0.offset=v_main_~a~0.offset_4} AuxVars[] AssignedVars[main_#t~nondet16, main_~x~0, main_#t~nondet17, main_~a~0.base, main_~y~0, main_~a~0.offset] {492#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} is VALID [2022-04-14 20:08:22,850 INFO L272 TraceCheckUtils]: 17: Hoare triple {492#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} [109] L43-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_5) (<= 0 v_main_~x~0_5)) 1 0)) InVars {main_~x~0=v_main_~x~0_5, main_~y~0=v_main_~y~0_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, assume_abort_if_not_#in~cond] {479#true} is VALID [2022-04-14 20:08:22,850 INFO L290 TraceCheckUtils]: 18: Hoare triple {479#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {479#true} is VALID [2022-04-14 20:08:22,850 INFO L290 TraceCheckUtils]: 19: Hoare triple {479#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {479#true} is VALID [2022-04-14 20:08:22,850 INFO L290 TraceCheckUtils]: 20: Hoare triple {479#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {479#true} is VALID [2022-04-14 20:08:22,851 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {479#true} {492#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} [143] assume_abort_if_notEXIT-->L43-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_5) (<= 0 v_main_~x~0_5)) 1 0)) InVars {main_~x~0=v_main_~x~0_5, main_~y~0=v_main_~y~0_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, assume_abort_if_not_#in~cond] {492#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} is VALID [2022-04-14 20:08:22,851 INFO L272 TraceCheckUtils]: 22: Hoare triple {492#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} [111] L43-1-->lcpENTRY: Formula: (and (= v_main_~y~0_6 |v_lcp_#in~yInParam_1|) (= |v_lcp_#in~nInParam_1| v_main_~n~0_9) (= v_main_~x~0_6 |v_lcp_#in~xInParam_1|) (= |v_lcp_#in~a.offsetInParam_1| v_main_~a~0.offset_5) (= |v_lcp_#in~a.baseInParam_1| v_main_~a~0.base_5)) InVars {main_~a~0.base=v_main_~a~0.base_5, main_~y~0=v_main_~y~0_6, main_~n~0=v_main_~n~0_9, main_~x~0=v_main_~x~0_6, main_~a~0.offset=v_main_~a~0.offset_5} OutVars{lcp_#in~a.base=|v_lcp_#in~a.baseInParam_1|, lcp_#in~a.offset=|v_lcp_#in~a.offsetInParam_1|, lcp_#in~n=|v_lcp_#in~nInParam_1|, lcp_#in~y=|v_lcp_#in~yInParam_1|, lcp_#in~x=|v_lcp_#in~xInParam_1|} AuxVars[] AssignedVars[lcp_#in~a.offset, lcp_#in~y, main_~x~0, lcp_#in~x, lcp_#in~a.base, main_~a~0.base, lcp_#in~n, main_~y~0, main_~n~0, main_~a~0.offset] {479#true} is VALID [2022-04-14 20:08:22,851 INFO L290 TraceCheckUtils]: 23: Hoare triple {479#true} [114] lcpENTRY-->L18-5: Formula: (and (= v_lcp_~a.base_1 |v_lcp_#in~a.base_1|) (= v_lcp_~n_1 |v_lcp_#in~n_1|) (= v_lcp_~l~0_1 0) (= v_lcp_~x_1 |v_lcp_#in~x_1|) (= v_lcp_~y_1 |v_lcp_#in~y_1|) (= |v_lcp_#in~a.offset_1| v_lcp_~a.offset_1)) InVars {lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_#in~y=|v_lcp_#in~y_1|, lcp_#in~x=|v_lcp_#in~x_1|} OutVars{lcp_~x=v_lcp_~x_1, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_~l~0=v_lcp_~l~0_1, lcp_~a.offset=v_lcp_~a.offset_1, lcp_~y=v_lcp_~y_1, lcp_#in~y=|v_lcp_#in~y_1|, lcp_~a.base=v_lcp_~a.base_1, lcp_#in~x=|v_lcp_#in~x_1|, lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_~n=v_lcp_~n_1} AuxVars[] AssignedVars[lcp_~x, lcp_~l~0, lcp_~a.offset, lcp_~y, lcp_~a.base, lcp_~n] {479#true} is VALID [2022-04-14 20:08:22,851 INFO L290 TraceCheckUtils]: 24: Hoare triple {479#true} [118] L18-5-->L18-1: Formula: (let ((.cse1 (< (+ v_lcp_~y_2 v_lcp_~l~0_5) v_lcp_~n_2)) (.cse0 (< (+ v_lcp_~x_2 v_lcp_~l~0_5) v_lcp_~n_2))) (or (and (or (not .cse0) (not .cse1)) (not |v_lcp_#t~short7_5|)) (and .cse1 .cse0 |v_lcp_#t~short7_5|))) InVars {lcp_~x=v_lcp_~x_2, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} OutVars{lcp_~x=v_lcp_~x_2, lcp_#t~short7=|v_lcp_#t~short7_5|, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} AuxVars[] AssignedVars[lcp_#t~short7] {479#true} is VALID [2022-04-14 20:08:22,851 INFO L290 TraceCheckUtils]: 25: Hoare triple {479#true} [125] L18-1-->L18-3: Formula: (not |v_lcp_#t~short7_8|) InVars {lcp_#t~short7=|v_lcp_#t~short7_8|} OutVars{lcp_#t~short7=|v_lcp_#t~short7_8|} AuxVars[] AssignedVars[] {479#true} is VALID [2022-04-14 20:08:22,851 INFO L290 TraceCheckUtils]: 26: Hoare triple {479#true} [133] L18-3-->L18-6: Formula: (not |v_lcp_#t~short7_2|) InVars {lcp_#t~short7=|v_lcp_#t~short7_2|} OutVars{lcp_#t~mem6=|v_lcp_#t~mem6_1|, lcp_#t~mem5=|v_lcp_#t~mem5_1|} AuxVars[] AssignedVars[lcp_#t~mem6, lcp_#t~mem5, lcp_#t~short7] {479#true} is VALID [2022-04-14 20:08:22,851 INFO L290 TraceCheckUtils]: 27: Hoare triple {479#true} [123] L18-6-->lcpFINAL: Formula: (= |v_lcp_#res_1| v_lcp_~l~0_4) InVars {lcp_~l~0=v_lcp_~l~0_4} OutVars{lcp_#res=|v_lcp_#res_1|, lcp_~l~0=v_lcp_~l~0_4} AuxVars[] AssignedVars[lcp_#res] {479#true} is VALID [2022-04-14 20:08:22,851 INFO L290 TraceCheckUtils]: 28: Hoare triple {479#true} [132] lcpFINAL-->lcpEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {479#true} is VALID [2022-04-14 20:08:22,852 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {479#true} {492#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} [147] lcpEXIT-->L44: AOR: Formula: (= |v_lcp_#resOutParam_1| |v_main_#t~ret18_4|) InVars {lcp_#res=|v_lcp_#resOutParam_1|} OutVars{main_#t~ret18=|v_main_#t~ret18_4|} AuxVars[] AssignedVars[main_#t~ret18, lcp_#res] LVA: Formula: (and (= v_main_~y~0_6 |v_lcp_#in~yInParam_1|) (= |v_lcp_#in~nInParam_1| v_main_~n~0_9) (= v_main_~x~0_6 |v_lcp_#in~xInParam_1|) (= |v_lcp_#in~a.offsetInParam_1| v_main_~a~0.offset_5) (= |v_lcp_#in~a.baseInParam_1| v_main_~a~0.base_5)) InVars {main_~a~0.base=v_main_~a~0.base_5, main_~y~0=v_main_~y~0_6, main_~n~0=v_main_~n~0_9, main_~x~0=v_main_~x~0_6, main_~a~0.offset=v_main_~a~0.offset_5} OutVars{lcp_#in~a.base=|v_lcp_#in~a.baseInParam_1|, lcp_#in~a.offset=|v_lcp_#in~a.offsetInParam_1|, lcp_#in~n=|v_lcp_#in~nInParam_1|, lcp_#in~y=|v_lcp_#in~yInParam_1|, lcp_#in~x=|v_lcp_#in~xInParam_1|} AuxVars[] AssignedVars[lcp_#in~a.offset, lcp_#in~y, main_~x~0, lcp_#in~x, lcp_#in~a.base, main_~a~0.base, lcp_#in~n, main_~y~0, main_~n~0, main_~a~0.offset] {492#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} is VALID [2022-04-14 20:08:22,853 INFO L290 TraceCheckUtils]: 30: Hoare triple {492#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} [113] L44-->L45: Formula: (and (<= |v_main_#t~ret18_3| 2147483647) (= v_main_~l~1_1 |v_main_#t~ret18_3|) (<= 0 (+ |v_main_#t~ret18_3| 2147483648))) InVars {main_#t~ret18=|v_main_#t~ret18_3|} OutVars{main_~l~1=v_main_~l~1_1} AuxVars[] AssignedVars[main_#t~ret18, main_~l~1] {492#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} is VALID [2022-04-14 20:08:22,854 INFO L272 TraceCheckUtils]: 31: Hoare triple {492#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} [116] L45-->checkENTRY: Formula: (and (= v_main_~n~0_10 |v_check_#in~nInParam_1|) (= |v_check_#in~a.baseInParam_1| v_main_~a~0.base_6) (= v_main_~y~0_7 |v_check_#in~yInParam_1|) (= v_main_~x~0_7 |v_check_#in~xInParam_1|) (= |v_check_#in~a.offsetInParam_1| v_main_~a~0.offset_6) (= |v_check_#in~lInParam_1| v_main_~l~1_3)) InVars {main_~x~0=v_main_~x~0_7, main_~l~1=v_main_~l~1_3, main_~a~0.base=v_main_~a~0.base_6, main_~y~0=v_main_~y~0_7, main_~n~0=v_main_~n~0_10, main_~a~0.offset=v_main_~a~0.offset_6} OutVars{check_#in~y=|v_check_#in~yInParam_1|, check_#in~x=|v_check_#in~xInParam_1|, check_#in~a.offset=|v_check_#in~a.offsetInParam_1|, check_#in~a.base=|v_check_#in~a.baseInParam_1|, check_#in~l=|v_check_#in~lInParam_1|, check_#in~n=|v_check_#in~nInParam_1|} AuxVars[] AssignedVars[check_#in~y, check_#in~x, check_#in~a.offset, main_~x~0, main_~l~1, check_#in~a.base, main_~a~0.base, main_~y~0, main_~n~0, check_#in~l, main_~a~0.offset, check_#in~n] {504#(= ((as const (Array Int Int)) 0) (select |#memory_int| |check_#in~a.base|))} is VALID [2022-04-14 20:08:22,855 INFO L290 TraceCheckUtils]: 32: Hoare triple {504#(= ((as const (Array Int Int)) 0) (select |#memory_int| |check_#in~a.base|))} [122] checkENTRY-->L27: Formula: (and (= v_check_~x_2 |v_check_#in~x_1|) (= |v_check_#in~a.offset_1| v_check_~a.offset_1) (= v_check_~i~0_1 |v_check_#t~nondet9_2|) (= v_check_~l_2 |v_check_#in~l_1|) (= v_check_~n_2 |v_check_#in~n_1|) (= v_check_~a.base_1 |v_check_#in~a.base_1|) (<= 0 (+ 2147483648 |v_check_#t~nondet9_2|)) (= v_check_~y_2 |v_check_#in~y_1|) (<= |v_check_#t~nondet9_2| 2147483647)) InVars {check_#in~y=|v_check_#in~y_1|, check_#in~x=|v_check_#in~x_1|, check_#in~a.offset=|v_check_#in~a.offset_1|, check_#in~a.base=|v_check_#in~a.base_1|, check_#in~l=|v_check_#in~l_1|, check_#t~nondet9=|v_check_#t~nondet9_2|, check_#in~n=|v_check_#in~n_1|} OutVars{check_#in~y=|v_check_#in~y_1|, check_#in~x=|v_check_#in~x_1|, check_#in~a.offset=|v_check_#in~a.offset_1|, check_~a.base=v_check_~a.base_1, check_~i~0=v_check_~i~0_1, check_~y=v_check_~y_2, check_~x=v_check_~x_2, check_~a.offset=v_check_~a.offset_1, check_#in~a.base=|v_check_#in~a.base_1|, check_#in~l=|v_check_#in~l_1|, check_~n=v_check_~n_2, check_#in~n=|v_check_#in~n_1|, check_~l=v_check_~l_2} AuxVars[] AssignedVars[check_~y, check_~x, check_~a.base, check_~a.offset, check_~i~0, check_~n, check_#t~nondet9, check_~l] {505#(and (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~x) check_~a.offset)) 0) (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~y) check_~a.offset)) 0))} is VALID [2022-04-14 20:08:22,855 INFO L272 TraceCheckUtils]: 33: Hoare triple {505#(and (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~x) check_~a.offset)) 0) (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~y) check_~a.offset)) 0))} [131] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (and (<= 0 v_check_~i~0_4) (< v_check_~i~0_4 v_check_~l_5)) 1 0)) InVars {check_~i~0=v_check_~i~0_4, check_~l=v_check_~l_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[check_~i~0, assume_abort_if_not_#in~cond, check_~l] {479#true} is VALID [2022-04-14 20:08:22,855 INFO L290 TraceCheckUtils]: 34: Hoare triple {479#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {479#true} is VALID [2022-04-14 20:08:22,855 INFO L290 TraceCheckUtils]: 35: Hoare triple {479#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {479#true} is VALID [2022-04-14 20:08:22,855 INFO L290 TraceCheckUtils]: 36: Hoare triple {479#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {479#true} is VALID [2022-04-14 20:08:22,856 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {479#true} {505#(and (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~x) check_~a.offset)) 0) (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~y) check_~a.offset)) 0))} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (and (<= 0 v_check_~i~0_4) (< v_check_~i~0_4 v_check_~l_5)) 1 0)) InVars {check_~i~0=v_check_~i~0_4, check_~l=v_check_~l_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[check_~i~0, assume_abort_if_not_#in~cond, check_~l] {505#(and (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~x) check_~a.offset)) 0) (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~y) check_~a.offset)) 0))} is VALID [2022-04-14 20:08:22,856 INFO L290 TraceCheckUtils]: 38: Hoare triple {505#(and (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~x) check_~a.offset)) 0) (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~y) check_~a.offset)) 0))} [112] L27-1-->L28: Formula: (let ((.cse0 (select |v_#memory_int_3| v_check_~a.base_2)) (.cse1 (* v_check_~i~0_3 4))) (and (= (select .cse0 (+ (* v_check_~y_3 4) v_check_~a.offset_2 .cse1)) |v_check_#t~mem11_1|) (= (select .cse0 (+ (* v_check_~x_3 4) v_check_~a.offset_2 .cse1)) |v_check_#t~mem10_1|))) InVars {check_~y=v_check_~y_3, check_~x=v_check_~x_3, check_~a.base=v_check_~a.base_2, check_~a.offset=v_check_~a.offset_2, check_~i~0=v_check_~i~0_3, #memory_int=|v_#memory_int_3|} OutVars{check_~y=v_check_~y_3, check_~x=v_check_~x_3, check_#t~mem10=|v_check_#t~mem10_1|, check_~a.base=v_check_~a.base_2, check_~a.offset=v_check_~a.offset_2, check_~i~0=v_check_~i~0_3, check_#t~mem11=|v_check_#t~mem11_1|, #memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[check_#t~mem10, check_#t~mem11] {510#(= |check_#t~mem11| |check_#t~mem10|)} is VALID [2022-04-14 20:08:22,856 INFO L272 TraceCheckUtils]: 39: Hoare triple {510#(= |check_#t~mem11| |check_#t~mem10|)} [115] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= |v_check_#t~mem11_4| |v_check_#t~mem10_4|) 1 0)) InVars {check_#t~mem10=|v_check_#t~mem10_4|, check_#t~mem11=|v_check_#t~mem11_4|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, check_#t~mem10, check_#t~mem11] {511#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:08:22,857 INFO L290 TraceCheckUtils]: 40: Hoare triple {511#(not (= |__VERIFIER_assert_#in~cond| 0))} [120] __VERIFIER_assertENTRY-->L13: 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] {512#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-14 20:08:22,857 INFO L290 TraceCheckUtils]: 41: Hoare triple {512#(not (= __VERIFIER_assert_~cond 0))} [128] L13-->L13-1: 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[] {480#false} is VALID [2022-04-14 20:08:22,857 INFO L290 TraceCheckUtils]: 42: Hoare triple {480#false} [137] L13-1-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {480#false} is VALID [2022-04-14 20:08:22,857 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-14 20:08:22,858 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:08:22,858 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1925542587] [2022-04-14 20:08:22,858 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1925542587] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 20:08:22,858 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 20:08:22,858 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-14 20:08:22,858 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1484831615] [2022-04-14 20:08:22,858 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:08:22,858 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.0) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (9), 5 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) Word has length 43 [2022-04-14 20:08:22,859 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:08:22,859 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 2.0) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (9), 5 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 20:08:22,880 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:08:22,881 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-14 20:08:22,881 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:08:22,881 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-14 20:08:22,881 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=111, Unknown=0, NotChecked=0, Total=132 [2022-04-14 20:08:22,882 INFO L87 Difference]: Start difference. First operand 42 states and 46 transitions. Second operand has 12 states, 11 states have (on average 2.0) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (9), 5 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 20:08:23,663 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:08:23,663 INFO L93 Difference]: Finished difference Result 46 states and 49 transitions. [2022-04-14 20:08:23,663 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-14 20:08:23,664 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.0) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (9), 5 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) Word has length 43 [2022-04-14 20:08:23,664 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:08:23,664 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.0) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (9), 5 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 20:08:23,666 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 49 transitions. [2022-04-14 20:08:23,666 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.0) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (9), 5 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 20:08:23,667 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 49 transitions. [2022-04-14 20:08:23,667 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 49 transitions. [2022-04-14 20:08:23,710 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:08:23,711 INFO L225 Difference]: With dead ends: 46 [2022-04-14 20:08:23,711 INFO L226 Difference]: Without dead ends: 44 [2022-04-14 20:08:23,711 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 12 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 34 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=84, Invalid=378, Unknown=0, NotChecked=0, Total=462 [2022-04-14 20:08:23,712 INFO L913 BasicCegarLoop]: 30 mSDtfsCounter, 69 mSDsluCounter, 16 mSDsCounter, 0 mSdLazyCounter, 341 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 69 SdHoareTripleChecker+Valid, 46 SdHoareTripleChecker+Invalid, 377 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 341 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-14 20:08:23,712 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [69 Valid, 46 Invalid, 377 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 341 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-14 20:08:23,713 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2022-04-14 20:08:23,714 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 44. [2022-04-14 20:08:23,714 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:08:23,715 INFO L82 GeneralOperation]: Start isEquivalent. First operand 44 states. Second operand has 44 states, 28 states have (on average 1.0714285714285714) internal successors, (30), 28 states have internal predecessors, (30), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 20:08:23,715 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand has 44 states, 28 states have (on average 1.0714285714285714) internal successors, (30), 28 states have internal predecessors, (30), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 20:08:23,715 INFO L87 Difference]: Start difference. First operand 44 states. Second operand has 44 states, 28 states have (on average 1.0714285714285714) internal successors, (30), 28 states have internal predecessors, (30), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 20:08:23,717 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:08:23,717 INFO L93 Difference]: Finished difference Result 44 states and 47 transitions. [2022-04-14 20:08:23,717 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 47 transitions. [2022-04-14 20:08:23,717 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:08:23,717 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:08:23,717 INFO L74 IsIncluded]: Start isIncluded. First operand has 44 states, 28 states have (on average 1.0714285714285714) internal successors, (30), 28 states have internal predecessors, (30), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 44 states. [2022-04-14 20:08:23,717 INFO L87 Difference]: Start difference. First operand has 44 states, 28 states have (on average 1.0714285714285714) internal successors, (30), 28 states have internal predecessors, (30), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 44 states. [2022-04-14 20:08:23,719 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:08:23,719 INFO L93 Difference]: Finished difference Result 44 states and 47 transitions. [2022-04-14 20:08:23,719 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 47 transitions. [2022-04-14 20:08:23,719 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:08:23,719 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:08:23,719 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:08:23,719 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:08:23,720 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 44 states, 28 states have (on average 1.0714285714285714) internal successors, (30), 28 states have internal predecessors, (30), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 20:08:23,721 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 47 transitions. [2022-04-14 20:08:23,721 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 47 transitions. Word has length 43 [2022-04-14 20:08:23,721 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:08:23,721 INFO L478 AbstractCegarLoop]: Abstraction has 44 states and 47 transitions. [2022-04-14 20:08:23,723 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 2.0) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (9), 5 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 20:08:23,723 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 47 transitions. [2022-04-14 20:08:23,724 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-14 20:08:23,724 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:08:23,724 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:08:23,724 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-04-14 20:08:23,724 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:08:23,724 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:08:23,724 INFO L85 PathProgramCache]: Analyzing trace with hash -1707305611, now seen corresponding path program 1 times [2022-04-14 20:08:23,724 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:08:23,725 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [704823710] [2022-04-14 20:08:23,725 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:08:23,725 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:08:23,768 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:23,846 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-14 20:08:23,847 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:23,856 INFO L290 TraceCheckUtils]: 0: Hoare triple {752#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [96] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_5| 1)) (.cse1 (select |v_#memory_int_5| 2))) (and (= (select .cse0 0) 48) (= (select |v_#valid_5| 1) 1) (= (select .cse1 3) 46) (= 2 (select |v_#length_3| 1)) (< 0 |v_#StackHeapBarrier_2|) (= 112 (select .cse1 2)) (= |v_#NULL.base_1| 0) (= (select |v_#valid_5| 2) 1) (= 108 (select .cse1 0)) (= (select .cse1 1) 99) (= (select .cse0 1) 0) (= 1 (select |v_#valid_5| 3)) (= (select .cse1 4) 99) (= (select .cse1 5) 0) (= 6 (select |v_#length_3| 2)) (= (select |v_#valid_5| 0) 0) (= |v_#NULL.offset_1| 0) (= 12 (select |v_#length_3| 3)))) InVars {#memory_int=|v_#memory_int_5|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_5|, #memory_int=|v_#memory_int_5|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_3|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {717#true} is VALID [2022-04-14 20:08:23,856 INFO L290 TraceCheckUtils]: 1: Hoare triple {717#true} [99] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {717#true} is VALID [2022-04-14 20:08:23,856 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {717#true} {717#true} [141] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {717#true} is VALID [2022-04-14 20:08:23,857 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-14 20:08:23,857 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:23,859 INFO L290 TraceCheckUtils]: 0: Hoare triple {717#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {717#true} is VALID [2022-04-14 20:08:23,859 INFO L290 TraceCheckUtils]: 1: Hoare triple {717#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {717#true} is VALID [2022-04-14 20:08:23,859 INFO L290 TraceCheckUtils]: 2: Hoare triple {717#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {717#true} is VALID [2022-04-14 20:08:23,860 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {717#true} {717#true} [142] assume_abort_if_notEXIT-->L38-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (and (< v_main_~n~0_7 1073741824) (<= 0 v_main_~n~0_7)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~n~0=v_main_~n~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~n~0, assume_abort_if_not_#in~cond] {717#true} is VALID [2022-04-14 20:08:23,867 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-14 20:08:23,868 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:23,871 INFO L290 TraceCheckUtils]: 0: Hoare triple {753#(= |#memory_int| |old(#memory_int)|)} [107] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_10| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_9|) InVars {#memory_int=|v_#memory_int_10|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_9|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {717#true} is VALID [2022-04-14 20:08:23,871 INFO L290 TraceCheckUtils]: 1: Hoare triple {717#true} [110] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {717#true} is VALID [2022-04-14 20:08:23,871 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {717#true} {717#true} [145] #Ultimate.meminitEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_main_#t~malloc15.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= v_main_~n~0_8 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#productInParam_1| (* v_main_~n~0_8 4)) (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_main_#t~malloc15.offset_4|)) InVars {main_#t~malloc15.offset=|v_main_#t~malloc15.offset_4|, main_~n~0=v_main_~n~0_8, main_#t~malloc15.base=|v_main_#t~malloc15.base_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, #Ultimate.meminit_#product, main_~n~0, #Ultimate.meminit_#ptr.base, main_#t~malloc15.base, #Ultimate.meminit_#ptr.offset] {717#true} is VALID [2022-04-14 20:08:23,871 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-14 20:08:23,872 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:23,874 INFO L290 TraceCheckUtils]: 0: Hoare triple {717#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {717#true} is VALID [2022-04-14 20:08:23,874 INFO L290 TraceCheckUtils]: 1: Hoare triple {717#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {717#true} is VALID [2022-04-14 20:08:23,874 INFO L290 TraceCheckUtils]: 2: Hoare triple {717#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {717#true} is VALID [2022-04-14 20:08:23,874 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {717#true} {717#true} [143] assume_abort_if_notEXIT-->L43-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_5) (<= 0 v_main_~x~0_5)) 1 0)) InVars {main_~x~0=v_main_~x~0_5, main_~y~0=v_main_~y~0_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, assume_abort_if_not_#in~cond] {717#true} is VALID [2022-04-14 20:08:23,875 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-14 20:08:23,879 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:23,995 INFO L290 TraceCheckUtils]: 0: Hoare triple {717#true} [114] lcpENTRY-->L18-5: Formula: (and (= v_lcp_~a.base_1 |v_lcp_#in~a.base_1|) (= v_lcp_~n_1 |v_lcp_#in~n_1|) (= v_lcp_~l~0_1 0) (= v_lcp_~x_1 |v_lcp_#in~x_1|) (= v_lcp_~y_1 |v_lcp_#in~y_1|) (= |v_lcp_#in~a.offset_1| v_lcp_~a.offset_1)) InVars {lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_#in~y=|v_lcp_#in~y_1|, lcp_#in~x=|v_lcp_#in~x_1|} OutVars{lcp_~x=v_lcp_~x_1, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_~l~0=v_lcp_~l~0_1, lcp_~a.offset=v_lcp_~a.offset_1, lcp_~y=v_lcp_~y_1, lcp_#in~y=|v_lcp_#in~y_1|, lcp_~a.base=v_lcp_~a.base_1, lcp_#in~x=|v_lcp_#in~x_1|, lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_~n=v_lcp_~n_1} AuxVars[] AssignedVars[lcp_~x, lcp_~l~0, lcp_~a.offset, lcp_~y, lcp_~a.base, lcp_~n] {754#(and (<= lcp_~l~0 0) (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n) (<= 0 lcp_~l~0))} is VALID [2022-04-14 20:08:23,996 INFO L290 TraceCheckUtils]: 1: Hoare triple {754#(and (<= lcp_~l~0 0) (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n) (<= 0 lcp_~l~0))} [118] L18-5-->L18-1: Formula: (let ((.cse1 (< (+ v_lcp_~y_2 v_lcp_~l~0_5) v_lcp_~n_2)) (.cse0 (< (+ v_lcp_~x_2 v_lcp_~l~0_5) v_lcp_~n_2))) (or (and (or (not .cse0) (not .cse1)) (not |v_lcp_#t~short7_5|)) (and .cse1 .cse0 |v_lcp_#t~short7_5|))) InVars {lcp_~x=v_lcp_~x_2, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} OutVars{lcp_~x=v_lcp_~x_2, lcp_#t~short7=|v_lcp_#t~short7_5|, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} AuxVars[] AssignedVars[lcp_#t~short7] {755#(and (<= lcp_~l~0 0) (<= 0 lcp_~l~0) (or |lcp_#t~short7| (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)))} is VALID [2022-04-14 20:08:23,997 INFO L290 TraceCheckUtils]: 2: Hoare triple {755#(and (<= lcp_~l~0 0) (<= 0 lcp_~l~0) (or |lcp_#t~short7| (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)))} [125] L18-1-->L18-3: Formula: (not |v_lcp_#t~short7_8|) InVars {lcp_#t~short7=|v_lcp_#t~short7_8|} OutVars{lcp_#t~short7=|v_lcp_#t~short7_8|} AuxVars[] AssignedVars[] {756#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= lcp_~l~0 0) (<= 0 lcp_~l~0))} is VALID [2022-04-14 20:08:23,998 INFO L290 TraceCheckUtils]: 3: Hoare triple {756#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= lcp_~l~0 0) (<= 0 lcp_~l~0))} [133] L18-3-->L18-6: Formula: (not |v_lcp_#t~short7_2|) InVars {lcp_#t~short7=|v_lcp_#t~short7_2|} OutVars{lcp_#t~mem6=|v_lcp_#t~mem6_1|, lcp_#t~mem5=|v_lcp_#t~mem5_1|} AuxVars[] AssignedVars[lcp_#t~mem6, lcp_#t~mem5, lcp_#t~short7] {756#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= lcp_~l~0 0) (<= 0 lcp_~l~0))} is VALID [2022-04-14 20:08:23,998 INFO L290 TraceCheckUtils]: 4: Hoare triple {756#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= lcp_~l~0 0) (<= 0 lcp_~l~0))} [123] L18-6-->lcpFINAL: Formula: (= |v_lcp_#res_1| v_lcp_~l~0_4) InVars {lcp_~l~0=v_lcp_~l~0_4} OutVars{lcp_#res=|v_lcp_#res_1|, lcp_~l~0=v_lcp_~l~0_4} AuxVars[] AssignedVars[lcp_#res] {757#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= |lcp_#res| 0) (<= 0 |lcp_#res|))} is VALID [2022-04-14 20:08:23,998 INFO L290 TraceCheckUtils]: 5: Hoare triple {757#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= |lcp_#res| 0) (<= 0 |lcp_#res|))} [132] lcpFINAL-->lcpEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {757#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= |lcp_#res| 0) (<= 0 |lcp_#res|))} is VALID [2022-04-14 20:08:23,999 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {757#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= |lcp_#res| 0) (<= 0 |lcp_#res|))} {717#true} [147] lcpEXIT-->L44: AOR: Formula: (= |v_lcp_#resOutParam_1| |v_main_#t~ret18_4|) InVars {lcp_#res=|v_lcp_#resOutParam_1|} OutVars{main_#t~ret18=|v_main_#t~ret18_4|} AuxVars[] AssignedVars[main_#t~ret18, lcp_#res] LVA: Formula: (and (= v_main_~y~0_6 |v_lcp_#in~yInParam_1|) (= |v_lcp_#in~nInParam_1| v_main_~n~0_9) (= v_main_~x~0_6 |v_lcp_#in~xInParam_1|) (= |v_lcp_#in~a.offsetInParam_1| v_main_~a~0.offset_5) (= |v_lcp_#in~a.baseInParam_1| v_main_~a~0.base_5)) InVars {main_~a~0.base=v_main_~a~0.base_5, main_~y~0=v_main_~y~0_6, main_~n~0=v_main_~n~0_9, main_~x~0=v_main_~x~0_6, main_~a~0.offset=v_main_~a~0.offset_5} OutVars{lcp_#in~a.base=|v_lcp_#in~a.baseInParam_1|, lcp_#in~a.offset=|v_lcp_#in~a.offsetInParam_1|, lcp_#in~n=|v_lcp_#in~nInParam_1|, lcp_#in~y=|v_lcp_#in~yInParam_1|, lcp_#in~x=|v_lcp_#in~xInParam_1|} AuxVars[] AssignedVars[lcp_#in~a.offset, lcp_#in~y, main_~x~0, lcp_#in~x, lcp_#in~a.base, main_~a~0.base, lcp_#in~n, main_~y~0, main_~n~0, main_~a~0.offset] {740#(and (= |main_#t~ret18| 0) (or (<= main_~n~0 main_~x~0) (<= main_~n~0 main_~y~0)))} is VALID [2022-04-14 20:08:24,000 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 33 [2022-04-14 20:08:24,001 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:24,009 INFO L290 TraceCheckUtils]: 0: Hoare triple {717#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {717#true} is VALID [2022-04-14 20:08:24,009 INFO L290 TraceCheckUtils]: 1: Hoare triple {717#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {717#true} is VALID [2022-04-14 20:08:24,009 INFO L290 TraceCheckUtils]: 2: Hoare triple {717#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {717#true} is VALID [2022-04-14 20:08:24,010 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {717#true} {743#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (and (<= 0 v_check_~i~0_4) (< v_check_~i~0_4 v_check_~l_5)) 1 0)) InVars {check_~i~0=v_check_~i~0_4, check_~l=v_check_~l_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[check_~i~0, assume_abort_if_not_#in~cond, check_~l] {743#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} is VALID [2022-04-14 20:08:24,010 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 39 [2022-04-14 20:08:24,011 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:24,015 INFO L290 TraceCheckUtils]: 0: Hoare triple {717#true} [120] __VERIFIER_assertENTRY-->L13: 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] {717#true} is VALID [2022-04-14 20:08:24,015 INFO L290 TraceCheckUtils]: 1: Hoare triple {717#true} [129] L13-->L13-3: 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[] {717#true} is VALID [2022-04-14 20:08:24,016 INFO L290 TraceCheckUtils]: 2: Hoare triple {717#true} [139] L13-3-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {717#true} is VALID [2022-04-14 20:08:24,016 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {717#true} {743#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} [149] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= |v_check_#t~mem11_4| |v_check_#t~mem10_4|) 1 0)) InVars {check_#t~mem10=|v_check_#t~mem10_4|, check_#t~mem11=|v_check_#t~mem11_4|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, check_#t~mem10, check_#t~mem11] {743#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} is VALID [2022-04-14 20:08:24,017 INFO L272 TraceCheckUtils]: 0: Hoare triple {717#true} [94] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {752#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-14 20:08:24,017 INFO L290 TraceCheckUtils]: 1: Hoare triple {752#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [96] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_5| 1)) (.cse1 (select |v_#memory_int_5| 2))) (and (= (select .cse0 0) 48) (= (select |v_#valid_5| 1) 1) (= (select .cse1 3) 46) (= 2 (select |v_#length_3| 1)) (< 0 |v_#StackHeapBarrier_2|) (= 112 (select .cse1 2)) (= |v_#NULL.base_1| 0) (= (select |v_#valid_5| 2) 1) (= 108 (select .cse1 0)) (= (select .cse1 1) 99) (= (select .cse0 1) 0) (= 1 (select |v_#valid_5| 3)) (= (select .cse1 4) 99) (= (select .cse1 5) 0) (= 6 (select |v_#length_3| 2)) (= (select |v_#valid_5| 0) 0) (= |v_#NULL.offset_1| 0) (= 12 (select |v_#length_3| 3)))) InVars {#memory_int=|v_#memory_int_5|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_5|, #memory_int=|v_#memory_int_5|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_3|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {717#true} is VALID [2022-04-14 20:08:24,017 INFO L290 TraceCheckUtils]: 2: Hoare triple {717#true} [99] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {717#true} is VALID [2022-04-14 20:08:24,017 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {717#true} {717#true} [141] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {717#true} is VALID [2022-04-14 20:08:24,017 INFO L272 TraceCheckUtils]: 4: Hoare triple {717#true} [95] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {717#true} is VALID [2022-04-14 20:08:24,017 INFO L290 TraceCheckUtils]: 5: Hoare triple {717#true} [98] mainENTRY-->L38: Formula: (and (<= |v_main_#t~nondet14_2| 2147483647) (= v_main_~n~0_3 |v_main_#t~nondet14_2|) (<= 0 (+ |v_main_#t~nondet14_2| 2147483648))) InVars {main_#t~nondet14=|v_main_#t~nondet14_2|} OutVars{main_~n~0=v_main_~n~0_3} AuxVars[] AssignedVars[main_#t~nondet14, main_~n~0] {717#true} is VALID [2022-04-14 20:08:24,017 INFO L272 TraceCheckUtils]: 6: Hoare triple {717#true} [100] L38-->assume_abort_if_notENTRY: Formula: (= (ite (and (< v_main_~n~0_7 1073741824) (<= 0 v_main_~n~0_7)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~n~0=v_main_~n~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~n~0, assume_abort_if_not_#in~cond] {717#true} is VALID [2022-04-14 20:08:24,017 INFO L290 TraceCheckUtils]: 7: Hoare triple {717#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {717#true} is VALID [2022-04-14 20:08:24,017 INFO L290 TraceCheckUtils]: 8: Hoare triple {717#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {717#true} is VALID [2022-04-14 20:08:24,018 INFO L290 TraceCheckUtils]: 9: Hoare triple {717#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {717#true} is VALID [2022-04-14 20:08:24,018 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {717#true} {717#true} [142] assume_abort_if_notEXIT-->L38-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (and (< v_main_~n~0_7 1073741824) (<= 0 v_main_~n~0_7)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~n~0=v_main_~n~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~n~0, assume_abort_if_not_#in~cond] {717#true} is VALID [2022-04-14 20:08:24,018 INFO L290 TraceCheckUtils]: 11: Hoare triple {717#true} [101] L38-1-->L39: Formula: (and (= |v_#valid_3| (store |v_#valid_4| |v_main_#t~malloc15.base_1| 1)) (not (= |v_main_#t~malloc15.base_1| 0)) (= |v_#length_1| (store |v_#length_2| |v_main_#t~malloc15.base_1| (* v_main_~n~0_5 4))) (< |v_main_#t~malloc15.base_1| |v_#StackHeapBarrier_1|) (= (select |v_#valid_4| |v_main_#t~malloc15.base_1|) 0) (= |v_main_#t~malloc15.offset_1| 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_2|, main_~n~0=v_main_~n~0_5, #valid=|v_#valid_4|} OutVars{main_#t~malloc15.offset=|v_main_#t~malloc15.offset_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_3|, #length=|v_#length_1|, main_~n~0=v_main_~n~0_5, main_#t~malloc15.base=|v_main_#t~malloc15.base_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #valid, #length, main_#t~malloc15.base] {717#true} is VALID [2022-04-14 20:08:24,018 INFO L272 TraceCheckUtils]: 12: Hoare triple {717#true} [103] L39-->#Ultimate.meminitENTRY: Formula: (and (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_main_#t~malloc15.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= v_main_~n~0_8 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#productInParam_1| (* v_main_~n~0_8 4)) (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_main_#t~malloc15.offset_4|)) InVars {main_#t~malloc15.offset=|v_main_#t~malloc15.offset_4|, main_~n~0=v_main_~n~0_8, main_#t~malloc15.base=|v_main_#t~malloc15.base_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, #Ultimate.meminit_#product, main_~n~0, #Ultimate.meminit_#ptr.base, main_#t~malloc15.base, #Ultimate.meminit_#ptr.offset] {753#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-04-14 20:08:24,022 INFO L290 TraceCheckUtils]: 13: Hoare triple {753#(= |#memory_int| |old(#memory_int)|)} [107] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_10| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_9|) InVars {#memory_int=|v_#memory_int_10|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_9|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {717#true} is VALID [2022-04-14 20:08:24,022 INFO L290 TraceCheckUtils]: 14: Hoare triple {717#true} [110] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {717#true} is VALID [2022-04-14 20:08:24,022 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {717#true} {717#true} [145] #Ultimate.meminitEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_main_#t~malloc15.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= v_main_~n~0_8 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#productInParam_1| (* v_main_~n~0_8 4)) (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_main_#t~malloc15.offset_4|)) InVars {main_#t~malloc15.offset=|v_main_#t~malloc15.offset_4|, main_~n~0=v_main_~n~0_8, main_#t~malloc15.base=|v_main_#t~malloc15.base_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, #Ultimate.meminit_#product, main_~n~0, #Ultimate.meminit_#ptr.base, main_#t~malloc15.base, #Ultimate.meminit_#ptr.offset] {717#true} is VALID [2022-04-14 20:08:24,023 INFO L290 TraceCheckUtils]: 16: Hoare triple {717#true} [106] L39-1-->L43: Formula: (and (<= |v_main_#t~nondet17_2| 2147483647) (= v_main_~a~0.offset_4 |v_main_#t~malloc15.offset_3|) (<= 0 (+ |v_main_#t~nondet16_2| 2147483648)) (= v_main_~y~0_3 |v_main_#t~nondet17_2|) (= v_main_~x~0_3 |v_main_#t~nondet16_2|) (<= |v_main_#t~nondet16_2| 2147483647) (<= 0 (+ |v_main_#t~nondet17_2| 2147483648)) (= v_main_~a~0.base_4 |v_main_#t~malloc15.base_3|)) InVars {main_#t~nondet16=|v_main_#t~nondet16_2|, main_#t~malloc15.offset=|v_main_#t~malloc15.offset_3|, main_#t~malloc15.base=|v_main_#t~malloc15.base_3|, main_#t~nondet17=|v_main_#t~nondet17_2|} OutVars{main_#t~malloc15.offset=|v_main_#t~malloc15.offset_3|, main_~x~0=v_main_~x~0_3, main_~a~0.base=v_main_~a~0.base_4, main_~y~0=v_main_~y~0_3, main_#t~malloc15.base=|v_main_#t~malloc15.base_3|, main_~a~0.offset=v_main_~a~0.offset_4} AuxVars[] AssignedVars[main_#t~nondet16, main_~x~0, main_#t~nondet17, main_~a~0.base, main_~y~0, main_~a~0.offset] {717#true} is VALID [2022-04-14 20:08:24,023 INFO L272 TraceCheckUtils]: 17: Hoare triple {717#true} [109] L43-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_5) (<= 0 v_main_~x~0_5)) 1 0)) InVars {main_~x~0=v_main_~x~0_5, main_~y~0=v_main_~y~0_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, assume_abort_if_not_#in~cond] {717#true} is VALID [2022-04-14 20:08:24,023 INFO L290 TraceCheckUtils]: 18: Hoare triple {717#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {717#true} is VALID [2022-04-14 20:08:24,023 INFO L290 TraceCheckUtils]: 19: Hoare triple {717#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {717#true} is VALID [2022-04-14 20:08:24,023 INFO L290 TraceCheckUtils]: 20: Hoare triple {717#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {717#true} is VALID [2022-04-14 20:08:24,023 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {717#true} {717#true} [143] assume_abort_if_notEXIT-->L43-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_5) (<= 0 v_main_~x~0_5)) 1 0)) InVars {main_~x~0=v_main_~x~0_5, main_~y~0=v_main_~y~0_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, assume_abort_if_not_#in~cond] {717#true} is VALID [2022-04-14 20:08:24,023 INFO L272 TraceCheckUtils]: 22: Hoare triple {717#true} [111] L43-1-->lcpENTRY: Formula: (and (= v_main_~y~0_6 |v_lcp_#in~yInParam_1|) (= |v_lcp_#in~nInParam_1| v_main_~n~0_9) (= v_main_~x~0_6 |v_lcp_#in~xInParam_1|) (= |v_lcp_#in~a.offsetInParam_1| v_main_~a~0.offset_5) (= |v_lcp_#in~a.baseInParam_1| v_main_~a~0.base_5)) InVars {main_~a~0.base=v_main_~a~0.base_5, main_~y~0=v_main_~y~0_6, main_~n~0=v_main_~n~0_9, main_~x~0=v_main_~x~0_6, main_~a~0.offset=v_main_~a~0.offset_5} OutVars{lcp_#in~a.base=|v_lcp_#in~a.baseInParam_1|, lcp_#in~a.offset=|v_lcp_#in~a.offsetInParam_1|, lcp_#in~n=|v_lcp_#in~nInParam_1|, lcp_#in~y=|v_lcp_#in~yInParam_1|, lcp_#in~x=|v_lcp_#in~xInParam_1|} AuxVars[] AssignedVars[lcp_#in~a.offset, lcp_#in~y, main_~x~0, lcp_#in~x, lcp_#in~a.base, main_~a~0.base, lcp_#in~n, main_~y~0, main_~n~0, main_~a~0.offset] {717#true} is VALID [2022-04-14 20:08:24,024 INFO L290 TraceCheckUtils]: 23: Hoare triple {717#true} [114] lcpENTRY-->L18-5: Formula: (and (= v_lcp_~a.base_1 |v_lcp_#in~a.base_1|) (= v_lcp_~n_1 |v_lcp_#in~n_1|) (= v_lcp_~l~0_1 0) (= v_lcp_~x_1 |v_lcp_#in~x_1|) (= v_lcp_~y_1 |v_lcp_#in~y_1|) (= |v_lcp_#in~a.offset_1| v_lcp_~a.offset_1)) InVars {lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_#in~y=|v_lcp_#in~y_1|, lcp_#in~x=|v_lcp_#in~x_1|} OutVars{lcp_~x=v_lcp_~x_1, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_~l~0=v_lcp_~l~0_1, lcp_~a.offset=v_lcp_~a.offset_1, lcp_~y=v_lcp_~y_1, lcp_#in~y=|v_lcp_#in~y_1|, lcp_~a.base=v_lcp_~a.base_1, lcp_#in~x=|v_lcp_#in~x_1|, lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_~n=v_lcp_~n_1} AuxVars[] AssignedVars[lcp_~x, lcp_~l~0, lcp_~a.offset, lcp_~y, lcp_~a.base, lcp_~n] {754#(and (<= lcp_~l~0 0) (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n) (<= 0 lcp_~l~0))} is VALID [2022-04-14 20:08:24,025 INFO L290 TraceCheckUtils]: 24: Hoare triple {754#(and (<= lcp_~l~0 0) (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n) (<= 0 lcp_~l~0))} [118] L18-5-->L18-1: Formula: (let ((.cse1 (< (+ v_lcp_~y_2 v_lcp_~l~0_5) v_lcp_~n_2)) (.cse0 (< (+ v_lcp_~x_2 v_lcp_~l~0_5) v_lcp_~n_2))) (or (and (or (not .cse0) (not .cse1)) (not |v_lcp_#t~short7_5|)) (and .cse1 .cse0 |v_lcp_#t~short7_5|))) InVars {lcp_~x=v_lcp_~x_2, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} OutVars{lcp_~x=v_lcp_~x_2, lcp_#t~short7=|v_lcp_#t~short7_5|, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} AuxVars[] AssignedVars[lcp_#t~short7] {755#(and (<= lcp_~l~0 0) (<= 0 lcp_~l~0) (or |lcp_#t~short7| (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)))} is VALID [2022-04-14 20:08:24,026 INFO L290 TraceCheckUtils]: 25: Hoare triple {755#(and (<= lcp_~l~0 0) (<= 0 lcp_~l~0) (or |lcp_#t~short7| (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)))} [125] L18-1-->L18-3: Formula: (not |v_lcp_#t~short7_8|) InVars {lcp_#t~short7=|v_lcp_#t~short7_8|} OutVars{lcp_#t~short7=|v_lcp_#t~short7_8|} AuxVars[] AssignedVars[] {756#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= lcp_~l~0 0) (<= 0 lcp_~l~0))} is VALID [2022-04-14 20:08:24,031 INFO L290 TraceCheckUtils]: 26: Hoare triple {756#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= lcp_~l~0 0) (<= 0 lcp_~l~0))} [133] L18-3-->L18-6: Formula: (not |v_lcp_#t~short7_2|) InVars {lcp_#t~short7=|v_lcp_#t~short7_2|} OutVars{lcp_#t~mem6=|v_lcp_#t~mem6_1|, lcp_#t~mem5=|v_lcp_#t~mem5_1|} AuxVars[] AssignedVars[lcp_#t~mem6, lcp_#t~mem5, lcp_#t~short7] {756#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= lcp_~l~0 0) (<= 0 lcp_~l~0))} is VALID [2022-04-14 20:08:24,032 INFO L290 TraceCheckUtils]: 27: Hoare triple {756#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= lcp_~l~0 0) (<= 0 lcp_~l~0))} [123] L18-6-->lcpFINAL: Formula: (= |v_lcp_#res_1| v_lcp_~l~0_4) InVars {lcp_~l~0=v_lcp_~l~0_4} OutVars{lcp_#res=|v_lcp_#res_1|, lcp_~l~0=v_lcp_~l~0_4} AuxVars[] AssignedVars[lcp_#res] {757#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= |lcp_#res| 0) (<= 0 |lcp_#res|))} is VALID [2022-04-14 20:08:24,033 INFO L290 TraceCheckUtils]: 28: Hoare triple {757#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= |lcp_#res| 0) (<= 0 |lcp_#res|))} [132] lcpFINAL-->lcpEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {757#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= |lcp_#res| 0) (<= 0 |lcp_#res|))} is VALID [2022-04-14 20:08:24,034 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {757#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= |lcp_#res| 0) (<= 0 |lcp_#res|))} {717#true} [147] lcpEXIT-->L44: AOR: Formula: (= |v_lcp_#resOutParam_1| |v_main_#t~ret18_4|) InVars {lcp_#res=|v_lcp_#resOutParam_1|} OutVars{main_#t~ret18=|v_main_#t~ret18_4|} AuxVars[] AssignedVars[main_#t~ret18, lcp_#res] LVA: Formula: (and (= v_main_~y~0_6 |v_lcp_#in~yInParam_1|) (= |v_lcp_#in~nInParam_1| v_main_~n~0_9) (= v_main_~x~0_6 |v_lcp_#in~xInParam_1|) (= |v_lcp_#in~a.offsetInParam_1| v_main_~a~0.offset_5) (= |v_lcp_#in~a.baseInParam_1| v_main_~a~0.base_5)) InVars {main_~a~0.base=v_main_~a~0.base_5, main_~y~0=v_main_~y~0_6, main_~n~0=v_main_~n~0_9, main_~x~0=v_main_~x~0_6, main_~a~0.offset=v_main_~a~0.offset_5} OutVars{lcp_#in~a.base=|v_lcp_#in~a.baseInParam_1|, lcp_#in~a.offset=|v_lcp_#in~a.offsetInParam_1|, lcp_#in~n=|v_lcp_#in~nInParam_1|, lcp_#in~y=|v_lcp_#in~yInParam_1|, lcp_#in~x=|v_lcp_#in~xInParam_1|} AuxVars[] AssignedVars[lcp_#in~a.offset, lcp_#in~y, main_~x~0, lcp_#in~x, lcp_#in~a.base, main_~a~0.base, lcp_#in~n, main_~y~0, main_~n~0, main_~a~0.offset] {740#(and (= |main_#t~ret18| 0) (or (<= main_~n~0 main_~x~0) (<= main_~n~0 main_~y~0)))} is VALID [2022-04-14 20:08:24,034 INFO L290 TraceCheckUtils]: 30: Hoare triple {740#(and (= |main_#t~ret18| 0) (or (<= main_~n~0 main_~x~0) (<= main_~n~0 main_~y~0)))} [113] L44-->L45: Formula: (and (<= |v_main_#t~ret18_3| 2147483647) (= v_main_~l~1_1 |v_main_#t~ret18_3|) (<= 0 (+ |v_main_#t~ret18_3| 2147483648))) InVars {main_#t~ret18=|v_main_#t~ret18_3|} OutVars{main_~l~1=v_main_~l~1_1} AuxVars[] AssignedVars[main_#t~ret18, main_~l~1] {741#(and (= main_~l~1 0) (or (<= main_~n~0 main_~x~0) (<= main_~n~0 main_~y~0)))} is VALID [2022-04-14 20:08:24,036 INFO L272 TraceCheckUtils]: 31: Hoare triple {741#(and (= main_~l~1 0) (or (<= main_~n~0 main_~x~0) (<= main_~n~0 main_~y~0)))} [116] L45-->checkENTRY: Formula: (and (= v_main_~n~0_10 |v_check_#in~nInParam_1|) (= |v_check_#in~a.baseInParam_1| v_main_~a~0.base_6) (= v_main_~y~0_7 |v_check_#in~yInParam_1|) (= v_main_~x~0_7 |v_check_#in~xInParam_1|) (= |v_check_#in~a.offsetInParam_1| v_main_~a~0.offset_6) (= |v_check_#in~lInParam_1| v_main_~l~1_3)) InVars {main_~x~0=v_main_~x~0_7, main_~l~1=v_main_~l~1_3, main_~a~0.base=v_main_~a~0.base_6, main_~y~0=v_main_~y~0_7, main_~n~0=v_main_~n~0_10, main_~a~0.offset=v_main_~a~0.offset_6} OutVars{check_#in~y=|v_check_#in~yInParam_1|, check_#in~x=|v_check_#in~xInParam_1|, check_#in~a.offset=|v_check_#in~a.offsetInParam_1|, check_#in~a.base=|v_check_#in~a.baseInParam_1|, check_#in~l=|v_check_#in~lInParam_1|, check_#in~n=|v_check_#in~nInParam_1|} AuxVars[] AssignedVars[check_#in~y, check_#in~x, check_#in~a.offset, main_~x~0, main_~l~1, check_#in~a.base, main_~a~0.base, main_~y~0, main_~n~0, check_#in~l, main_~a~0.offset, check_#in~n] {742#(and (= |check_#in~l| 0) (or (<= |check_#in~n| |check_#in~x|) (<= |check_#in~n| |check_#in~y|)))} is VALID [2022-04-14 20:08:24,036 INFO L290 TraceCheckUtils]: 32: Hoare triple {742#(and (= |check_#in~l| 0) (or (<= |check_#in~n| |check_#in~x|) (<= |check_#in~n| |check_#in~y|)))} [122] checkENTRY-->L27: Formula: (and (= v_check_~x_2 |v_check_#in~x_1|) (= |v_check_#in~a.offset_1| v_check_~a.offset_1) (= v_check_~i~0_1 |v_check_#t~nondet9_2|) (= v_check_~l_2 |v_check_#in~l_1|) (= v_check_~n_2 |v_check_#in~n_1|) (= v_check_~a.base_1 |v_check_#in~a.base_1|) (<= 0 (+ 2147483648 |v_check_#t~nondet9_2|)) (= v_check_~y_2 |v_check_#in~y_1|) (<= |v_check_#t~nondet9_2| 2147483647)) InVars {check_#in~y=|v_check_#in~y_1|, check_#in~x=|v_check_#in~x_1|, check_#in~a.offset=|v_check_#in~a.offset_1|, check_#in~a.base=|v_check_#in~a.base_1|, check_#in~l=|v_check_#in~l_1|, check_#t~nondet9=|v_check_#t~nondet9_2|, check_#in~n=|v_check_#in~n_1|} OutVars{check_#in~y=|v_check_#in~y_1|, check_#in~x=|v_check_#in~x_1|, check_#in~a.offset=|v_check_#in~a.offset_1|, check_~a.base=v_check_~a.base_1, check_~i~0=v_check_~i~0_1, check_~y=v_check_~y_2, check_~x=v_check_~x_2, check_~a.offset=v_check_~a.offset_1, check_#in~a.base=|v_check_#in~a.base_1|, check_#in~l=|v_check_#in~l_1|, check_~n=v_check_~n_2, check_#in~n=|v_check_#in~n_1|, check_~l=v_check_~l_2} AuxVars[] AssignedVars[check_~y, check_~x, check_~a.base, check_~a.offset, check_~i~0, check_~n, check_#t~nondet9, check_~l] {743#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} is VALID [2022-04-14 20:08:24,036 INFO L272 TraceCheckUtils]: 33: Hoare triple {743#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} [131] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (and (<= 0 v_check_~i~0_4) (< v_check_~i~0_4 v_check_~l_5)) 1 0)) InVars {check_~i~0=v_check_~i~0_4, check_~l=v_check_~l_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[check_~i~0, assume_abort_if_not_#in~cond, check_~l] {717#true} is VALID [2022-04-14 20:08:24,036 INFO L290 TraceCheckUtils]: 34: Hoare triple {717#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {717#true} is VALID [2022-04-14 20:08:24,036 INFO L290 TraceCheckUtils]: 35: Hoare triple {717#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {717#true} is VALID [2022-04-14 20:08:24,036 INFO L290 TraceCheckUtils]: 36: Hoare triple {717#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {717#true} is VALID [2022-04-14 20:08:24,037 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {717#true} {743#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (and (<= 0 v_check_~i~0_4) (< v_check_~i~0_4 v_check_~l_5)) 1 0)) InVars {check_~i~0=v_check_~i~0_4, check_~l=v_check_~l_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[check_~i~0, assume_abort_if_not_#in~cond, check_~l] {743#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} is VALID [2022-04-14 20:08:24,037 INFO L290 TraceCheckUtils]: 38: Hoare triple {743#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} [112] L27-1-->L28: Formula: (let ((.cse0 (select |v_#memory_int_3| v_check_~a.base_2)) (.cse1 (* v_check_~i~0_3 4))) (and (= (select .cse0 (+ (* v_check_~y_3 4) v_check_~a.offset_2 .cse1)) |v_check_#t~mem11_1|) (= (select .cse0 (+ (* v_check_~x_3 4) v_check_~a.offset_2 .cse1)) |v_check_#t~mem10_1|))) InVars {check_~y=v_check_~y_3, check_~x=v_check_~x_3, check_~a.base=v_check_~a.base_2, check_~a.offset=v_check_~a.offset_2, check_~i~0=v_check_~i~0_3, #memory_int=|v_#memory_int_3|} OutVars{check_~y=v_check_~y_3, check_~x=v_check_~x_3, check_#t~mem10=|v_check_#t~mem10_1|, check_~a.base=v_check_~a.base_2, check_~a.offset=v_check_~a.offset_2, check_~i~0=v_check_~i~0_3, check_#t~mem11=|v_check_#t~mem11_1|, #memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[check_#t~mem10, check_#t~mem11] {743#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} is VALID [2022-04-14 20:08:24,038 INFO L272 TraceCheckUtils]: 39: Hoare triple {743#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} [115] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= |v_check_#t~mem11_4| |v_check_#t~mem10_4|) 1 0)) InVars {check_#t~mem10=|v_check_#t~mem10_4|, check_#t~mem11=|v_check_#t~mem11_4|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, check_#t~mem10, check_#t~mem11] {717#true} is VALID [2022-04-14 20:08:24,038 INFO L290 TraceCheckUtils]: 40: Hoare triple {717#true} [120] __VERIFIER_assertENTRY-->L13: 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] {717#true} is VALID [2022-04-14 20:08:24,038 INFO L290 TraceCheckUtils]: 41: Hoare triple {717#true} [129] L13-->L13-3: 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[] {717#true} is VALID [2022-04-14 20:08:24,038 INFO L290 TraceCheckUtils]: 42: Hoare triple {717#true} [139] L13-3-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {717#true} is VALID [2022-04-14 20:08:24,039 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {717#true} {743#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} [149] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= |v_check_#t~mem11_4| |v_check_#t~mem10_4|) 1 0)) InVars {check_#t~mem10=|v_check_#t~mem10_4|, check_#t~mem11=|v_check_#t~mem11_4|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, check_#t~mem10, check_#t~mem11] {743#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} is VALID [2022-04-14 20:08:24,039 INFO L290 TraceCheckUtils]: 44: Hoare triple {743#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} [119] L28-1-->L31: Formula: true InVars {} OutVars{check_#t~mem10=|v_check_#t~mem10_3|, check_#t~mem11=|v_check_#t~mem11_3|} AuxVars[] AssignedVars[check_#t~mem10, check_#t~mem11] {743#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} is VALID [2022-04-14 20:08:24,040 INFO L290 TraceCheckUtils]: 45: Hoare triple {743#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} [126] L31-->L32: Formula: (let ((.cse0 (select |v_#memory_int_4| v_check_~a.base_3)) (.cse1 (* v_check_~l_4 4))) (and (< (+ v_check_~l_4 v_check_~x_4) v_check_~n_3) (< (+ v_check_~l_4 v_check_~y_4) v_check_~n_3) (= (select .cse0 (+ (* v_check_~y_4 4) .cse1 v_check_~a.offset_3)) |v_check_#t~mem13_1|) (= |v_check_#t~mem12_1| (select .cse0 (+ .cse1 (* v_check_~x_4 4) v_check_~a.offset_3))))) InVars {check_~y=v_check_~y_4, check_~x=v_check_~x_4, check_~a.base=v_check_~a.base_3, check_~a.offset=v_check_~a.offset_3, #memory_int=|v_#memory_int_4|, check_~n=v_check_~n_3, check_~l=v_check_~l_4} OutVars{check_#t~mem13=|v_check_#t~mem13_1|, check_~y=v_check_~y_4, check_~x=v_check_~x_4, check_~a.base=v_check_~a.base_3, check_~a.offset=v_check_~a.offset_3, check_#t~mem12=|v_check_#t~mem12_1|, #memory_int=|v_#memory_int_4|, check_~n=v_check_~n_3, check_~l=v_check_~l_4} AuxVars[] AssignedVars[check_#t~mem13, check_#t~mem12] {718#false} is VALID [2022-04-14 20:08:24,040 INFO L272 TraceCheckUtils]: 46: Hoare triple {718#false} [135] L32-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (not (= |v_check_#t~mem13_4| |v_check_#t~mem12_4|)) 1 0)) InVars {check_#t~mem13=|v_check_#t~mem13_4|, check_#t~mem12=|v_check_#t~mem12_4|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[check_#t~mem13, __VERIFIER_assert_#in~cond, check_#t~mem12] {718#false} is VALID [2022-04-14 20:08:24,040 INFO L290 TraceCheckUtils]: 47: Hoare triple {718#false} [120] __VERIFIER_assertENTRY-->L13: 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] {718#false} is VALID [2022-04-14 20:08:24,040 INFO L290 TraceCheckUtils]: 48: Hoare triple {718#false} [128] L13-->L13-1: 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[] {718#false} is VALID [2022-04-14 20:08:24,040 INFO L290 TraceCheckUtils]: 49: Hoare triple {718#false} [137] L13-1-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {718#false} is VALID [2022-04-14 20:08:24,040 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-14 20:08:24,041 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:08:24,041 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [704823710] [2022-04-14 20:08:24,041 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [704823710] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 20:08:24,041 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 20:08:24,041 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-14 20:08:24,041 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [144774078] [2022-04-14 20:08:24,041 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:08:24,041 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (10), 5 states have call predecessors, (10), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) Word has length 50 [2022-04-14 20:08:24,042 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:08:24,042 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (10), 5 states have call predecessors, (10), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-14 20:08:24,067 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:08:24,068 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-14 20:08:24,068 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:08:24,069 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-14 20:08:24,070 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=110, Unknown=0, NotChecked=0, Total=132 [2022-04-14 20:08:24,070 INFO L87 Difference]: Start difference. First operand 44 states and 47 transitions. Second operand has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (10), 5 states have call predecessors, (10), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-14 20:08:25,072 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:08:25,072 INFO L93 Difference]: Finished difference Result 59 states and 65 transitions. [2022-04-14 20:08:25,072 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-14 20:08:25,073 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (10), 5 states have call predecessors, (10), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) Word has length 50 [2022-04-14 20:08:25,073 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:08:25,073 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (10), 5 states have call predecessors, (10), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-14 20:08:25,075 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 64 transitions. [2022-04-14 20:08:25,075 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (10), 5 states have call predecessors, (10), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-14 20:08:25,076 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 64 transitions. [2022-04-14 20:08:25,076 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 64 transitions. [2022-04-14 20:08:25,127 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:08:25,129 INFO L225 Difference]: With dead ends: 59 [2022-04-14 20:08:25,129 INFO L226 Difference]: Without dead ends: 48 [2022-04-14 20:08:25,129 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 33 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 30 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=84, Invalid=336, Unknown=0, NotChecked=0, Total=420 [2022-04-14 20:08:25,130 INFO L913 BasicCegarLoop]: 30 mSDtfsCounter, 72 mSDsluCounter, 16 mSDsCounter, 0 mSdLazyCounter, 415 mSolverCounterSat, 43 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 75 SdHoareTripleChecker+Valid, 46 SdHoareTripleChecker+Invalid, 458 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 43 IncrementalHoareTripleChecker+Valid, 415 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-14 20:08:25,130 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [75 Valid, 46 Invalid, 458 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [43 Valid, 415 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-14 20:08:25,130 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-14 20:08:25,132 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 46. [2022-04-14 20:08:25,133 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:08:25,133 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 46 states, 30 states have (on average 1.1) internal successors, (33), 30 states have internal predecessors, (33), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 20:08:25,133 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 46 states, 30 states have (on average 1.1) internal successors, (33), 30 states have internal predecessors, (33), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 20:08:25,133 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 46 states, 30 states have (on average 1.1) internal successors, (33), 30 states have internal predecessors, (33), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 20:08:25,134 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:08:25,135 INFO L93 Difference]: Finished difference Result 48 states and 52 transitions. [2022-04-14 20:08:25,135 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 52 transitions. [2022-04-14 20:08:25,135 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:08:25,135 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:08:25,135 INFO L74 IsIncluded]: Start isIncluded. First operand has 46 states, 30 states have (on average 1.1) internal successors, (33), 30 states have internal predecessors, (33), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 48 states. [2022-04-14 20:08:25,135 INFO L87 Difference]: Start difference. First operand has 46 states, 30 states have (on average 1.1) internal successors, (33), 30 states have internal predecessors, (33), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 48 states. [2022-04-14 20:08:25,137 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:08:25,137 INFO L93 Difference]: Finished difference Result 48 states and 52 transitions. [2022-04-14 20:08:25,137 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 52 transitions. [2022-04-14 20:08:25,137 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:08:25,137 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:08:25,137 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:08:25,137 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:08:25,137 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 30 states have (on average 1.1) internal successors, (33), 30 states have internal predecessors, (33), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 20:08:25,138 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 50 transitions. [2022-04-14 20:08:25,138 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 50 transitions. Word has length 50 [2022-04-14 20:08:25,138 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:08:25,139 INFO L478 AbstractCegarLoop]: Abstraction has 46 states and 50 transitions. [2022-04-14 20:08:25,139 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (10), 5 states have call predecessors, (10), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-14 20:08:25,139 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 50 transitions. [2022-04-14 20:08:25,139 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 54 [2022-04-14 20:08:25,139 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:08:25,140 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:08:25,140 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-04-14 20:08:25,140 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:08:25,140 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:08:25,140 INFO L85 PathProgramCache]: Analyzing trace with hash -573911401, now seen corresponding path program 1 times [2022-04-14 20:08:25,140 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:08:25,140 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1208257738] [2022-04-14 20:08:25,140 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:08:25,140 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:08:25,190 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:25,260 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-14 20:08:25,262 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:25,264 INFO L290 TraceCheckUtils]: 0: Hoare triple {1018#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [96] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_5| 1)) (.cse1 (select |v_#memory_int_5| 2))) (and (= (select .cse0 0) 48) (= (select |v_#valid_5| 1) 1) (= (select .cse1 3) 46) (= 2 (select |v_#length_3| 1)) (< 0 |v_#StackHeapBarrier_2|) (= 112 (select .cse1 2)) (= |v_#NULL.base_1| 0) (= (select |v_#valid_5| 2) 1) (= 108 (select .cse1 0)) (= (select .cse1 1) 99) (= (select .cse0 1) 0) (= 1 (select |v_#valid_5| 3)) (= (select .cse1 4) 99) (= (select .cse1 5) 0) (= 6 (select |v_#length_3| 2)) (= (select |v_#valid_5| 0) 0) (= |v_#NULL.offset_1| 0) (= 12 (select |v_#length_3| 3)))) InVars {#memory_int=|v_#memory_int_5|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_5|, #memory_int=|v_#memory_int_5|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_3|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {980#true} is VALID [2022-04-14 20:08:25,265 INFO L290 TraceCheckUtils]: 1: Hoare triple {980#true} [99] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:25,265 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {980#true} {980#true} [141] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:25,265 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-14 20:08:25,265 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:25,273 INFO L290 TraceCheckUtils]: 0: Hoare triple {980#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {980#true} is VALID [2022-04-14 20:08:25,273 INFO L290 TraceCheckUtils]: 1: Hoare triple {980#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:25,273 INFO L290 TraceCheckUtils]: 2: Hoare triple {980#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:25,273 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {980#true} {980#true} [142] assume_abort_if_notEXIT-->L38-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (and (< v_main_~n~0_7 1073741824) (<= 0 v_main_~n~0_7)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~n~0=v_main_~n~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~n~0, assume_abort_if_not_#in~cond] {980#true} is VALID [2022-04-14 20:08:25,277 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-14 20:08:25,278 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:25,286 INFO L290 TraceCheckUtils]: 0: Hoare triple {1019#(= |#memory_int| |old(#memory_int)|)} [107] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_10| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_9|) InVars {#memory_int=|v_#memory_int_10|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_9|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {980#true} is VALID [2022-04-14 20:08:25,286 INFO L290 TraceCheckUtils]: 1: Hoare triple {980#true} [110] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:25,286 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {980#true} {980#true} [145] #Ultimate.meminitEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_main_#t~malloc15.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= v_main_~n~0_8 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#productInParam_1| (* v_main_~n~0_8 4)) (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_main_#t~malloc15.offset_4|)) InVars {main_#t~malloc15.offset=|v_main_#t~malloc15.offset_4|, main_~n~0=v_main_~n~0_8, main_#t~malloc15.base=|v_main_#t~malloc15.base_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, #Ultimate.meminit_#product, main_~n~0, #Ultimate.meminit_#ptr.base, main_#t~malloc15.base, #Ultimate.meminit_#ptr.offset] {980#true} is VALID [2022-04-14 20:08:25,287 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-14 20:08:25,288 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:25,292 INFO L290 TraceCheckUtils]: 0: Hoare triple {980#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {980#true} is VALID [2022-04-14 20:08:25,293 INFO L290 TraceCheckUtils]: 1: Hoare triple {980#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:25,293 INFO L290 TraceCheckUtils]: 2: Hoare triple {980#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:25,293 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {980#true} {980#true} [143] assume_abort_if_notEXIT-->L43-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_5) (<= 0 v_main_~x~0_5)) 1 0)) InVars {main_~x~0=v_main_~x~0_5, main_~y~0=v_main_~y~0_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, assume_abort_if_not_#in~cond] {980#true} is VALID [2022-04-14 20:08:25,293 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-14 20:08:25,300 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:25,383 INFO L290 TraceCheckUtils]: 0: Hoare triple {980#true} [114] lcpENTRY-->L18-5: Formula: (and (= v_lcp_~a.base_1 |v_lcp_#in~a.base_1|) (= v_lcp_~n_1 |v_lcp_#in~n_1|) (= v_lcp_~l~0_1 0) (= v_lcp_~x_1 |v_lcp_#in~x_1|) (= v_lcp_~y_1 |v_lcp_#in~y_1|) (= |v_lcp_#in~a.offset_1| v_lcp_~a.offset_1)) InVars {lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_#in~y=|v_lcp_#in~y_1|, lcp_#in~x=|v_lcp_#in~x_1|} OutVars{lcp_~x=v_lcp_~x_1, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_~l~0=v_lcp_~l~0_1, lcp_~a.offset=v_lcp_~a.offset_1, lcp_~y=v_lcp_~y_1, lcp_#in~y=|v_lcp_#in~y_1|, lcp_~a.base=v_lcp_~a.base_1, lcp_#in~x=|v_lcp_#in~x_1|, lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_~n=v_lcp_~n_1} AuxVars[] AssignedVars[lcp_~x, lcp_~l~0, lcp_~a.offset, lcp_~y, lcp_~a.base, lcp_~n] {1020#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} is VALID [2022-04-14 20:08:25,384 INFO L290 TraceCheckUtils]: 1: Hoare triple {1020#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} [118] L18-5-->L18-1: Formula: (let ((.cse1 (< (+ v_lcp_~y_2 v_lcp_~l~0_5) v_lcp_~n_2)) (.cse0 (< (+ v_lcp_~x_2 v_lcp_~l~0_5) v_lcp_~n_2))) (or (and (or (not .cse0) (not .cse1)) (not |v_lcp_#t~short7_5|)) (and .cse1 .cse0 |v_lcp_#t~short7_5|))) InVars {lcp_~x=v_lcp_~x_2, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} OutVars{lcp_~x=v_lcp_~x_2, lcp_#t~short7=|v_lcp_#t~short7_5|, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} AuxVars[] AssignedVars[lcp_#t~short7] {1020#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} is VALID [2022-04-14 20:08:25,384 INFO L290 TraceCheckUtils]: 2: Hoare triple {1020#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} [124] L18-1-->L18-3: Formula: (let ((.cse0 (select |v_#memory_int_6| v_lcp_~a.base_2)) (.cse1 (* v_lcp_~l~0_6 4))) (and (= (select .cse0 (+ v_lcp_~a.offset_2 .cse1 (* v_lcp_~y_3 4))) |v_lcp_#t~mem6_3|) (let ((.cse2 (= |v_lcp_#t~mem6_3| |v_lcp_#t~mem5_3|))) (or (and (not |v_lcp_#t~short7_6|) (not .cse2)) (and .cse2 |v_lcp_#t~short7_6|))) (= |v_lcp_#t~mem5_3| (select .cse0 (+ v_lcp_~a.offset_2 .cse1 (* v_lcp_~x_3 4)))) |v_lcp_#t~short7_7|)) InVars {lcp_~x=v_lcp_~x_3, lcp_~a.offset=v_lcp_~a.offset_2, lcp_~l~0=v_lcp_~l~0_6, lcp_~y=v_lcp_~y_3, lcp_~a.base=v_lcp_~a.base_2, #memory_int=|v_#memory_int_6|, lcp_#t~short7=|v_lcp_#t~short7_7|} OutVars{lcp_~x=v_lcp_~x_3, lcp_~a.offset=v_lcp_~a.offset_2, lcp_~l~0=v_lcp_~l~0_6, lcp_~y=v_lcp_~y_3, lcp_~a.base=v_lcp_~a.base_2, lcp_#t~mem6=|v_lcp_#t~mem6_3|, #memory_int=|v_#memory_int_6|, lcp_#t~short7=|v_lcp_#t~short7_6|, lcp_#t~mem5=|v_lcp_#t~mem5_3|} AuxVars[] AssignedVars[lcp_#t~mem6, lcp_#t~short7, lcp_#t~mem5] {1020#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} is VALID [2022-04-14 20:08:25,384 INFO L290 TraceCheckUtils]: 3: Hoare triple {1020#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} [134] L18-3-->L18-5: Formula: (and (= (+ v_lcp_~l~0_3 1) v_lcp_~l~0_2) |v_lcp_#t~short7_4|) InVars {lcp_#t~short7=|v_lcp_#t~short7_4|, lcp_~l~0=v_lcp_~l~0_3} OutVars{lcp_#t~mem6=|v_lcp_#t~mem6_2|, lcp_#t~mem5=|v_lcp_#t~mem5_2|, lcp_~l~0=v_lcp_~l~0_2, lcp_#t~post8=|v_lcp_#t~post8_1|} AuxVars[] AssignedVars[lcp_~l~0, lcp_#t~mem6, lcp_#t~mem5, lcp_#t~short7, lcp_#t~post8] {1020#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} is VALID [2022-04-14 20:08:25,385 INFO L290 TraceCheckUtils]: 4: Hoare triple {1020#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} [118] L18-5-->L18-1: Formula: (let ((.cse1 (< (+ v_lcp_~y_2 v_lcp_~l~0_5) v_lcp_~n_2)) (.cse0 (< (+ v_lcp_~x_2 v_lcp_~l~0_5) v_lcp_~n_2))) (or (and (or (not .cse0) (not .cse1)) (not |v_lcp_#t~short7_5|)) (and .cse1 .cse0 |v_lcp_#t~short7_5|))) InVars {lcp_~x=v_lcp_~x_2, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} OutVars{lcp_~x=v_lcp_~x_2, lcp_#t~short7=|v_lcp_#t~short7_5|, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} AuxVars[] AssignedVars[lcp_#t~short7] {1021#(or |lcp_#t~short7| (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-14 20:08:25,385 INFO L290 TraceCheckUtils]: 5: Hoare triple {1021#(or |lcp_#t~short7| (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} [125] L18-1-->L18-3: Formula: (not |v_lcp_#t~short7_8|) InVars {lcp_#t~short7=|v_lcp_#t~short7_8|} OutVars{lcp_#t~short7=|v_lcp_#t~short7_8|} AuxVars[] AssignedVars[] {1022#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-14 20:08:25,385 INFO L290 TraceCheckUtils]: 6: Hoare triple {1022#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} [133] L18-3-->L18-6: Formula: (not |v_lcp_#t~short7_2|) InVars {lcp_#t~short7=|v_lcp_#t~short7_2|} OutVars{lcp_#t~mem6=|v_lcp_#t~mem6_1|, lcp_#t~mem5=|v_lcp_#t~mem5_1|} AuxVars[] AssignedVars[lcp_#t~mem6, lcp_#t~mem5, lcp_#t~short7] {1022#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-14 20:08:25,386 INFO L290 TraceCheckUtils]: 7: Hoare triple {1022#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} [123] L18-6-->lcpFINAL: Formula: (= |v_lcp_#res_1| v_lcp_~l~0_4) InVars {lcp_~l~0=v_lcp_~l~0_4} OutVars{lcp_#res=|v_lcp_#res_1|, lcp_~l~0=v_lcp_~l~0_4} AuxVars[] AssignedVars[lcp_#res] {1023#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} is VALID [2022-04-14 20:08:25,386 INFO L290 TraceCheckUtils]: 8: Hoare triple {1023#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} [132] lcpFINAL-->lcpEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1023#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} is VALID [2022-04-14 20:08:25,387 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {1023#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} {980#true} [147] lcpEXIT-->L44: AOR: Formula: (= |v_lcp_#resOutParam_1| |v_main_#t~ret18_4|) InVars {lcp_#res=|v_lcp_#resOutParam_1|} OutVars{main_#t~ret18=|v_main_#t~ret18_4|} AuxVars[] AssignedVars[main_#t~ret18, lcp_#res] LVA: Formula: (and (= v_main_~y~0_6 |v_lcp_#in~yInParam_1|) (= |v_lcp_#in~nInParam_1| v_main_~n~0_9) (= v_main_~x~0_6 |v_lcp_#in~xInParam_1|) (= |v_lcp_#in~a.offsetInParam_1| v_main_~a~0.offset_5) (= |v_lcp_#in~a.baseInParam_1| v_main_~a~0.base_5)) InVars {main_~a~0.base=v_main_~a~0.base_5, main_~y~0=v_main_~y~0_6, main_~n~0=v_main_~n~0_9, main_~x~0=v_main_~x~0_6, main_~a~0.offset=v_main_~a~0.offset_5} OutVars{lcp_#in~a.base=|v_lcp_#in~a.baseInParam_1|, lcp_#in~a.offset=|v_lcp_#in~a.offsetInParam_1|, lcp_#in~n=|v_lcp_#in~nInParam_1|, lcp_#in~y=|v_lcp_#in~yInParam_1|, lcp_#in~x=|v_lcp_#in~xInParam_1|} AuxVars[] AssignedVars[lcp_#in~a.offset, lcp_#in~y, main_~x~0, lcp_#in~x, lcp_#in~a.base, main_~a~0.base, lcp_#in~n, main_~y~0, main_~n~0, main_~a~0.offset] {1006#(or (<= main_~n~0 (+ |main_#t~ret18| main_~x~0)) (<= main_~n~0 (+ |main_#t~ret18| main_~y~0)))} is VALID [2022-04-14 20:08:25,387 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 36 [2022-04-14 20:08:25,390 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:25,395 INFO L290 TraceCheckUtils]: 0: Hoare triple {980#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {980#true} is VALID [2022-04-14 20:08:25,395 INFO L290 TraceCheckUtils]: 1: Hoare triple {980#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:25,395 INFO L290 TraceCheckUtils]: 2: Hoare triple {980#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:25,396 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {980#true} {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (and (<= 0 v_check_~i~0_4) (< v_check_~i~0_4 v_check_~l_5)) 1 0)) InVars {check_~i~0=v_check_~i~0_4, check_~l=v_check_~l_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[check_~i~0, assume_abort_if_not_#in~cond, check_~l] {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-14 20:08:25,396 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 42 [2022-04-14 20:08:25,398 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:25,402 INFO L290 TraceCheckUtils]: 0: Hoare triple {980#true} [120] __VERIFIER_assertENTRY-->L13: 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] {980#true} is VALID [2022-04-14 20:08:25,403 INFO L290 TraceCheckUtils]: 1: Hoare triple {980#true} [129] L13-->L13-3: 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[] {980#true} is VALID [2022-04-14 20:08:25,403 INFO L290 TraceCheckUtils]: 2: Hoare triple {980#true} [139] L13-3-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:25,403 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {980#true} {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [149] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= |v_check_#t~mem11_4| |v_check_#t~mem10_4|) 1 0)) InVars {check_#t~mem10=|v_check_#t~mem10_4|, check_#t~mem11=|v_check_#t~mem11_4|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, check_#t~mem10, check_#t~mem11] {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-14 20:08:25,404 INFO L272 TraceCheckUtils]: 0: Hoare triple {980#true} [94] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1018#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-14 20:08:25,404 INFO L290 TraceCheckUtils]: 1: Hoare triple {1018#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [96] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_5| 1)) (.cse1 (select |v_#memory_int_5| 2))) (and (= (select .cse0 0) 48) (= (select |v_#valid_5| 1) 1) (= (select .cse1 3) 46) (= 2 (select |v_#length_3| 1)) (< 0 |v_#StackHeapBarrier_2|) (= 112 (select .cse1 2)) (= |v_#NULL.base_1| 0) (= (select |v_#valid_5| 2) 1) (= 108 (select .cse1 0)) (= (select .cse1 1) 99) (= (select .cse0 1) 0) (= 1 (select |v_#valid_5| 3)) (= (select .cse1 4) 99) (= (select .cse1 5) 0) (= 6 (select |v_#length_3| 2)) (= (select |v_#valid_5| 0) 0) (= |v_#NULL.offset_1| 0) (= 12 (select |v_#length_3| 3)))) InVars {#memory_int=|v_#memory_int_5|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_5|, #memory_int=|v_#memory_int_5|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_3|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {980#true} is VALID [2022-04-14 20:08:25,404 INFO L290 TraceCheckUtils]: 2: Hoare triple {980#true} [99] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:25,404 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {980#true} {980#true} [141] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:25,404 INFO L272 TraceCheckUtils]: 4: Hoare triple {980#true} [95] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:25,404 INFO L290 TraceCheckUtils]: 5: Hoare triple {980#true} [98] mainENTRY-->L38: Formula: (and (<= |v_main_#t~nondet14_2| 2147483647) (= v_main_~n~0_3 |v_main_#t~nondet14_2|) (<= 0 (+ |v_main_#t~nondet14_2| 2147483648))) InVars {main_#t~nondet14=|v_main_#t~nondet14_2|} OutVars{main_~n~0=v_main_~n~0_3} AuxVars[] AssignedVars[main_#t~nondet14, main_~n~0] {980#true} is VALID [2022-04-14 20:08:25,404 INFO L272 TraceCheckUtils]: 6: Hoare triple {980#true} [100] L38-->assume_abort_if_notENTRY: Formula: (= (ite (and (< v_main_~n~0_7 1073741824) (<= 0 v_main_~n~0_7)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~n~0=v_main_~n~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~n~0, assume_abort_if_not_#in~cond] {980#true} is VALID [2022-04-14 20:08:25,404 INFO L290 TraceCheckUtils]: 7: Hoare triple {980#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {980#true} is VALID [2022-04-14 20:08:25,404 INFO L290 TraceCheckUtils]: 8: Hoare triple {980#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:25,404 INFO L290 TraceCheckUtils]: 9: Hoare triple {980#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:25,405 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {980#true} {980#true} [142] assume_abort_if_notEXIT-->L38-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (and (< v_main_~n~0_7 1073741824) (<= 0 v_main_~n~0_7)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~n~0=v_main_~n~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~n~0, assume_abort_if_not_#in~cond] {980#true} is VALID [2022-04-14 20:08:25,405 INFO L290 TraceCheckUtils]: 11: Hoare triple {980#true} [101] L38-1-->L39: Formula: (and (= |v_#valid_3| (store |v_#valid_4| |v_main_#t~malloc15.base_1| 1)) (not (= |v_main_#t~malloc15.base_1| 0)) (= |v_#length_1| (store |v_#length_2| |v_main_#t~malloc15.base_1| (* v_main_~n~0_5 4))) (< |v_main_#t~malloc15.base_1| |v_#StackHeapBarrier_1|) (= (select |v_#valid_4| |v_main_#t~malloc15.base_1|) 0) (= |v_main_#t~malloc15.offset_1| 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_2|, main_~n~0=v_main_~n~0_5, #valid=|v_#valid_4|} OutVars{main_#t~malloc15.offset=|v_main_#t~malloc15.offset_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_3|, #length=|v_#length_1|, main_~n~0=v_main_~n~0_5, main_#t~malloc15.base=|v_main_#t~malloc15.base_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #valid, #length, main_#t~malloc15.base] {980#true} is VALID [2022-04-14 20:08:25,405 INFO L272 TraceCheckUtils]: 12: Hoare triple {980#true} [103] L39-->#Ultimate.meminitENTRY: Formula: (and (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_main_#t~malloc15.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= v_main_~n~0_8 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#productInParam_1| (* v_main_~n~0_8 4)) (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_main_#t~malloc15.offset_4|)) InVars {main_#t~malloc15.offset=|v_main_#t~malloc15.offset_4|, main_~n~0=v_main_~n~0_8, main_#t~malloc15.base=|v_main_#t~malloc15.base_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, #Ultimate.meminit_#product, main_~n~0, #Ultimate.meminit_#ptr.base, main_#t~malloc15.base, #Ultimate.meminit_#ptr.offset] {1019#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-04-14 20:08:25,406 INFO L290 TraceCheckUtils]: 13: Hoare triple {1019#(= |#memory_int| |old(#memory_int)|)} [107] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_10| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_9|) InVars {#memory_int=|v_#memory_int_10|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_9|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {980#true} is VALID [2022-04-14 20:08:25,406 INFO L290 TraceCheckUtils]: 14: Hoare triple {980#true} [110] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:25,406 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {980#true} {980#true} [145] #Ultimate.meminitEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_main_#t~malloc15.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= v_main_~n~0_8 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#productInParam_1| (* v_main_~n~0_8 4)) (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_main_#t~malloc15.offset_4|)) InVars {main_#t~malloc15.offset=|v_main_#t~malloc15.offset_4|, main_~n~0=v_main_~n~0_8, main_#t~malloc15.base=|v_main_#t~malloc15.base_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, #Ultimate.meminit_#product, main_~n~0, #Ultimate.meminit_#ptr.base, main_#t~malloc15.base, #Ultimate.meminit_#ptr.offset] {980#true} is VALID [2022-04-14 20:08:25,406 INFO L290 TraceCheckUtils]: 16: Hoare triple {980#true} [106] L39-1-->L43: Formula: (and (<= |v_main_#t~nondet17_2| 2147483647) (= v_main_~a~0.offset_4 |v_main_#t~malloc15.offset_3|) (<= 0 (+ |v_main_#t~nondet16_2| 2147483648)) (= v_main_~y~0_3 |v_main_#t~nondet17_2|) (= v_main_~x~0_3 |v_main_#t~nondet16_2|) (<= |v_main_#t~nondet16_2| 2147483647) (<= 0 (+ |v_main_#t~nondet17_2| 2147483648)) (= v_main_~a~0.base_4 |v_main_#t~malloc15.base_3|)) InVars {main_#t~nondet16=|v_main_#t~nondet16_2|, main_#t~malloc15.offset=|v_main_#t~malloc15.offset_3|, main_#t~malloc15.base=|v_main_#t~malloc15.base_3|, main_#t~nondet17=|v_main_#t~nondet17_2|} OutVars{main_#t~malloc15.offset=|v_main_#t~malloc15.offset_3|, main_~x~0=v_main_~x~0_3, main_~a~0.base=v_main_~a~0.base_4, main_~y~0=v_main_~y~0_3, main_#t~malloc15.base=|v_main_#t~malloc15.base_3|, main_~a~0.offset=v_main_~a~0.offset_4} AuxVars[] AssignedVars[main_#t~nondet16, main_~x~0, main_#t~nondet17, main_~a~0.base, main_~y~0, main_~a~0.offset] {980#true} is VALID [2022-04-14 20:08:25,406 INFO L272 TraceCheckUtils]: 17: Hoare triple {980#true} [109] L43-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_5) (<= 0 v_main_~x~0_5)) 1 0)) InVars {main_~x~0=v_main_~x~0_5, main_~y~0=v_main_~y~0_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, assume_abort_if_not_#in~cond] {980#true} is VALID [2022-04-14 20:08:25,406 INFO L290 TraceCheckUtils]: 18: Hoare triple {980#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {980#true} is VALID [2022-04-14 20:08:25,406 INFO L290 TraceCheckUtils]: 19: Hoare triple {980#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:25,406 INFO L290 TraceCheckUtils]: 20: Hoare triple {980#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:25,406 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {980#true} {980#true} [143] assume_abort_if_notEXIT-->L43-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_5) (<= 0 v_main_~x~0_5)) 1 0)) InVars {main_~x~0=v_main_~x~0_5, main_~y~0=v_main_~y~0_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, assume_abort_if_not_#in~cond] {980#true} is VALID [2022-04-14 20:08:25,406 INFO L272 TraceCheckUtils]: 22: Hoare triple {980#true} [111] L43-1-->lcpENTRY: Formula: (and (= v_main_~y~0_6 |v_lcp_#in~yInParam_1|) (= |v_lcp_#in~nInParam_1| v_main_~n~0_9) (= v_main_~x~0_6 |v_lcp_#in~xInParam_1|) (= |v_lcp_#in~a.offsetInParam_1| v_main_~a~0.offset_5) (= |v_lcp_#in~a.baseInParam_1| v_main_~a~0.base_5)) InVars {main_~a~0.base=v_main_~a~0.base_5, main_~y~0=v_main_~y~0_6, main_~n~0=v_main_~n~0_9, main_~x~0=v_main_~x~0_6, main_~a~0.offset=v_main_~a~0.offset_5} OutVars{lcp_#in~a.base=|v_lcp_#in~a.baseInParam_1|, lcp_#in~a.offset=|v_lcp_#in~a.offsetInParam_1|, lcp_#in~n=|v_lcp_#in~nInParam_1|, lcp_#in~y=|v_lcp_#in~yInParam_1|, lcp_#in~x=|v_lcp_#in~xInParam_1|} AuxVars[] AssignedVars[lcp_#in~a.offset, lcp_#in~y, main_~x~0, lcp_#in~x, lcp_#in~a.base, main_~a~0.base, lcp_#in~n, main_~y~0, main_~n~0, main_~a~0.offset] {980#true} is VALID [2022-04-14 20:08:25,407 INFO L290 TraceCheckUtils]: 23: Hoare triple {980#true} [114] lcpENTRY-->L18-5: Formula: (and (= v_lcp_~a.base_1 |v_lcp_#in~a.base_1|) (= v_lcp_~n_1 |v_lcp_#in~n_1|) (= v_lcp_~l~0_1 0) (= v_lcp_~x_1 |v_lcp_#in~x_1|) (= v_lcp_~y_1 |v_lcp_#in~y_1|) (= |v_lcp_#in~a.offset_1| v_lcp_~a.offset_1)) InVars {lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_#in~y=|v_lcp_#in~y_1|, lcp_#in~x=|v_lcp_#in~x_1|} OutVars{lcp_~x=v_lcp_~x_1, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_~l~0=v_lcp_~l~0_1, lcp_~a.offset=v_lcp_~a.offset_1, lcp_~y=v_lcp_~y_1, lcp_#in~y=|v_lcp_#in~y_1|, lcp_~a.base=v_lcp_~a.base_1, lcp_#in~x=|v_lcp_#in~x_1|, lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_~n=v_lcp_~n_1} AuxVars[] AssignedVars[lcp_~x, lcp_~l~0, lcp_~a.offset, lcp_~y, lcp_~a.base, lcp_~n] {1020#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} is VALID [2022-04-14 20:08:25,407 INFO L290 TraceCheckUtils]: 24: Hoare triple {1020#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} [118] L18-5-->L18-1: Formula: (let ((.cse1 (< (+ v_lcp_~y_2 v_lcp_~l~0_5) v_lcp_~n_2)) (.cse0 (< (+ v_lcp_~x_2 v_lcp_~l~0_5) v_lcp_~n_2))) (or (and (or (not .cse0) (not .cse1)) (not |v_lcp_#t~short7_5|)) (and .cse1 .cse0 |v_lcp_#t~short7_5|))) InVars {lcp_~x=v_lcp_~x_2, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} OutVars{lcp_~x=v_lcp_~x_2, lcp_#t~short7=|v_lcp_#t~short7_5|, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} AuxVars[] AssignedVars[lcp_#t~short7] {1020#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} is VALID [2022-04-14 20:08:25,423 INFO L290 TraceCheckUtils]: 25: Hoare triple {1020#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} [124] L18-1-->L18-3: Formula: (let ((.cse0 (select |v_#memory_int_6| v_lcp_~a.base_2)) (.cse1 (* v_lcp_~l~0_6 4))) (and (= (select .cse0 (+ v_lcp_~a.offset_2 .cse1 (* v_lcp_~y_3 4))) |v_lcp_#t~mem6_3|) (let ((.cse2 (= |v_lcp_#t~mem6_3| |v_lcp_#t~mem5_3|))) (or (and (not |v_lcp_#t~short7_6|) (not .cse2)) (and .cse2 |v_lcp_#t~short7_6|))) (= |v_lcp_#t~mem5_3| (select .cse0 (+ v_lcp_~a.offset_2 .cse1 (* v_lcp_~x_3 4)))) |v_lcp_#t~short7_7|)) InVars {lcp_~x=v_lcp_~x_3, lcp_~a.offset=v_lcp_~a.offset_2, lcp_~l~0=v_lcp_~l~0_6, lcp_~y=v_lcp_~y_3, lcp_~a.base=v_lcp_~a.base_2, #memory_int=|v_#memory_int_6|, lcp_#t~short7=|v_lcp_#t~short7_7|} OutVars{lcp_~x=v_lcp_~x_3, lcp_~a.offset=v_lcp_~a.offset_2, lcp_~l~0=v_lcp_~l~0_6, lcp_~y=v_lcp_~y_3, lcp_~a.base=v_lcp_~a.base_2, lcp_#t~mem6=|v_lcp_#t~mem6_3|, #memory_int=|v_#memory_int_6|, lcp_#t~short7=|v_lcp_#t~short7_6|, lcp_#t~mem5=|v_lcp_#t~mem5_3|} AuxVars[] AssignedVars[lcp_#t~mem6, lcp_#t~short7, lcp_#t~mem5] {1020#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} is VALID [2022-04-14 20:08:25,424 INFO L290 TraceCheckUtils]: 26: Hoare triple {1020#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} [134] L18-3-->L18-5: Formula: (and (= (+ v_lcp_~l~0_3 1) v_lcp_~l~0_2) |v_lcp_#t~short7_4|) InVars {lcp_#t~short7=|v_lcp_#t~short7_4|, lcp_~l~0=v_lcp_~l~0_3} OutVars{lcp_#t~mem6=|v_lcp_#t~mem6_2|, lcp_#t~mem5=|v_lcp_#t~mem5_2|, lcp_~l~0=v_lcp_~l~0_2, lcp_#t~post8=|v_lcp_#t~post8_1|} AuxVars[] AssignedVars[lcp_~l~0, lcp_#t~mem6, lcp_#t~mem5, lcp_#t~short7, lcp_#t~post8] {1020#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} is VALID [2022-04-14 20:08:25,424 INFO L290 TraceCheckUtils]: 27: Hoare triple {1020#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} [118] L18-5-->L18-1: Formula: (let ((.cse1 (< (+ v_lcp_~y_2 v_lcp_~l~0_5) v_lcp_~n_2)) (.cse0 (< (+ v_lcp_~x_2 v_lcp_~l~0_5) v_lcp_~n_2))) (or (and (or (not .cse0) (not .cse1)) (not |v_lcp_#t~short7_5|)) (and .cse1 .cse0 |v_lcp_#t~short7_5|))) InVars {lcp_~x=v_lcp_~x_2, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} OutVars{lcp_~x=v_lcp_~x_2, lcp_#t~short7=|v_lcp_#t~short7_5|, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} AuxVars[] AssignedVars[lcp_#t~short7] {1021#(or |lcp_#t~short7| (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-14 20:08:25,425 INFO L290 TraceCheckUtils]: 28: Hoare triple {1021#(or |lcp_#t~short7| (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} [125] L18-1-->L18-3: Formula: (not |v_lcp_#t~short7_8|) InVars {lcp_#t~short7=|v_lcp_#t~short7_8|} OutVars{lcp_#t~short7=|v_lcp_#t~short7_8|} AuxVars[] AssignedVars[] {1022#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-14 20:08:25,425 INFO L290 TraceCheckUtils]: 29: Hoare triple {1022#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} [133] L18-3-->L18-6: Formula: (not |v_lcp_#t~short7_2|) InVars {lcp_#t~short7=|v_lcp_#t~short7_2|} OutVars{lcp_#t~mem6=|v_lcp_#t~mem6_1|, lcp_#t~mem5=|v_lcp_#t~mem5_1|} AuxVars[] AssignedVars[lcp_#t~mem6, lcp_#t~mem5, lcp_#t~short7] {1022#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-14 20:08:25,426 INFO L290 TraceCheckUtils]: 30: Hoare triple {1022#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} [123] L18-6-->lcpFINAL: Formula: (= |v_lcp_#res_1| v_lcp_~l~0_4) InVars {lcp_~l~0=v_lcp_~l~0_4} OutVars{lcp_#res=|v_lcp_#res_1|, lcp_~l~0=v_lcp_~l~0_4} AuxVars[] AssignedVars[lcp_#res] {1023#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} is VALID [2022-04-14 20:08:25,426 INFO L290 TraceCheckUtils]: 31: Hoare triple {1023#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} [132] lcpFINAL-->lcpEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1023#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} is VALID [2022-04-14 20:08:25,427 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1023#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} {980#true} [147] lcpEXIT-->L44: AOR: Formula: (= |v_lcp_#resOutParam_1| |v_main_#t~ret18_4|) InVars {lcp_#res=|v_lcp_#resOutParam_1|} OutVars{main_#t~ret18=|v_main_#t~ret18_4|} AuxVars[] AssignedVars[main_#t~ret18, lcp_#res] LVA: Formula: (and (= v_main_~y~0_6 |v_lcp_#in~yInParam_1|) (= |v_lcp_#in~nInParam_1| v_main_~n~0_9) (= v_main_~x~0_6 |v_lcp_#in~xInParam_1|) (= |v_lcp_#in~a.offsetInParam_1| v_main_~a~0.offset_5) (= |v_lcp_#in~a.baseInParam_1| v_main_~a~0.base_5)) InVars {main_~a~0.base=v_main_~a~0.base_5, main_~y~0=v_main_~y~0_6, main_~n~0=v_main_~n~0_9, main_~x~0=v_main_~x~0_6, main_~a~0.offset=v_main_~a~0.offset_5} OutVars{lcp_#in~a.base=|v_lcp_#in~a.baseInParam_1|, lcp_#in~a.offset=|v_lcp_#in~a.offsetInParam_1|, lcp_#in~n=|v_lcp_#in~nInParam_1|, lcp_#in~y=|v_lcp_#in~yInParam_1|, lcp_#in~x=|v_lcp_#in~xInParam_1|} AuxVars[] AssignedVars[lcp_#in~a.offset, lcp_#in~y, main_~x~0, lcp_#in~x, lcp_#in~a.base, main_~a~0.base, lcp_#in~n, main_~y~0, main_~n~0, main_~a~0.offset] {1006#(or (<= main_~n~0 (+ |main_#t~ret18| main_~x~0)) (<= main_~n~0 (+ |main_#t~ret18| main_~y~0)))} is VALID [2022-04-14 20:08:25,427 INFO L290 TraceCheckUtils]: 33: Hoare triple {1006#(or (<= main_~n~0 (+ |main_#t~ret18| main_~x~0)) (<= main_~n~0 (+ |main_#t~ret18| main_~y~0)))} [113] L44-->L45: Formula: (and (<= |v_main_#t~ret18_3| 2147483647) (= v_main_~l~1_1 |v_main_#t~ret18_3|) (<= 0 (+ |v_main_#t~ret18_3| 2147483648))) InVars {main_#t~ret18=|v_main_#t~ret18_3|} OutVars{main_~l~1=v_main_~l~1_1} AuxVars[] AssignedVars[main_#t~ret18, main_~l~1] {1007#(or (<= main_~n~0 (+ main_~l~1 main_~y~0)) (<= main_~n~0 (+ main_~l~1 main_~x~0)))} is VALID [2022-04-14 20:08:25,428 INFO L272 TraceCheckUtils]: 34: Hoare triple {1007#(or (<= main_~n~0 (+ main_~l~1 main_~y~0)) (<= main_~n~0 (+ main_~l~1 main_~x~0)))} [116] L45-->checkENTRY: Formula: (and (= v_main_~n~0_10 |v_check_#in~nInParam_1|) (= |v_check_#in~a.baseInParam_1| v_main_~a~0.base_6) (= v_main_~y~0_7 |v_check_#in~yInParam_1|) (= v_main_~x~0_7 |v_check_#in~xInParam_1|) (= |v_check_#in~a.offsetInParam_1| v_main_~a~0.offset_6) (= |v_check_#in~lInParam_1| v_main_~l~1_3)) InVars {main_~x~0=v_main_~x~0_7, main_~l~1=v_main_~l~1_3, main_~a~0.base=v_main_~a~0.base_6, main_~y~0=v_main_~y~0_7, main_~n~0=v_main_~n~0_10, main_~a~0.offset=v_main_~a~0.offset_6} OutVars{check_#in~y=|v_check_#in~yInParam_1|, check_#in~x=|v_check_#in~xInParam_1|, check_#in~a.offset=|v_check_#in~a.offsetInParam_1|, check_#in~a.base=|v_check_#in~a.baseInParam_1|, check_#in~l=|v_check_#in~lInParam_1|, check_#in~n=|v_check_#in~nInParam_1|} AuxVars[] AssignedVars[check_#in~y, check_#in~x, check_#in~a.offset, main_~x~0, main_~l~1, check_#in~a.base, main_~a~0.base, main_~y~0, main_~n~0, check_#in~l, main_~a~0.offset, check_#in~n] {1008#(or (<= |check_#in~n| (+ |check_#in~x| |check_#in~l|)) (<= |check_#in~n| (+ |check_#in~y| |check_#in~l|)))} is VALID [2022-04-14 20:08:25,429 INFO L290 TraceCheckUtils]: 35: Hoare triple {1008#(or (<= |check_#in~n| (+ |check_#in~x| |check_#in~l|)) (<= |check_#in~n| (+ |check_#in~y| |check_#in~l|)))} [122] checkENTRY-->L27: Formula: (and (= v_check_~x_2 |v_check_#in~x_1|) (= |v_check_#in~a.offset_1| v_check_~a.offset_1) (= v_check_~i~0_1 |v_check_#t~nondet9_2|) (= v_check_~l_2 |v_check_#in~l_1|) (= v_check_~n_2 |v_check_#in~n_1|) (= v_check_~a.base_1 |v_check_#in~a.base_1|) (<= 0 (+ 2147483648 |v_check_#t~nondet9_2|)) (= v_check_~y_2 |v_check_#in~y_1|) (<= |v_check_#t~nondet9_2| 2147483647)) InVars {check_#in~y=|v_check_#in~y_1|, check_#in~x=|v_check_#in~x_1|, check_#in~a.offset=|v_check_#in~a.offset_1|, check_#in~a.base=|v_check_#in~a.base_1|, check_#in~l=|v_check_#in~l_1|, check_#t~nondet9=|v_check_#t~nondet9_2|, check_#in~n=|v_check_#in~n_1|} OutVars{check_#in~y=|v_check_#in~y_1|, check_#in~x=|v_check_#in~x_1|, check_#in~a.offset=|v_check_#in~a.offset_1|, check_~a.base=v_check_~a.base_1, check_~i~0=v_check_~i~0_1, check_~y=v_check_~y_2, check_~x=v_check_~x_2, check_~a.offset=v_check_~a.offset_1, check_#in~a.base=|v_check_#in~a.base_1|, check_#in~l=|v_check_#in~l_1|, check_~n=v_check_~n_2, check_#in~n=|v_check_#in~n_1|, check_~l=v_check_~l_2} AuxVars[] AssignedVars[check_~y, check_~x, check_~a.base, check_~a.offset, check_~i~0, check_~n, check_#t~nondet9, check_~l] {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-14 20:08:25,429 INFO L272 TraceCheckUtils]: 36: Hoare triple {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [131] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (and (<= 0 v_check_~i~0_4) (< v_check_~i~0_4 v_check_~l_5)) 1 0)) InVars {check_~i~0=v_check_~i~0_4, check_~l=v_check_~l_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[check_~i~0, assume_abort_if_not_#in~cond, check_~l] {980#true} is VALID [2022-04-14 20:08:25,429 INFO L290 TraceCheckUtils]: 37: Hoare triple {980#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {980#true} is VALID [2022-04-14 20:08:25,429 INFO L290 TraceCheckUtils]: 38: Hoare triple {980#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:25,429 INFO L290 TraceCheckUtils]: 39: Hoare triple {980#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:25,430 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {980#true} {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (and (<= 0 v_check_~i~0_4) (< v_check_~i~0_4 v_check_~l_5)) 1 0)) InVars {check_~i~0=v_check_~i~0_4, check_~l=v_check_~l_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[check_~i~0, assume_abort_if_not_#in~cond, check_~l] {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-14 20:08:25,430 INFO L290 TraceCheckUtils]: 41: Hoare triple {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [112] L27-1-->L28: Formula: (let ((.cse0 (select |v_#memory_int_3| v_check_~a.base_2)) (.cse1 (* v_check_~i~0_3 4))) (and (= (select .cse0 (+ (* v_check_~y_3 4) v_check_~a.offset_2 .cse1)) |v_check_#t~mem11_1|) (= (select .cse0 (+ (* v_check_~x_3 4) v_check_~a.offset_2 .cse1)) |v_check_#t~mem10_1|))) InVars {check_~y=v_check_~y_3, check_~x=v_check_~x_3, check_~a.base=v_check_~a.base_2, check_~a.offset=v_check_~a.offset_2, check_~i~0=v_check_~i~0_3, #memory_int=|v_#memory_int_3|} OutVars{check_~y=v_check_~y_3, check_~x=v_check_~x_3, check_#t~mem10=|v_check_#t~mem10_1|, check_~a.base=v_check_~a.base_2, check_~a.offset=v_check_~a.offset_2, check_~i~0=v_check_~i~0_3, check_#t~mem11=|v_check_#t~mem11_1|, #memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[check_#t~mem10, check_#t~mem11] {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-14 20:08:25,430 INFO L272 TraceCheckUtils]: 42: Hoare triple {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [115] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= |v_check_#t~mem11_4| |v_check_#t~mem10_4|) 1 0)) InVars {check_#t~mem10=|v_check_#t~mem10_4|, check_#t~mem11=|v_check_#t~mem11_4|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, check_#t~mem10, check_#t~mem11] {980#true} is VALID [2022-04-14 20:08:25,430 INFO L290 TraceCheckUtils]: 43: Hoare triple {980#true} [120] __VERIFIER_assertENTRY-->L13: 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] {980#true} is VALID [2022-04-14 20:08:25,430 INFO L290 TraceCheckUtils]: 44: Hoare triple {980#true} [129] L13-->L13-3: 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[] {980#true} is VALID [2022-04-14 20:08:25,430 INFO L290 TraceCheckUtils]: 45: Hoare triple {980#true} [139] L13-3-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:25,431 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {980#true} {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [149] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= |v_check_#t~mem11_4| |v_check_#t~mem10_4|) 1 0)) InVars {check_#t~mem10=|v_check_#t~mem10_4|, check_#t~mem11=|v_check_#t~mem11_4|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, check_#t~mem10, check_#t~mem11] {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-14 20:08:25,431 INFO L290 TraceCheckUtils]: 47: Hoare triple {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [119] L28-1-->L31: Formula: true InVars {} OutVars{check_#t~mem10=|v_check_#t~mem10_3|, check_#t~mem11=|v_check_#t~mem11_3|} AuxVars[] AssignedVars[check_#t~mem10, check_#t~mem11] {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-14 20:08:25,431 INFO L290 TraceCheckUtils]: 48: Hoare triple {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [126] L31-->L32: Formula: (let ((.cse0 (select |v_#memory_int_4| v_check_~a.base_3)) (.cse1 (* v_check_~l_4 4))) (and (< (+ v_check_~l_4 v_check_~x_4) v_check_~n_3) (< (+ v_check_~l_4 v_check_~y_4) v_check_~n_3) (= (select .cse0 (+ (* v_check_~y_4 4) .cse1 v_check_~a.offset_3)) |v_check_#t~mem13_1|) (= |v_check_#t~mem12_1| (select .cse0 (+ .cse1 (* v_check_~x_4 4) v_check_~a.offset_3))))) InVars {check_~y=v_check_~y_4, check_~x=v_check_~x_4, check_~a.base=v_check_~a.base_3, check_~a.offset=v_check_~a.offset_3, #memory_int=|v_#memory_int_4|, check_~n=v_check_~n_3, check_~l=v_check_~l_4} OutVars{check_#t~mem13=|v_check_#t~mem13_1|, check_~y=v_check_~y_4, check_~x=v_check_~x_4, check_~a.base=v_check_~a.base_3, check_~a.offset=v_check_~a.offset_3, check_#t~mem12=|v_check_#t~mem12_1|, #memory_int=|v_#memory_int_4|, check_~n=v_check_~n_3, check_~l=v_check_~l_4} AuxVars[] AssignedVars[check_#t~mem13, check_#t~mem12] {981#false} is VALID [2022-04-14 20:08:25,432 INFO L272 TraceCheckUtils]: 49: Hoare triple {981#false} [135] L32-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (not (= |v_check_#t~mem13_4| |v_check_#t~mem12_4|)) 1 0)) InVars {check_#t~mem13=|v_check_#t~mem13_4|, check_#t~mem12=|v_check_#t~mem12_4|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[check_#t~mem13, __VERIFIER_assert_#in~cond, check_#t~mem12] {981#false} is VALID [2022-04-14 20:08:25,432 INFO L290 TraceCheckUtils]: 50: Hoare triple {981#false} [120] __VERIFIER_assertENTRY-->L13: 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] {981#false} is VALID [2022-04-14 20:08:25,432 INFO L290 TraceCheckUtils]: 51: Hoare triple {981#false} [128] L13-->L13-1: 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[] {981#false} is VALID [2022-04-14 20:08:25,432 INFO L290 TraceCheckUtils]: 52: Hoare triple {981#false} [137] L13-1-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {981#false} is VALID [2022-04-14 20:08:25,432 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 13 trivial. 0 not checked. [2022-04-14 20:08:25,432 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:08:25,432 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1208257738] [2022-04-14 20:08:25,432 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1208257738] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-14 20:08:25,432 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1343263386] [2022-04-14 20:08:25,432 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:08:25,433 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:08:25,433 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:08:25,434 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 20:08:25,439 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-14 20:08:25,512 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:25,524 INFO L263 TraceCheckSpWp]: Trace formula consists of 231 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-14 20:08:25,545 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:08:25,552 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:08:26,798 INFO L272 TraceCheckUtils]: 0: Hoare triple {980#true} [94] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:26,799 INFO L290 TraceCheckUtils]: 1: Hoare triple {980#true} [96] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_5| 1)) (.cse1 (select |v_#memory_int_5| 2))) (and (= (select .cse0 0) 48) (= (select |v_#valid_5| 1) 1) (= (select .cse1 3) 46) (= 2 (select |v_#length_3| 1)) (< 0 |v_#StackHeapBarrier_2|) (= 112 (select .cse1 2)) (= |v_#NULL.base_1| 0) (= (select |v_#valid_5| 2) 1) (= 108 (select .cse1 0)) (= (select .cse1 1) 99) (= (select .cse0 1) 0) (= 1 (select |v_#valid_5| 3)) (= (select .cse1 4) 99) (= (select .cse1 5) 0) (= 6 (select |v_#length_3| 2)) (= (select |v_#valid_5| 0) 0) (= |v_#NULL.offset_1| 0) (= 12 (select |v_#length_3| 3)))) InVars {#memory_int=|v_#memory_int_5|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_5|, #memory_int=|v_#memory_int_5|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_3|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {980#true} is VALID [2022-04-14 20:08:26,799 INFO L290 TraceCheckUtils]: 2: Hoare triple {980#true} [99] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:26,799 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {980#true} {980#true} [141] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:26,799 INFO L272 TraceCheckUtils]: 4: Hoare triple {980#true} [95] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:26,799 INFO L290 TraceCheckUtils]: 5: Hoare triple {980#true} [98] mainENTRY-->L38: Formula: (and (<= |v_main_#t~nondet14_2| 2147483647) (= v_main_~n~0_3 |v_main_#t~nondet14_2|) (<= 0 (+ |v_main_#t~nondet14_2| 2147483648))) InVars {main_#t~nondet14=|v_main_#t~nondet14_2|} OutVars{main_~n~0=v_main_~n~0_3} AuxVars[] AssignedVars[main_#t~nondet14, main_~n~0] {980#true} is VALID [2022-04-14 20:08:26,799 INFO L272 TraceCheckUtils]: 6: Hoare triple {980#true} [100] L38-->assume_abort_if_notENTRY: Formula: (= (ite (and (< v_main_~n~0_7 1073741824) (<= 0 v_main_~n~0_7)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~n~0=v_main_~n~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~n~0, assume_abort_if_not_#in~cond] {980#true} is VALID [2022-04-14 20:08:26,799 INFO L290 TraceCheckUtils]: 7: Hoare triple {980#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {980#true} is VALID [2022-04-14 20:08:26,799 INFO L290 TraceCheckUtils]: 8: Hoare triple {980#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:26,799 INFO L290 TraceCheckUtils]: 9: Hoare triple {980#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:26,799 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {980#true} {980#true} [142] assume_abort_if_notEXIT-->L38-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (and (< v_main_~n~0_7 1073741824) (<= 0 v_main_~n~0_7)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~n~0=v_main_~n~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~n~0, assume_abort_if_not_#in~cond] {980#true} is VALID [2022-04-14 20:08:26,800 INFO L290 TraceCheckUtils]: 11: Hoare triple {980#true} [101] L38-1-->L39: Formula: (and (= |v_#valid_3| (store |v_#valid_4| |v_main_#t~malloc15.base_1| 1)) (not (= |v_main_#t~malloc15.base_1| 0)) (= |v_#length_1| (store |v_#length_2| |v_main_#t~malloc15.base_1| (* v_main_~n~0_5 4))) (< |v_main_#t~malloc15.base_1| |v_#StackHeapBarrier_1|) (= (select |v_#valid_4| |v_main_#t~malloc15.base_1|) 0) (= |v_main_#t~malloc15.offset_1| 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_2|, main_~n~0=v_main_~n~0_5, #valid=|v_#valid_4|} OutVars{main_#t~malloc15.offset=|v_main_#t~malloc15.offset_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_3|, #length=|v_#length_1|, main_~n~0=v_main_~n~0_5, main_#t~malloc15.base=|v_main_#t~malloc15.base_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #valid, #length, main_#t~malloc15.base] {980#true} is VALID [2022-04-14 20:08:26,800 INFO L272 TraceCheckUtils]: 12: Hoare triple {980#true} [103] L39-->#Ultimate.meminitENTRY: Formula: (and (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_main_#t~malloc15.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= v_main_~n~0_8 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#productInParam_1| (* v_main_~n~0_8 4)) (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_main_#t~malloc15.offset_4|)) InVars {main_#t~malloc15.offset=|v_main_#t~malloc15.offset_4|, main_~n~0=v_main_~n~0_8, main_#t~malloc15.base=|v_main_#t~malloc15.base_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, #Ultimate.meminit_#product, main_~n~0, #Ultimate.meminit_#ptr.base, main_#t~malloc15.base, #Ultimate.meminit_#ptr.offset] {980#true} is VALID [2022-04-14 20:08:26,800 INFO L290 TraceCheckUtils]: 13: Hoare triple {980#true} [107] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_10| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_9|) InVars {#memory_int=|v_#memory_int_10|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_9|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {980#true} is VALID [2022-04-14 20:08:26,800 INFO L290 TraceCheckUtils]: 14: Hoare triple {980#true} [110] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:26,800 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {980#true} {980#true} [145] #Ultimate.meminitEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_main_#t~malloc15.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= v_main_~n~0_8 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#productInParam_1| (* v_main_~n~0_8 4)) (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_main_#t~malloc15.offset_4|)) InVars {main_#t~malloc15.offset=|v_main_#t~malloc15.offset_4|, main_~n~0=v_main_~n~0_8, main_#t~malloc15.base=|v_main_#t~malloc15.base_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, #Ultimate.meminit_#product, main_~n~0, #Ultimate.meminit_#ptr.base, main_#t~malloc15.base, #Ultimate.meminit_#ptr.offset] {980#true} is VALID [2022-04-14 20:08:26,800 INFO L290 TraceCheckUtils]: 16: Hoare triple {980#true} [106] L39-1-->L43: Formula: (and (<= |v_main_#t~nondet17_2| 2147483647) (= v_main_~a~0.offset_4 |v_main_#t~malloc15.offset_3|) (<= 0 (+ |v_main_#t~nondet16_2| 2147483648)) (= v_main_~y~0_3 |v_main_#t~nondet17_2|) (= v_main_~x~0_3 |v_main_#t~nondet16_2|) (<= |v_main_#t~nondet16_2| 2147483647) (<= 0 (+ |v_main_#t~nondet17_2| 2147483648)) (= v_main_~a~0.base_4 |v_main_#t~malloc15.base_3|)) InVars {main_#t~nondet16=|v_main_#t~nondet16_2|, main_#t~malloc15.offset=|v_main_#t~malloc15.offset_3|, main_#t~malloc15.base=|v_main_#t~malloc15.base_3|, main_#t~nondet17=|v_main_#t~nondet17_2|} OutVars{main_#t~malloc15.offset=|v_main_#t~malloc15.offset_3|, main_~x~0=v_main_~x~0_3, main_~a~0.base=v_main_~a~0.base_4, main_~y~0=v_main_~y~0_3, main_#t~malloc15.base=|v_main_#t~malloc15.base_3|, main_~a~0.offset=v_main_~a~0.offset_4} AuxVars[] AssignedVars[main_#t~nondet16, main_~x~0, main_#t~nondet17, main_~a~0.base, main_~y~0, main_~a~0.offset] {980#true} is VALID [2022-04-14 20:08:26,800 INFO L272 TraceCheckUtils]: 17: Hoare triple {980#true} [109] L43-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_5) (<= 0 v_main_~x~0_5)) 1 0)) InVars {main_~x~0=v_main_~x~0_5, main_~y~0=v_main_~y~0_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, assume_abort_if_not_#in~cond] {980#true} is VALID [2022-04-14 20:08:26,800 INFO L290 TraceCheckUtils]: 18: Hoare triple {980#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {980#true} is VALID [2022-04-14 20:08:26,800 INFO L290 TraceCheckUtils]: 19: Hoare triple {980#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:26,800 INFO L290 TraceCheckUtils]: 20: Hoare triple {980#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:26,800 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {980#true} {980#true} [143] assume_abort_if_notEXIT-->L43-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_5) (<= 0 v_main_~x~0_5)) 1 0)) InVars {main_~x~0=v_main_~x~0_5, main_~y~0=v_main_~y~0_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, assume_abort_if_not_#in~cond] {980#true} is VALID [2022-04-14 20:08:26,800 INFO L272 TraceCheckUtils]: 22: Hoare triple {980#true} [111] L43-1-->lcpENTRY: Formula: (and (= v_main_~y~0_6 |v_lcp_#in~yInParam_1|) (= |v_lcp_#in~nInParam_1| v_main_~n~0_9) (= v_main_~x~0_6 |v_lcp_#in~xInParam_1|) (= |v_lcp_#in~a.offsetInParam_1| v_main_~a~0.offset_5) (= |v_lcp_#in~a.baseInParam_1| v_main_~a~0.base_5)) InVars {main_~a~0.base=v_main_~a~0.base_5, main_~y~0=v_main_~y~0_6, main_~n~0=v_main_~n~0_9, main_~x~0=v_main_~x~0_6, main_~a~0.offset=v_main_~a~0.offset_5} OutVars{lcp_#in~a.base=|v_lcp_#in~a.baseInParam_1|, lcp_#in~a.offset=|v_lcp_#in~a.offsetInParam_1|, lcp_#in~n=|v_lcp_#in~nInParam_1|, lcp_#in~y=|v_lcp_#in~yInParam_1|, lcp_#in~x=|v_lcp_#in~xInParam_1|} AuxVars[] AssignedVars[lcp_#in~a.offset, lcp_#in~y, main_~x~0, lcp_#in~x, lcp_#in~a.base, main_~a~0.base, lcp_#in~n, main_~y~0, main_~n~0, main_~a~0.offset] {980#true} is VALID [2022-04-14 20:08:26,802 INFO L290 TraceCheckUtils]: 23: Hoare triple {980#true} [114] lcpENTRY-->L18-5: Formula: (and (= v_lcp_~a.base_1 |v_lcp_#in~a.base_1|) (= v_lcp_~n_1 |v_lcp_#in~n_1|) (= v_lcp_~l~0_1 0) (= v_lcp_~x_1 |v_lcp_#in~x_1|) (= v_lcp_~y_1 |v_lcp_#in~y_1|) (= |v_lcp_#in~a.offset_1| v_lcp_~a.offset_1)) InVars {lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_#in~y=|v_lcp_#in~y_1|, lcp_#in~x=|v_lcp_#in~x_1|} OutVars{lcp_~x=v_lcp_~x_1, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_~l~0=v_lcp_~l~0_1, lcp_~a.offset=v_lcp_~a.offset_1, lcp_~y=v_lcp_~y_1, lcp_#in~y=|v_lcp_#in~y_1|, lcp_~a.base=v_lcp_~a.base_1, lcp_#in~x=|v_lcp_#in~x_1|, lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_~n=v_lcp_~n_1} AuxVars[] AssignedVars[lcp_~x, lcp_~l~0, lcp_~a.offset, lcp_~y, lcp_~a.base, lcp_~n] {1096#(and (<= lcp_~y |lcp_#in~y|) (<= |lcp_#in~n| lcp_~n) (<= lcp_~x |lcp_#in~x|))} is VALID [2022-04-14 20:08:26,803 INFO L290 TraceCheckUtils]: 24: Hoare triple {1096#(and (<= lcp_~y |lcp_#in~y|) (<= |lcp_#in~n| lcp_~n) (<= lcp_~x |lcp_#in~x|))} [118] L18-5-->L18-1: Formula: (let ((.cse1 (< (+ v_lcp_~y_2 v_lcp_~l~0_5) v_lcp_~n_2)) (.cse0 (< (+ v_lcp_~x_2 v_lcp_~l~0_5) v_lcp_~n_2))) (or (and (or (not .cse0) (not .cse1)) (not |v_lcp_#t~short7_5|)) (and .cse1 .cse0 |v_lcp_#t~short7_5|))) InVars {lcp_~x=v_lcp_~x_2, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} OutVars{lcp_~x=v_lcp_~x_2, lcp_#t~short7=|v_lcp_#t~short7_5|, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} AuxVars[] AssignedVars[lcp_#t~short7] {1096#(and (<= lcp_~y |lcp_#in~y|) (<= |lcp_#in~n| lcp_~n) (<= lcp_~x |lcp_#in~x|))} is VALID [2022-04-14 20:08:26,803 INFO L290 TraceCheckUtils]: 25: Hoare triple {1096#(and (<= lcp_~y |lcp_#in~y|) (<= |lcp_#in~n| lcp_~n) (<= lcp_~x |lcp_#in~x|))} [124] L18-1-->L18-3: Formula: (let ((.cse0 (select |v_#memory_int_6| v_lcp_~a.base_2)) (.cse1 (* v_lcp_~l~0_6 4))) (and (= (select .cse0 (+ v_lcp_~a.offset_2 .cse1 (* v_lcp_~y_3 4))) |v_lcp_#t~mem6_3|) (let ((.cse2 (= |v_lcp_#t~mem6_3| |v_lcp_#t~mem5_3|))) (or (and (not |v_lcp_#t~short7_6|) (not .cse2)) (and .cse2 |v_lcp_#t~short7_6|))) (= |v_lcp_#t~mem5_3| (select .cse0 (+ v_lcp_~a.offset_2 .cse1 (* v_lcp_~x_3 4)))) |v_lcp_#t~short7_7|)) InVars {lcp_~x=v_lcp_~x_3, lcp_~a.offset=v_lcp_~a.offset_2, lcp_~l~0=v_lcp_~l~0_6, lcp_~y=v_lcp_~y_3, lcp_~a.base=v_lcp_~a.base_2, #memory_int=|v_#memory_int_6|, lcp_#t~short7=|v_lcp_#t~short7_7|} OutVars{lcp_~x=v_lcp_~x_3, lcp_~a.offset=v_lcp_~a.offset_2, lcp_~l~0=v_lcp_~l~0_6, lcp_~y=v_lcp_~y_3, lcp_~a.base=v_lcp_~a.base_2, lcp_#t~mem6=|v_lcp_#t~mem6_3|, #memory_int=|v_#memory_int_6|, lcp_#t~short7=|v_lcp_#t~short7_6|, lcp_#t~mem5=|v_lcp_#t~mem5_3|} AuxVars[] AssignedVars[lcp_#t~mem6, lcp_#t~short7, lcp_#t~mem5] {1096#(and (<= lcp_~y |lcp_#in~y|) (<= |lcp_#in~n| lcp_~n) (<= lcp_~x |lcp_#in~x|))} is VALID [2022-04-14 20:08:26,804 INFO L290 TraceCheckUtils]: 26: Hoare triple {1096#(and (<= lcp_~y |lcp_#in~y|) (<= |lcp_#in~n| lcp_~n) (<= lcp_~x |lcp_#in~x|))} [134] L18-3-->L18-5: Formula: (and (= (+ v_lcp_~l~0_3 1) v_lcp_~l~0_2) |v_lcp_#t~short7_4|) InVars {lcp_#t~short7=|v_lcp_#t~short7_4|, lcp_~l~0=v_lcp_~l~0_3} OutVars{lcp_#t~mem6=|v_lcp_#t~mem6_2|, lcp_#t~mem5=|v_lcp_#t~mem5_2|, lcp_~l~0=v_lcp_~l~0_2, lcp_#t~post8=|v_lcp_#t~post8_1|} AuxVars[] AssignedVars[lcp_~l~0, lcp_#t~mem6, lcp_#t~mem5, lcp_#t~short7, lcp_#t~post8] {1096#(and (<= lcp_~y |lcp_#in~y|) (<= |lcp_#in~n| lcp_~n) (<= lcp_~x |lcp_#in~x|))} is VALID [2022-04-14 20:08:26,804 INFO L290 TraceCheckUtils]: 27: Hoare triple {1096#(and (<= lcp_~y |lcp_#in~y|) (<= |lcp_#in~n| lcp_~n) (<= lcp_~x |lcp_#in~x|))} [118] L18-5-->L18-1: Formula: (let ((.cse1 (< (+ v_lcp_~y_2 v_lcp_~l~0_5) v_lcp_~n_2)) (.cse0 (< (+ v_lcp_~x_2 v_lcp_~l~0_5) v_lcp_~n_2))) (or (and (or (not .cse0) (not .cse1)) (not |v_lcp_#t~short7_5|)) (and .cse1 .cse0 |v_lcp_#t~short7_5|))) InVars {lcp_~x=v_lcp_~x_2, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} OutVars{lcp_~x=v_lcp_~x_2, lcp_#t~short7=|v_lcp_#t~short7_5|, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} AuxVars[] AssignedVars[lcp_#t~short7] {1021#(or |lcp_#t~short7| (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-14 20:08:26,805 INFO L290 TraceCheckUtils]: 28: Hoare triple {1021#(or |lcp_#t~short7| (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} [125] L18-1-->L18-3: Formula: (not |v_lcp_#t~short7_8|) InVars {lcp_#t~short7=|v_lcp_#t~short7_8|} OutVars{lcp_#t~short7=|v_lcp_#t~short7_8|} AuxVars[] AssignedVars[] {1022#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-14 20:08:26,805 INFO L290 TraceCheckUtils]: 29: Hoare triple {1022#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} [133] L18-3-->L18-6: Formula: (not |v_lcp_#t~short7_2|) InVars {lcp_#t~short7=|v_lcp_#t~short7_2|} OutVars{lcp_#t~mem6=|v_lcp_#t~mem6_1|, lcp_#t~mem5=|v_lcp_#t~mem5_1|} AuxVars[] AssignedVars[lcp_#t~mem6, lcp_#t~mem5, lcp_#t~short7] {1022#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-14 20:08:26,805 INFO L290 TraceCheckUtils]: 30: Hoare triple {1022#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} [123] L18-6-->lcpFINAL: Formula: (= |v_lcp_#res_1| v_lcp_~l~0_4) InVars {lcp_~l~0=v_lcp_~l~0_4} OutVars{lcp_#res=|v_lcp_#res_1|, lcp_~l~0=v_lcp_~l~0_4} AuxVars[] AssignedVars[lcp_#res] {1023#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} is VALID [2022-04-14 20:08:26,806 INFO L290 TraceCheckUtils]: 31: Hoare triple {1023#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} [132] lcpFINAL-->lcpEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1023#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} is VALID [2022-04-14 20:08:26,806 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1023#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} {980#true} [147] lcpEXIT-->L44: AOR: Formula: (= |v_lcp_#resOutParam_1| |v_main_#t~ret18_4|) InVars {lcp_#res=|v_lcp_#resOutParam_1|} OutVars{main_#t~ret18=|v_main_#t~ret18_4|} AuxVars[] AssignedVars[main_#t~ret18, lcp_#res] LVA: Formula: (and (= v_main_~y~0_6 |v_lcp_#in~yInParam_1|) (= |v_lcp_#in~nInParam_1| v_main_~n~0_9) (= v_main_~x~0_6 |v_lcp_#in~xInParam_1|) (= |v_lcp_#in~a.offsetInParam_1| v_main_~a~0.offset_5) (= |v_lcp_#in~a.baseInParam_1| v_main_~a~0.base_5)) InVars {main_~a~0.base=v_main_~a~0.base_5, main_~y~0=v_main_~y~0_6, main_~n~0=v_main_~n~0_9, main_~x~0=v_main_~x~0_6, main_~a~0.offset=v_main_~a~0.offset_5} OutVars{lcp_#in~a.base=|v_lcp_#in~a.baseInParam_1|, lcp_#in~a.offset=|v_lcp_#in~a.offsetInParam_1|, lcp_#in~n=|v_lcp_#in~nInParam_1|, lcp_#in~y=|v_lcp_#in~yInParam_1|, lcp_#in~x=|v_lcp_#in~xInParam_1|} AuxVars[] AssignedVars[lcp_#in~a.offset, lcp_#in~y, main_~x~0, lcp_#in~x, lcp_#in~a.base, main_~a~0.base, lcp_#in~n, main_~y~0, main_~n~0, main_~a~0.offset] {1006#(or (<= main_~n~0 (+ |main_#t~ret18| main_~x~0)) (<= main_~n~0 (+ |main_#t~ret18| main_~y~0)))} is VALID [2022-04-14 20:08:26,807 INFO L290 TraceCheckUtils]: 33: Hoare triple {1006#(or (<= main_~n~0 (+ |main_#t~ret18| main_~x~0)) (<= main_~n~0 (+ |main_#t~ret18| main_~y~0)))} [113] L44-->L45: Formula: (and (<= |v_main_#t~ret18_3| 2147483647) (= v_main_~l~1_1 |v_main_#t~ret18_3|) (<= 0 (+ |v_main_#t~ret18_3| 2147483648))) InVars {main_#t~ret18=|v_main_#t~ret18_3|} OutVars{main_~l~1=v_main_~l~1_1} AuxVars[] AssignedVars[main_#t~ret18, main_~l~1] {1007#(or (<= main_~n~0 (+ main_~l~1 main_~y~0)) (<= main_~n~0 (+ main_~l~1 main_~x~0)))} is VALID [2022-04-14 20:08:26,808 INFO L272 TraceCheckUtils]: 34: Hoare triple {1007#(or (<= main_~n~0 (+ main_~l~1 main_~y~0)) (<= main_~n~0 (+ main_~l~1 main_~x~0)))} [116] L45-->checkENTRY: Formula: (and (= v_main_~n~0_10 |v_check_#in~nInParam_1|) (= |v_check_#in~a.baseInParam_1| v_main_~a~0.base_6) (= v_main_~y~0_7 |v_check_#in~yInParam_1|) (= v_main_~x~0_7 |v_check_#in~xInParam_1|) (= |v_check_#in~a.offsetInParam_1| v_main_~a~0.offset_6) (= |v_check_#in~lInParam_1| v_main_~l~1_3)) InVars {main_~x~0=v_main_~x~0_7, main_~l~1=v_main_~l~1_3, main_~a~0.base=v_main_~a~0.base_6, main_~y~0=v_main_~y~0_7, main_~n~0=v_main_~n~0_10, main_~a~0.offset=v_main_~a~0.offset_6} OutVars{check_#in~y=|v_check_#in~yInParam_1|, check_#in~x=|v_check_#in~xInParam_1|, check_#in~a.offset=|v_check_#in~a.offsetInParam_1|, check_#in~a.base=|v_check_#in~a.baseInParam_1|, check_#in~l=|v_check_#in~lInParam_1|, check_#in~n=|v_check_#in~nInParam_1|} AuxVars[] AssignedVars[check_#in~y, check_#in~x, check_#in~a.offset, main_~x~0, main_~l~1, check_#in~a.base, main_~a~0.base, main_~y~0, main_~n~0, check_#in~l, main_~a~0.offset, check_#in~n] {1008#(or (<= |check_#in~n| (+ |check_#in~x| |check_#in~l|)) (<= |check_#in~n| (+ |check_#in~y| |check_#in~l|)))} is VALID [2022-04-14 20:08:26,808 INFO L290 TraceCheckUtils]: 35: Hoare triple {1008#(or (<= |check_#in~n| (+ |check_#in~x| |check_#in~l|)) (<= |check_#in~n| (+ |check_#in~y| |check_#in~l|)))} [122] checkENTRY-->L27: Formula: (and (= v_check_~x_2 |v_check_#in~x_1|) (= |v_check_#in~a.offset_1| v_check_~a.offset_1) (= v_check_~i~0_1 |v_check_#t~nondet9_2|) (= v_check_~l_2 |v_check_#in~l_1|) (= v_check_~n_2 |v_check_#in~n_1|) (= v_check_~a.base_1 |v_check_#in~a.base_1|) (<= 0 (+ 2147483648 |v_check_#t~nondet9_2|)) (= v_check_~y_2 |v_check_#in~y_1|) (<= |v_check_#t~nondet9_2| 2147483647)) InVars {check_#in~y=|v_check_#in~y_1|, check_#in~x=|v_check_#in~x_1|, check_#in~a.offset=|v_check_#in~a.offset_1|, check_#in~a.base=|v_check_#in~a.base_1|, check_#in~l=|v_check_#in~l_1|, check_#t~nondet9=|v_check_#t~nondet9_2|, check_#in~n=|v_check_#in~n_1|} OutVars{check_#in~y=|v_check_#in~y_1|, check_#in~x=|v_check_#in~x_1|, check_#in~a.offset=|v_check_#in~a.offset_1|, check_~a.base=v_check_~a.base_1, check_~i~0=v_check_~i~0_1, check_~y=v_check_~y_2, check_~x=v_check_~x_2, check_~a.offset=v_check_~a.offset_1, check_#in~a.base=|v_check_#in~a.base_1|, check_#in~l=|v_check_#in~l_1|, check_~n=v_check_~n_2, check_#in~n=|v_check_#in~n_1|, check_~l=v_check_~l_2} AuxVars[] AssignedVars[check_~y, check_~x, check_~a.base, check_~a.offset, check_~i~0, check_~n, check_#t~nondet9, check_~l] {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-14 20:08:26,808 INFO L272 TraceCheckUtils]: 36: Hoare triple {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [131] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (and (<= 0 v_check_~i~0_4) (< v_check_~i~0_4 v_check_~l_5)) 1 0)) InVars {check_~i~0=v_check_~i~0_4, check_~l=v_check_~l_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[check_~i~0, assume_abort_if_not_#in~cond, check_~l] {980#true} is VALID [2022-04-14 20:08:26,808 INFO L290 TraceCheckUtils]: 37: Hoare triple {980#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {980#true} is VALID [2022-04-14 20:08:26,808 INFO L290 TraceCheckUtils]: 38: Hoare triple {980#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:26,808 INFO L290 TraceCheckUtils]: 39: Hoare triple {980#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:26,809 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {980#true} {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (and (<= 0 v_check_~i~0_4) (< v_check_~i~0_4 v_check_~l_5)) 1 0)) InVars {check_~i~0=v_check_~i~0_4, check_~l=v_check_~l_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[check_~i~0, assume_abort_if_not_#in~cond, check_~l] {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-14 20:08:26,809 INFO L290 TraceCheckUtils]: 41: Hoare triple {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [112] L27-1-->L28: Formula: (let ((.cse0 (select |v_#memory_int_3| v_check_~a.base_2)) (.cse1 (* v_check_~i~0_3 4))) (and (= (select .cse0 (+ (* v_check_~y_3 4) v_check_~a.offset_2 .cse1)) |v_check_#t~mem11_1|) (= (select .cse0 (+ (* v_check_~x_3 4) v_check_~a.offset_2 .cse1)) |v_check_#t~mem10_1|))) InVars {check_~y=v_check_~y_3, check_~x=v_check_~x_3, check_~a.base=v_check_~a.base_2, check_~a.offset=v_check_~a.offset_2, check_~i~0=v_check_~i~0_3, #memory_int=|v_#memory_int_3|} OutVars{check_~y=v_check_~y_3, check_~x=v_check_~x_3, check_#t~mem10=|v_check_#t~mem10_1|, check_~a.base=v_check_~a.base_2, check_~a.offset=v_check_~a.offset_2, check_~i~0=v_check_~i~0_3, check_#t~mem11=|v_check_#t~mem11_1|, #memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[check_#t~mem10, check_#t~mem11] {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-14 20:08:26,809 INFO L272 TraceCheckUtils]: 42: Hoare triple {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [115] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= |v_check_#t~mem11_4| |v_check_#t~mem10_4|) 1 0)) InVars {check_#t~mem10=|v_check_#t~mem10_4|, check_#t~mem11=|v_check_#t~mem11_4|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, check_#t~mem10, check_#t~mem11] {980#true} is VALID [2022-04-14 20:08:26,809 INFO L290 TraceCheckUtils]: 43: Hoare triple {980#true} [120] __VERIFIER_assertENTRY-->L13: 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] {980#true} is VALID [2022-04-14 20:08:26,809 INFO L290 TraceCheckUtils]: 44: Hoare triple {980#true} [129] L13-->L13-3: 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[] {980#true} is VALID [2022-04-14 20:08:26,809 INFO L290 TraceCheckUtils]: 45: Hoare triple {980#true} [139] L13-3-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:26,810 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {980#true} {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [149] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= |v_check_#t~mem11_4| |v_check_#t~mem10_4|) 1 0)) InVars {check_#t~mem10=|v_check_#t~mem10_4|, check_#t~mem11=|v_check_#t~mem11_4|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, check_#t~mem10, check_#t~mem11] {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-14 20:08:26,810 INFO L290 TraceCheckUtils]: 47: Hoare triple {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [119] L28-1-->L31: Formula: true InVars {} OutVars{check_#t~mem10=|v_check_#t~mem10_3|, check_#t~mem11=|v_check_#t~mem11_3|} AuxVars[] AssignedVars[check_#t~mem10, check_#t~mem11] {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-14 20:08:26,810 INFO L290 TraceCheckUtils]: 48: Hoare triple {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [126] L31-->L32: Formula: (let ((.cse0 (select |v_#memory_int_4| v_check_~a.base_3)) (.cse1 (* v_check_~l_4 4))) (and (< (+ v_check_~l_4 v_check_~x_4) v_check_~n_3) (< (+ v_check_~l_4 v_check_~y_4) v_check_~n_3) (= (select .cse0 (+ (* v_check_~y_4 4) .cse1 v_check_~a.offset_3)) |v_check_#t~mem13_1|) (= |v_check_#t~mem12_1| (select .cse0 (+ .cse1 (* v_check_~x_4 4) v_check_~a.offset_3))))) InVars {check_~y=v_check_~y_4, check_~x=v_check_~x_4, check_~a.base=v_check_~a.base_3, check_~a.offset=v_check_~a.offset_3, #memory_int=|v_#memory_int_4|, check_~n=v_check_~n_3, check_~l=v_check_~l_4} OutVars{check_#t~mem13=|v_check_#t~mem13_1|, check_~y=v_check_~y_4, check_~x=v_check_~x_4, check_~a.base=v_check_~a.base_3, check_~a.offset=v_check_~a.offset_3, check_#t~mem12=|v_check_#t~mem12_1|, #memory_int=|v_#memory_int_4|, check_~n=v_check_~n_3, check_~l=v_check_~l_4} AuxVars[] AssignedVars[check_#t~mem13, check_#t~mem12] {981#false} is VALID [2022-04-14 20:08:26,810 INFO L272 TraceCheckUtils]: 49: Hoare triple {981#false} [135] L32-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (not (= |v_check_#t~mem13_4| |v_check_#t~mem12_4|)) 1 0)) InVars {check_#t~mem13=|v_check_#t~mem13_4|, check_#t~mem12=|v_check_#t~mem12_4|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[check_#t~mem13, __VERIFIER_assert_#in~cond, check_#t~mem12] {981#false} is VALID [2022-04-14 20:08:26,810 INFO L290 TraceCheckUtils]: 50: Hoare triple {981#false} [120] __VERIFIER_assertENTRY-->L13: 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] {981#false} is VALID [2022-04-14 20:08:26,811 INFO L290 TraceCheckUtils]: 51: Hoare triple {981#false} [128] L13-->L13-1: 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[] {981#false} is VALID [2022-04-14 20:08:26,811 INFO L290 TraceCheckUtils]: 52: Hoare triple {981#false} [137] L13-1-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {981#false} is VALID [2022-04-14 20:08:26,811 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 13 trivial. 0 not checked. [2022-04-14 20:08:26,811 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 20:08:28,151 INFO L290 TraceCheckUtils]: 52: Hoare triple {981#false} [137] L13-1-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {981#false} is VALID [2022-04-14 20:08:28,151 INFO L290 TraceCheckUtils]: 51: Hoare triple {981#false} [128] L13-->L13-1: 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[] {981#false} is VALID [2022-04-14 20:08:28,151 INFO L290 TraceCheckUtils]: 50: Hoare triple {981#false} [120] __VERIFIER_assertENTRY-->L13: 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] {981#false} is VALID [2022-04-14 20:08:28,151 INFO L272 TraceCheckUtils]: 49: Hoare triple {981#false} [135] L32-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (not (= |v_check_#t~mem13_4| |v_check_#t~mem12_4|)) 1 0)) InVars {check_#t~mem13=|v_check_#t~mem13_4|, check_#t~mem12=|v_check_#t~mem12_4|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[check_#t~mem13, __VERIFIER_assert_#in~cond, check_#t~mem12] {981#false} is VALID [2022-04-14 20:08:28,152 INFO L290 TraceCheckUtils]: 48: Hoare triple {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [126] L31-->L32: Formula: (let ((.cse0 (select |v_#memory_int_4| v_check_~a.base_3)) (.cse1 (* v_check_~l_4 4))) (and (< (+ v_check_~l_4 v_check_~x_4) v_check_~n_3) (< (+ v_check_~l_4 v_check_~y_4) v_check_~n_3) (= (select .cse0 (+ (* v_check_~y_4 4) .cse1 v_check_~a.offset_3)) |v_check_#t~mem13_1|) (= |v_check_#t~mem12_1| (select .cse0 (+ .cse1 (* v_check_~x_4 4) v_check_~a.offset_3))))) InVars {check_~y=v_check_~y_4, check_~x=v_check_~x_4, check_~a.base=v_check_~a.base_3, check_~a.offset=v_check_~a.offset_3, #memory_int=|v_#memory_int_4|, check_~n=v_check_~n_3, check_~l=v_check_~l_4} OutVars{check_#t~mem13=|v_check_#t~mem13_1|, check_~y=v_check_~y_4, check_~x=v_check_~x_4, check_~a.base=v_check_~a.base_3, check_~a.offset=v_check_~a.offset_3, check_#t~mem12=|v_check_#t~mem12_1|, #memory_int=|v_#memory_int_4|, check_~n=v_check_~n_3, check_~l=v_check_~l_4} AuxVars[] AssignedVars[check_#t~mem13, check_#t~mem12] {981#false} is VALID [2022-04-14 20:08:28,152 INFO L290 TraceCheckUtils]: 47: Hoare triple {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [119] L28-1-->L31: Formula: true InVars {} OutVars{check_#t~mem10=|v_check_#t~mem10_3|, check_#t~mem11=|v_check_#t~mem11_3|} AuxVars[] AssignedVars[check_#t~mem10, check_#t~mem11] {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-14 20:08:28,153 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {980#true} {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [149] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= |v_check_#t~mem11_4| |v_check_#t~mem10_4|) 1 0)) InVars {check_#t~mem10=|v_check_#t~mem10_4|, check_#t~mem11=|v_check_#t~mem11_4|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, check_#t~mem10, check_#t~mem11] {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-14 20:08:28,153 INFO L290 TraceCheckUtils]: 45: Hoare triple {980#true} [139] L13-3-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:28,153 INFO L290 TraceCheckUtils]: 44: Hoare triple {980#true} [129] L13-->L13-3: 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[] {980#true} is VALID [2022-04-14 20:08:28,153 INFO L290 TraceCheckUtils]: 43: Hoare triple {980#true} [120] __VERIFIER_assertENTRY-->L13: 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] {980#true} is VALID [2022-04-14 20:08:28,153 INFO L272 TraceCheckUtils]: 42: Hoare triple {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [115] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= |v_check_#t~mem11_4| |v_check_#t~mem10_4|) 1 0)) InVars {check_#t~mem10=|v_check_#t~mem10_4|, check_#t~mem11=|v_check_#t~mem11_4|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, check_#t~mem10, check_#t~mem11] {980#true} is VALID [2022-04-14 20:08:28,154 INFO L290 TraceCheckUtils]: 41: Hoare triple {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [112] L27-1-->L28: Formula: (let ((.cse0 (select |v_#memory_int_3| v_check_~a.base_2)) (.cse1 (* v_check_~i~0_3 4))) (and (= (select .cse0 (+ (* v_check_~y_3 4) v_check_~a.offset_2 .cse1)) |v_check_#t~mem11_1|) (= (select .cse0 (+ (* v_check_~x_3 4) v_check_~a.offset_2 .cse1)) |v_check_#t~mem10_1|))) InVars {check_~y=v_check_~y_3, check_~x=v_check_~x_3, check_~a.base=v_check_~a.base_2, check_~a.offset=v_check_~a.offset_2, check_~i~0=v_check_~i~0_3, #memory_int=|v_#memory_int_3|} OutVars{check_~y=v_check_~y_3, check_~x=v_check_~x_3, check_#t~mem10=|v_check_#t~mem10_1|, check_~a.base=v_check_~a.base_2, check_~a.offset=v_check_~a.offset_2, check_~i~0=v_check_~i~0_3, check_#t~mem11=|v_check_#t~mem11_1|, #memory_int=|v_#memory_int_3|} AuxVars[] AssignedVars[check_#t~mem10, check_#t~mem11] {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-14 20:08:28,156 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {980#true} {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (and (<= 0 v_check_~i~0_4) (< v_check_~i~0_4 v_check_~l_5)) 1 0)) InVars {check_~i~0=v_check_~i~0_4, check_~l=v_check_~l_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[check_~i~0, assume_abort_if_not_#in~cond, check_~l] {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-14 20:08:28,156 INFO L290 TraceCheckUtils]: 39: Hoare triple {980#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:28,156 INFO L290 TraceCheckUtils]: 38: Hoare triple {980#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:28,156 INFO L290 TraceCheckUtils]: 37: Hoare triple {980#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {980#true} is VALID [2022-04-14 20:08:28,156 INFO L272 TraceCheckUtils]: 36: Hoare triple {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} [131] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (and (<= 0 v_check_~i~0_4) (< v_check_~i~0_4 v_check_~l_5)) 1 0)) InVars {check_~i~0=v_check_~i~0_4, check_~l=v_check_~l_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[check_~i~0, assume_abort_if_not_#in~cond, check_~l] {980#true} is VALID [2022-04-14 20:08:28,157 INFO L290 TraceCheckUtils]: 35: Hoare triple {1008#(or (<= |check_#in~n| (+ |check_#in~x| |check_#in~l|)) (<= |check_#in~n| (+ |check_#in~y| |check_#in~l|)))} [122] checkENTRY-->L27: Formula: (and (= v_check_~x_2 |v_check_#in~x_1|) (= |v_check_#in~a.offset_1| v_check_~a.offset_1) (= v_check_~i~0_1 |v_check_#t~nondet9_2|) (= v_check_~l_2 |v_check_#in~l_1|) (= v_check_~n_2 |v_check_#in~n_1|) (= v_check_~a.base_1 |v_check_#in~a.base_1|) (<= 0 (+ 2147483648 |v_check_#t~nondet9_2|)) (= v_check_~y_2 |v_check_#in~y_1|) (<= |v_check_#t~nondet9_2| 2147483647)) InVars {check_#in~y=|v_check_#in~y_1|, check_#in~x=|v_check_#in~x_1|, check_#in~a.offset=|v_check_#in~a.offset_1|, check_#in~a.base=|v_check_#in~a.base_1|, check_#in~l=|v_check_#in~l_1|, check_#t~nondet9=|v_check_#t~nondet9_2|, check_#in~n=|v_check_#in~n_1|} OutVars{check_#in~y=|v_check_#in~y_1|, check_#in~x=|v_check_#in~x_1|, check_#in~a.offset=|v_check_#in~a.offset_1|, check_~a.base=v_check_~a.base_1, check_~i~0=v_check_~i~0_1, check_~y=v_check_~y_2, check_~x=v_check_~x_2, check_~a.offset=v_check_~a.offset_1, check_#in~a.base=|v_check_#in~a.base_1|, check_#in~l=|v_check_#in~l_1|, check_~n=v_check_~n_2, check_#in~n=|v_check_#in~n_1|, check_~l=v_check_~l_2} AuxVars[] AssignedVars[check_~y, check_~x, check_~a.base, check_~a.offset, check_~i~0, check_~n, check_#t~nondet9, check_~l] {1009#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-14 20:08:28,158 INFO L272 TraceCheckUtils]: 34: Hoare triple {1007#(or (<= main_~n~0 (+ main_~l~1 main_~y~0)) (<= main_~n~0 (+ main_~l~1 main_~x~0)))} [116] L45-->checkENTRY: Formula: (and (= v_main_~n~0_10 |v_check_#in~nInParam_1|) (= |v_check_#in~a.baseInParam_1| v_main_~a~0.base_6) (= v_main_~y~0_7 |v_check_#in~yInParam_1|) (= v_main_~x~0_7 |v_check_#in~xInParam_1|) (= |v_check_#in~a.offsetInParam_1| v_main_~a~0.offset_6) (= |v_check_#in~lInParam_1| v_main_~l~1_3)) InVars {main_~x~0=v_main_~x~0_7, main_~l~1=v_main_~l~1_3, main_~a~0.base=v_main_~a~0.base_6, main_~y~0=v_main_~y~0_7, main_~n~0=v_main_~n~0_10, main_~a~0.offset=v_main_~a~0.offset_6} OutVars{check_#in~y=|v_check_#in~yInParam_1|, check_#in~x=|v_check_#in~xInParam_1|, check_#in~a.offset=|v_check_#in~a.offsetInParam_1|, check_#in~a.base=|v_check_#in~a.baseInParam_1|, check_#in~l=|v_check_#in~lInParam_1|, check_#in~n=|v_check_#in~nInParam_1|} AuxVars[] AssignedVars[check_#in~y, check_#in~x, check_#in~a.offset, main_~x~0, main_~l~1, check_#in~a.base, main_~a~0.base, main_~y~0, main_~n~0, check_#in~l, main_~a~0.offset, check_#in~n] {1008#(or (<= |check_#in~n| (+ |check_#in~x| |check_#in~l|)) (<= |check_#in~n| (+ |check_#in~y| |check_#in~l|)))} is VALID [2022-04-14 20:08:28,158 INFO L290 TraceCheckUtils]: 33: Hoare triple {1006#(or (<= main_~n~0 (+ |main_#t~ret18| main_~x~0)) (<= main_~n~0 (+ |main_#t~ret18| main_~y~0)))} [113] L44-->L45: Formula: (and (<= |v_main_#t~ret18_3| 2147483647) (= v_main_~l~1_1 |v_main_#t~ret18_3|) (<= 0 (+ |v_main_#t~ret18_3| 2147483648))) InVars {main_#t~ret18=|v_main_#t~ret18_3|} OutVars{main_~l~1=v_main_~l~1_1} AuxVars[] AssignedVars[main_#t~ret18, main_~l~1] {1007#(or (<= main_~n~0 (+ main_~l~1 main_~y~0)) (<= main_~n~0 (+ main_~l~1 main_~x~0)))} is VALID [2022-04-14 20:08:28,159 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1023#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} {980#true} [147] lcpEXIT-->L44: AOR: Formula: (= |v_lcp_#resOutParam_1| |v_main_#t~ret18_4|) InVars {lcp_#res=|v_lcp_#resOutParam_1|} OutVars{main_#t~ret18=|v_main_#t~ret18_4|} AuxVars[] AssignedVars[main_#t~ret18, lcp_#res] LVA: Formula: (and (= v_main_~y~0_6 |v_lcp_#in~yInParam_1|) (= |v_lcp_#in~nInParam_1| v_main_~n~0_9) (= v_main_~x~0_6 |v_lcp_#in~xInParam_1|) (= |v_lcp_#in~a.offsetInParam_1| v_main_~a~0.offset_5) (= |v_lcp_#in~a.baseInParam_1| v_main_~a~0.base_5)) InVars {main_~a~0.base=v_main_~a~0.base_5, main_~y~0=v_main_~y~0_6, main_~n~0=v_main_~n~0_9, main_~x~0=v_main_~x~0_6, main_~a~0.offset=v_main_~a~0.offset_5} OutVars{lcp_#in~a.base=|v_lcp_#in~a.baseInParam_1|, lcp_#in~a.offset=|v_lcp_#in~a.offsetInParam_1|, lcp_#in~n=|v_lcp_#in~nInParam_1|, lcp_#in~y=|v_lcp_#in~yInParam_1|, lcp_#in~x=|v_lcp_#in~xInParam_1|} AuxVars[] AssignedVars[lcp_#in~a.offset, lcp_#in~y, main_~x~0, lcp_#in~x, lcp_#in~a.base, main_~a~0.base, lcp_#in~n, main_~y~0, main_~n~0, main_~a~0.offset] {1006#(or (<= main_~n~0 (+ |main_#t~ret18| main_~x~0)) (<= main_~n~0 (+ |main_#t~ret18| main_~y~0)))} is VALID [2022-04-14 20:08:28,160 INFO L290 TraceCheckUtils]: 31: Hoare triple {1023#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} [132] lcpFINAL-->lcpEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1023#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} is VALID [2022-04-14 20:08:28,161 INFO L290 TraceCheckUtils]: 30: Hoare triple {1022#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} [123] L18-6-->lcpFINAL: Formula: (= |v_lcp_#res_1| v_lcp_~l~0_4) InVars {lcp_~l~0=v_lcp_~l~0_4} OutVars{lcp_#res=|v_lcp_#res_1|, lcp_~l~0=v_lcp_~l~0_4} AuxVars[] AssignedVars[lcp_#res] {1023#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} is VALID [2022-04-14 20:08:28,161 INFO L290 TraceCheckUtils]: 29: Hoare triple {1022#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} [133] L18-3-->L18-6: Formula: (not |v_lcp_#t~short7_2|) InVars {lcp_#t~short7=|v_lcp_#t~short7_2|} OutVars{lcp_#t~mem6=|v_lcp_#t~mem6_1|, lcp_#t~mem5=|v_lcp_#t~mem5_1|} AuxVars[] AssignedVars[lcp_#t~mem6, lcp_#t~mem5, lcp_#t~short7] {1022#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-14 20:08:28,161 INFO L290 TraceCheckUtils]: 28: Hoare triple {1021#(or |lcp_#t~short7| (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} [125] L18-1-->L18-3: Formula: (not |v_lcp_#t~short7_8|) InVars {lcp_#t~short7=|v_lcp_#t~short7_8|} OutVars{lcp_#t~short7=|v_lcp_#t~short7_8|} AuxVars[] AssignedVars[] {1022#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-14 20:08:28,162 INFO L290 TraceCheckUtils]: 27: Hoare triple {1262#(and (or (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~y| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~x| lcp_~n))) (or (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~x| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~y| lcp_~n))))} [118] L18-5-->L18-1: Formula: (let ((.cse1 (< (+ v_lcp_~y_2 v_lcp_~l~0_5) v_lcp_~n_2)) (.cse0 (< (+ v_lcp_~x_2 v_lcp_~l~0_5) v_lcp_~n_2))) (or (and (or (not .cse0) (not .cse1)) (not |v_lcp_#t~short7_5|)) (and .cse1 .cse0 |v_lcp_#t~short7_5|))) InVars {lcp_~x=v_lcp_~x_2, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} OutVars{lcp_~x=v_lcp_~x_2, lcp_#t~short7=|v_lcp_#t~short7_5|, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} AuxVars[] AssignedVars[lcp_#t~short7] {1021#(or |lcp_#t~short7| (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-14 20:08:28,163 INFO L290 TraceCheckUtils]: 26: Hoare triple {1262#(and (or (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~y| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~x| lcp_~n))) (or (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~x| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~y| lcp_~n))))} [134] L18-3-->L18-5: Formula: (and (= (+ v_lcp_~l~0_3 1) v_lcp_~l~0_2) |v_lcp_#t~short7_4|) InVars {lcp_#t~short7=|v_lcp_#t~short7_4|, lcp_~l~0=v_lcp_~l~0_3} OutVars{lcp_#t~mem6=|v_lcp_#t~mem6_2|, lcp_#t~mem5=|v_lcp_#t~mem5_2|, lcp_~l~0=v_lcp_~l~0_2, lcp_#t~post8=|v_lcp_#t~post8_1|} AuxVars[] AssignedVars[lcp_~l~0, lcp_#t~mem6, lcp_#t~mem5, lcp_#t~short7, lcp_#t~post8] {1262#(and (or (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~y| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~x| lcp_~n))) (or (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~x| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~y| lcp_~n))))} is VALID [2022-04-14 20:08:28,163 INFO L290 TraceCheckUtils]: 25: Hoare triple {1262#(and (or (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~y| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~x| lcp_~n))) (or (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~x| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~y| lcp_~n))))} [124] L18-1-->L18-3: Formula: (let ((.cse0 (select |v_#memory_int_6| v_lcp_~a.base_2)) (.cse1 (* v_lcp_~l~0_6 4))) (and (= (select .cse0 (+ v_lcp_~a.offset_2 .cse1 (* v_lcp_~y_3 4))) |v_lcp_#t~mem6_3|) (let ((.cse2 (= |v_lcp_#t~mem6_3| |v_lcp_#t~mem5_3|))) (or (and (not |v_lcp_#t~short7_6|) (not .cse2)) (and .cse2 |v_lcp_#t~short7_6|))) (= |v_lcp_#t~mem5_3| (select .cse0 (+ v_lcp_~a.offset_2 .cse1 (* v_lcp_~x_3 4)))) |v_lcp_#t~short7_7|)) InVars {lcp_~x=v_lcp_~x_3, lcp_~a.offset=v_lcp_~a.offset_2, lcp_~l~0=v_lcp_~l~0_6, lcp_~y=v_lcp_~y_3, lcp_~a.base=v_lcp_~a.base_2, #memory_int=|v_#memory_int_6|, lcp_#t~short7=|v_lcp_#t~short7_7|} OutVars{lcp_~x=v_lcp_~x_3, lcp_~a.offset=v_lcp_~a.offset_2, lcp_~l~0=v_lcp_~l~0_6, lcp_~y=v_lcp_~y_3, lcp_~a.base=v_lcp_~a.base_2, lcp_#t~mem6=|v_lcp_#t~mem6_3|, #memory_int=|v_#memory_int_6|, lcp_#t~short7=|v_lcp_#t~short7_6|, lcp_#t~mem5=|v_lcp_#t~mem5_3|} AuxVars[] AssignedVars[lcp_#t~mem6, lcp_#t~short7, lcp_#t~mem5] {1262#(and (or (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~y| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~x| lcp_~n))) (or (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~x| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~y| lcp_~n))))} is VALID [2022-04-14 20:08:28,164 INFO L290 TraceCheckUtils]: 24: Hoare triple {1262#(and (or (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~y| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~x| lcp_~n))) (or (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~x| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~y| lcp_~n))))} [118] L18-5-->L18-1: Formula: (let ((.cse1 (< (+ v_lcp_~y_2 v_lcp_~l~0_5) v_lcp_~n_2)) (.cse0 (< (+ v_lcp_~x_2 v_lcp_~l~0_5) v_lcp_~n_2))) (or (and (or (not .cse0) (not .cse1)) (not |v_lcp_#t~short7_5|)) (and .cse1 .cse0 |v_lcp_#t~short7_5|))) InVars {lcp_~x=v_lcp_~x_2, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} OutVars{lcp_~x=v_lcp_~x_2, lcp_#t~short7=|v_lcp_#t~short7_5|, lcp_~l~0=v_lcp_~l~0_5, lcp_~y=v_lcp_~y_2, lcp_~n=v_lcp_~n_2} AuxVars[] AssignedVars[lcp_#t~short7] {1262#(and (or (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~y| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~x| lcp_~n))) (or (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~x| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~y| lcp_~n))))} is VALID [2022-04-14 20:08:28,165 INFO L290 TraceCheckUtils]: 23: Hoare triple {980#true} [114] lcpENTRY-->L18-5: Formula: (and (= v_lcp_~a.base_1 |v_lcp_#in~a.base_1|) (= v_lcp_~n_1 |v_lcp_#in~n_1|) (= v_lcp_~l~0_1 0) (= v_lcp_~x_1 |v_lcp_#in~x_1|) (= v_lcp_~y_1 |v_lcp_#in~y_1|) (= |v_lcp_#in~a.offset_1| v_lcp_~a.offset_1)) InVars {lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_#in~y=|v_lcp_#in~y_1|, lcp_#in~x=|v_lcp_#in~x_1|} OutVars{lcp_~x=v_lcp_~x_1, lcp_#in~a.offset=|v_lcp_#in~a.offset_1|, lcp_~l~0=v_lcp_~l~0_1, lcp_~a.offset=v_lcp_~a.offset_1, lcp_~y=v_lcp_~y_1, lcp_#in~y=|v_lcp_#in~y_1|, lcp_~a.base=v_lcp_~a.base_1, lcp_#in~x=|v_lcp_#in~x_1|, lcp_#in~a.base=|v_lcp_#in~a.base_1|, lcp_#in~n=|v_lcp_#in~n_1|, lcp_~n=v_lcp_~n_1} AuxVars[] AssignedVars[lcp_~x, lcp_~l~0, lcp_~a.offset, lcp_~y, lcp_~a.base, lcp_~n] {1262#(and (or (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~y| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~x| lcp_~n))) (or (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~x| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~y| lcp_~n))))} is VALID [2022-04-14 20:08:28,165 INFO L272 TraceCheckUtils]: 22: Hoare triple {980#true} [111] L43-1-->lcpENTRY: Formula: (and (= v_main_~y~0_6 |v_lcp_#in~yInParam_1|) (= |v_lcp_#in~nInParam_1| v_main_~n~0_9) (= v_main_~x~0_6 |v_lcp_#in~xInParam_1|) (= |v_lcp_#in~a.offsetInParam_1| v_main_~a~0.offset_5) (= |v_lcp_#in~a.baseInParam_1| v_main_~a~0.base_5)) InVars {main_~a~0.base=v_main_~a~0.base_5, main_~y~0=v_main_~y~0_6, main_~n~0=v_main_~n~0_9, main_~x~0=v_main_~x~0_6, main_~a~0.offset=v_main_~a~0.offset_5} OutVars{lcp_#in~a.base=|v_lcp_#in~a.baseInParam_1|, lcp_#in~a.offset=|v_lcp_#in~a.offsetInParam_1|, lcp_#in~n=|v_lcp_#in~nInParam_1|, lcp_#in~y=|v_lcp_#in~yInParam_1|, lcp_#in~x=|v_lcp_#in~xInParam_1|} AuxVars[] AssignedVars[lcp_#in~a.offset, lcp_#in~y, main_~x~0, lcp_#in~x, lcp_#in~a.base, main_~a~0.base, lcp_#in~n, main_~y~0, main_~n~0, main_~a~0.offset] {980#true} is VALID [2022-04-14 20:08:28,165 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {980#true} {980#true} [143] assume_abort_if_notEXIT-->L43-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_5) (<= 0 v_main_~x~0_5)) 1 0)) InVars {main_~x~0=v_main_~x~0_5, main_~y~0=v_main_~y~0_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, assume_abort_if_not_#in~cond] {980#true} is VALID [2022-04-14 20:08:28,165 INFO L290 TraceCheckUtils]: 20: Hoare triple {980#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:28,165 INFO L290 TraceCheckUtils]: 19: Hoare triple {980#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:28,165 INFO L290 TraceCheckUtils]: 18: Hoare triple {980#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {980#true} is VALID [2022-04-14 20:08:28,165 INFO L272 TraceCheckUtils]: 17: Hoare triple {980#true} [109] L43-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_5) (<= 0 v_main_~x~0_5)) 1 0)) InVars {main_~x~0=v_main_~x~0_5, main_~y~0=v_main_~y~0_5} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, assume_abort_if_not_#in~cond] {980#true} is VALID [2022-04-14 20:08:28,165 INFO L290 TraceCheckUtils]: 16: Hoare triple {980#true} [106] L39-1-->L43: Formula: (and (<= |v_main_#t~nondet17_2| 2147483647) (= v_main_~a~0.offset_4 |v_main_#t~malloc15.offset_3|) (<= 0 (+ |v_main_#t~nondet16_2| 2147483648)) (= v_main_~y~0_3 |v_main_#t~nondet17_2|) (= v_main_~x~0_3 |v_main_#t~nondet16_2|) (<= |v_main_#t~nondet16_2| 2147483647) (<= 0 (+ |v_main_#t~nondet17_2| 2147483648)) (= v_main_~a~0.base_4 |v_main_#t~malloc15.base_3|)) InVars {main_#t~nondet16=|v_main_#t~nondet16_2|, main_#t~malloc15.offset=|v_main_#t~malloc15.offset_3|, main_#t~malloc15.base=|v_main_#t~malloc15.base_3|, main_#t~nondet17=|v_main_#t~nondet17_2|} OutVars{main_#t~malloc15.offset=|v_main_#t~malloc15.offset_3|, main_~x~0=v_main_~x~0_3, main_~a~0.base=v_main_~a~0.base_4, main_~y~0=v_main_~y~0_3, main_#t~malloc15.base=|v_main_#t~malloc15.base_3|, main_~a~0.offset=v_main_~a~0.offset_4} AuxVars[] AssignedVars[main_#t~nondet16, main_~x~0, main_#t~nondet17, main_~a~0.base, main_~y~0, main_~a~0.offset] {980#true} is VALID [2022-04-14 20:08:28,165 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {980#true} {980#true} [145] #Ultimate.meminitEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (and (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_main_#t~malloc15.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= v_main_~n~0_8 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#productInParam_1| (* v_main_~n~0_8 4)) (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_main_#t~malloc15.offset_4|)) InVars {main_#t~malloc15.offset=|v_main_#t~malloc15.offset_4|, main_~n~0=v_main_~n~0_8, main_#t~malloc15.base=|v_main_#t~malloc15.base_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, #Ultimate.meminit_#product, main_~n~0, #Ultimate.meminit_#ptr.base, main_#t~malloc15.base, #Ultimate.meminit_#ptr.offset] {980#true} is VALID [2022-04-14 20:08:28,166 INFO L290 TraceCheckUtils]: 14: Hoare triple {980#true} [110] #Ultimate.meminitFINAL-->#Ultimate.meminitEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:28,166 INFO L290 TraceCheckUtils]: 13: Hoare triple {980#true} [107] #Ultimate.meminitENTRY-->#Ultimate.meminitFINAL: Formula: (= (store |v_#memory_int_10| |v_#Ultimate.meminit_#ptr.base_1| ((as const (Array Int Int)) 0)) |v_#memory_int_9|) InVars {#memory_int=|v_#memory_int_10|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} OutVars{#memory_int=|v_#memory_int_9|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.base_1|} AuxVars[] AssignedVars[#memory_int] {980#true} is VALID [2022-04-14 20:08:28,166 INFO L272 TraceCheckUtils]: 12: Hoare triple {980#true} [103] L39-->#Ultimate.meminitENTRY: Formula: (and (= |v_#Ultimate.meminit_#ptr.baseInParam_1| |v_main_#t~malloc15.base_4|) (= |v_#Ultimate.meminit_#sizeOfFieldsInParam_1| 4) (= v_main_~n~0_8 |v_#Ultimate.meminit_#amountOfFieldsInParam_1|) (= |v_#Ultimate.meminit_#productInParam_1| (* v_main_~n~0_8 4)) (= |v_#Ultimate.meminit_#ptr.offsetInParam_1| |v_main_#t~malloc15.offset_4|)) InVars {main_#t~malloc15.offset=|v_main_#t~malloc15.offset_4|, main_~n~0=v_main_~n~0_8, main_#t~malloc15.base=|v_main_#t~malloc15.base_4|} OutVars{#Ultimate.meminit_#product=|v_#Ultimate.meminit_#productInParam_1|, #Ultimate.meminit_#ptr.base=|v_#Ultimate.meminit_#ptr.baseInParam_1|, #Ultimate.meminit_#sizeOfFields=|v_#Ultimate.meminit_#sizeOfFieldsInParam_1|, #Ultimate.meminit_#ptr.offset=|v_#Ultimate.meminit_#ptr.offsetInParam_1|, #Ultimate.meminit_#amountOfFields=|v_#Ultimate.meminit_#amountOfFieldsInParam_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #Ultimate.meminit_#sizeOfFields, #Ultimate.meminit_#amountOfFields, #Ultimate.meminit_#product, main_~n~0, #Ultimate.meminit_#ptr.base, main_#t~malloc15.base, #Ultimate.meminit_#ptr.offset] {980#true} is VALID [2022-04-14 20:08:28,166 INFO L290 TraceCheckUtils]: 11: Hoare triple {980#true} [101] L38-1-->L39: Formula: (and (= |v_#valid_3| (store |v_#valid_4| |v_main_#t~malloc15.base_1| 1)) (not (= |v_main_#t~malloc15.base_1| 0)) (= |v_#length_1| (store |v_#length_2| |v_main_#t~malloc15.base_1| (* v_main_~n~0_5 4))) (< |v_main_#t~malloc15.base_1| |v_#StackHeapBarrier_1|) (= (select |v_#valid_4| |v_main_#t~malloc15.base_1|) 0) (= |v_main_#t~malloc15.offset_1| 0)) InVars {#StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_2|, main_~n~0=v_main_~n~0_5, #valid=|v_#valid_4|} OutVars{main_#t~malloc15.offset=|v_main_#t~malloc15.offset_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_3|, #length=|v_#length_1|, main_~n~0=v_main_~n~0_5, main_#t~malloc15.base=|v_main_#t~malloc15.base_1|} AuxVars[] AssignedVars[main_#t~malloc15.offset, #valid, #length, main_#t~malloc15.base] {980#true} is VALID [2022-04-14 20:08:28,166 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {980#true} {980#true} [142] assume_abort_if_notEXIT-->L38-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (and (< v_main_~n~0_7 1073741824) (<= 0 v_main_~n~0_7)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~n~0=v_main_~n~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~n~0, assume_abort_if_not_#in~cond] {980#true} is VALID [2022-04-14 20:08:28,166 INFO L290 TraceCheckUtils]: 9: Hoare triple {980#true} [108] L6-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:28,166 INFO L290 TraceCheckUtils]: 8: Hoare triple {980#true} [105] L6-->L6-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:28,166 INFO L290 TraceCheckUtils]: 7: Hoare triple {980#true} [102] assume_abort_if_notENTRY-->L6: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {980#true} is VALID [2022-04-14 20:08:28,166 INFO L272 TraceCheckUtils]: 6: Hoare triple {980#true} [100] L38-->assume_abort_if_notENTRY: Formula: (= (ite (and (< v_main_~n~0_7 1073741824) (<= 0 v_main_~n~0_7)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~n~0=v_main_~n~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~n~0, assume_abort_if_not_#in~cond] {980#true} is VALID [2022-04-14 20:08:28,166 INFO L290 TraceCheckUtils]: 5: Hoare triple {980#true} [98] mainENTRY-->L38: Formula: (and (<= |v_main_#t~nondet14_2| 2147483647) (= v_main_~n~0_3 |v_main_#t~nondet14_2|) (<= 0 (+ |v_main_#t~nondet14_2| 2147483648))) InVars {main_#t~nondet14=|v_main_#t~nondet14_2|} OutVars{main_~n~0=v_main_~n~0_3} AuxVars[] AssignedVars[main_#t~nondet14, main_~n~0] {980#true} is VALID [2022-04-14 20:08:28,166 INFO L272 TraceCheckUtils]: 4: Hoare triple {980#true} [95] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:28,167 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {980#true} {980#true} [141] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:28,167 INFO L290 TraceCheckUtils]: 2: Hoare triple {980#true} [99] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:28,167 INFO L290 TraceCheckUtils]: 1: Hoare triple {980#true} [96] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_5| 1)) (.cse1 (select |v_#memory_int_5| 2))) (and (= (select .cse0 0) 48) (= (select |v_#valid_5| 1) 1) (= (select .cse1 3) 46) (= 2 (select |v_#length_3| 1)) (< 0 |v_#StackHeapBarrier_2|) (= 112 (select .cse1 2)) (= |v_#NULL.base_1| 0) (= (select |v_#valid_5| 2) 1) (= 108 (select .cse1 0)) (= (select .cse1 1) 99) (= (select .cse0 1) 0) (= 1 (select |v_#valid_5| 3)) (= (select .cse1 4) 99) (= (select .cse1 5) 0) (= 6 (select |v_#length_3| 2)) (= (select |v_#valid_5| 0) 0) (= |v_#NULL.offset_1| 0) (= 12 (select |v_#length_3| 3)))) InVars {#memory_int=|v_#memory_int_5|, #StackHeapBarrier=|v_#StackHeapBarrier_2|, #length=|v_#length_3|, #valid=|v_#valid_5|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_2|, #valid=|v_#valid_5|, #memory_int=|v_#memory_int_5|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_3|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {980#true} is VALID [2022-04-14 20:08:28,167 INFO L272 TraceCheckUtils]: 0: Hoare triple {980#true} [94] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {980#true} is VALID [2022-04-14 20:08:28,167 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 13 trivial. 0 not checked. [2022-04-14 20:08:28,167 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1343263386] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 20:08:28,167 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-14 20:08:28,167 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 10, 10] total 14 [2022-04-14 20:08:28,168 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1555381014] [2022-04-14 20:08:28,168 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-04-14 20:08:28,168 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 3.230769230769231) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (12), 5 states have call predecessors, (12), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) Word has length 53 [2022-04-14 20:08:28,169 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:08:28,169 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 3.230769230769231) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (12), 5 states have call predecessors, (12), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-14 20:08:28,225 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:08:28,225 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-14 20:08:28,225 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:08:28,225 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-14 20:08:28,225 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=29, Invalid=153, Unknown=0, NotChecked=0, Total=182 [2022-04-14 20:08:28,226 INFO L87 Difference]: Start difference. First operand 46 states and 50 transitions. Second operand has 14 states, 13 states have (on average 3.230769230769231) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (12), 5 states have call predecessors, (12), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-14 20:08:29,072 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:08:29,072 INFO L93 Difference]: Finished difference Result 44 states and 49 transitions. [2022-04-14 20:08:29,072 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-14 20:08:29,073 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 3.230769230769231) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (12), 5 states have call predecessors, (12), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) Word has length 53 [2022-04-14 20:08:29,073 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:08:29,073 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 3.230769230769231) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (12), 5 states have call predecessors, (12), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-14 20:08:29,077 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 46 transitions. [2022-04-14 20:08:29,077 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 3.230769230769231) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (12), 5 states have call predecessors, (12), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-14 20:08:29,080 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 46 transitions. [2022-04-14 20:08:29,080 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 46 transitions. [2022-04-14 20:08:29,121 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:08:29,121 INFO L225 Difference]: With dead ends: 44 [2022-04-14 20:08:29,121 INFO L226 Difference]: Without dead ends: 0 [2022-04-14 20:08:29,121 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 137 GetRequests, 115 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=99, Invalid=407, Unknown=0, NotChecked=0, Total=506 [2022-04-14 20:08:29,123 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 55 mSDsluCounter, 16 mSDsCounter, 0 mSdLazyCounter, 326 mSolverCounterSat, 32 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 57 SdHoareTripleChecker+Valid, 43 SdHoareTripleChecker+Invalid, 358 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 32 IncrementalHoareTripleChecker+Valid, 326 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-14 20:08:29,123 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [57 Valid, 43 Invalid, 358 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [32 Valid, 326 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-14 20:08:29,125 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-14 20:08:29,125 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-14 20:08:29,125 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:08:29,125 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 20:08:29,125 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 20:08:29,125 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 20:08:29,125 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:08:29,125 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-14 20:08:29,125 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 20:08:29,125 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:08:29,125 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:08:29,125 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-14 20:08:29,125 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-14 20:08:29,125 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:08:29,125 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-14 20:08:29,125 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 20:08:29,126 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:08:29,126 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:08:29,126 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:08:29,126 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:08:29,126 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 20:08:29,126 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-14 20:08:29,126 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 53 [2022-04-14 20:08:29,126 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:08:29,126 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-14 20:08:29,126 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 3.230769230769231) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (12), 5 states have call predecessors, (12), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-14 20:08:29,126 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 20:08:29,126 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:08:29,128 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-14 20:08:29,148 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-14 20:08:29,343 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:08:29,346 INFO L719 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1] [2022-04-14 20:08:29,346 INFO L177 ceAbstractionStarter]: Computing trace abstraction results [2022-04-14 20:08:29,348 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 08:08:29 BasicIcfg [2022-04-14 20:08:29,348 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-14 20:08:29,349 INFO L158 Benchmark]: Toolchain (without parser) took 9051.50ms. Allocated memory was 225.4MB in the beginning and 377.5MB in the end (delta: 152.0MB). Free memory was 175.3MB in the beginning and 243.4MB in the end (delta: -68.1MB). Peak memory consumption was 83.1MB. Max. memory is 8.0GB. [2022-04-14 20:08:29,349 INFO L158 Benchmark]: CDTParser took 0.10ms. Allocated memory is still 225.4MB. Free memory was 191.8MB in the beginning and 191.6MB in the end (delta: 151.8kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-14 20:08:29,349 INFO L158 Benchmark]: CACSL2BoogieTranslator took 191.50ms. Allocated memory is still 225.4MB. Free memory was 175.2MB in the beginning and 200.9MB in the end (delta: -25.7MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-14 20:08:29,349 INFO L158 Benchmark]: Boogie Preprocessor took 32.07ms. Allocated memory is still 225.4MB. Free memory was 200.9MB in the beginning and 199.0MB in the end (delta: 1.9MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-14 20:08:29,350 INFO L158 Benchmark]: RCFGBuilder took 328.06ms. Allocated memory is still 225.4MB. Free memory was 199.0MB in the beginning and 184.3MB in the end (delta: 14.7MB). Peak memory consumption was 14.7MB. Max. memory is 8.0GB. [2022-04-14 20:08:29,350 INFO L158 Benchmark]: IcfgTransformer took 27.44ms. Allocated memory is still 225.4MB. Free memory was 184.1MB in the beginning and 182.0MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-14 20:08:29,350 INFO L158 Benchmark]: TraceAbstraction took 8468.52ms. Allocated memory was 225.4MB in the beginning and 377.5MB in the end (delta: 152.0MB). Free memory was 181.2MB in the beginning and 243.4MB in the end (delta: -62.2MB). Peak memory consumption was 90.7MB. Max. memory is 8.0GB. [2022-04-14 20:08:29,351 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.10ms. Allocated memory is still 225.4MB. Free memory was 191.8MB in the beginning and 191.6MB in the end (delta: 151.8kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 191.50ms. Allocated memory is still 225.4MB. Free memory was 175.2MB in the beginning and 200.9MB in the end (delta: -25.7MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * Boogie Preprocessor took 32.07ms. Allocated memory is still 225.4MB. Free memory was 200.9MB in the beginning and 199.0MB in the end (delta: 1.9MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 328.06ms. Allocated memory is still 225.4MB. Free memory was 199.0MB in the beginning and 184.3MB in the end (delta: 14.7MB). Peak memory consumption was 14.7MB. Max. memory is 8.0GB. * IcfgTransformer took 27.44ms. Allocated memory is still 225.4MB. Free memory was 184.1MB in the beginning and 182.0MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 8468.52ms. Allocated memory was 225.4MB in the beginning and 377.5MB in the end (delta: 152.0MB). Free memory was 181.2MB in the beginning and 243.4MB in the end (delta: -62.2MB). Peak memory consumption was 90.7MB. 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: 13]: 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 8 procedures, 49 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 8.4s, OverallIterations: 5, TraceHistogramMax: 3, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 3.9s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 325 SdHoareTripleChecker+Valid, 1.5s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 317 mSDsluCounter, 219 SdHoareTripleChecker+Invalid, 1.4s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 60 mSDsCounter, 180 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1332 IncrementalHoareTripleChecker+Invalid, 1512 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 180 mSolverCounterUnsat, 159 mSDtfsCounter, 1332 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 248 GetRequests, 169 SyntacticMatches, 1 SemanticMatches, 78 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 115 ImplicationChecksByTransitivity, 0.7s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=49occurred in iteration=0, InterpolantAutomatonStates: 54, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 5 MinimizatonAttempts, 2 StatesRemovedByMinimization, 1 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 3.7s InterpolantComputationTime, 283 NumberOfCodeBlocks, 283 NumberOfCodeBlocksAsserted, 6 NumberOfCheckSat, 329 ConstructedInterpolants, 0 QuantifiedInterpolants, 1274 SizeOfPredicates, 13 NumberOfNonLiveVariables, 231 ConjunctsInSsa, 21 ConjunctsInUnsatCore, 7 InterpolantComputations, 4 PerfectInterpolantSequences, 95/101 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-14 20:08:29,377 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...