java -Xmx6000000000 -jar ./plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data ./data --generate-csv --csv-dir ../../../releaseScripts/default/UAutomizer-linux/csv -tc ../../../trunk/examples/toolchains/AutomizerCTransformed.xml -s ../../../trunk/examples/settings/ai/eq-bench/svcomp-DerefFreeMemtrack-32bit-Automizer_Fixed_noBitfields+AI_EQ_SS.epf -i ../../../trunk/examples/svcomp/array-memsafety/cstrncpy_unsafe_false-valid-deref.i -------------------------------------------------------------------------------- This is Ultimate 0.1.23-453dfda-m [2018-04-09 23:25:22,128 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-04-09 23:25:22,129 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-04-09 23:25:22,144 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-04-09 23:25:22,144 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-04-09 23:25:22,145 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-04-09 23:25:22,147 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-04-09 23:25:22,148 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-04-09 23:25:22,150 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-04-09 23:25:22,151 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-04-09 23:25:22,152 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-04-09 23:25:22,152 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-04-09 23:25:22,153 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-04-09 23:25:22,154 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-04-09 23:25:22,155 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-04-09 23:25:22,157 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-04-09 23:25:22,160 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-04-09 23:25:22,161 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-04-09 23:25:22,162 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-04-09 23:25:22,164 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-04-09 23:25:22,166 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-04-09 23:25:22,166 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-04-09 23:25:22,166 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-04-09 23:25:22,167 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-04-09 23:25:22,168 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-04-09 23:25:22,170 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-04-09 23:25:22,170 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-04-09 23:25:22,171 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-04-09 23:25:22,171 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-04-09 23:25:22,172 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-04-09 23:25:22,172 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-04-09 23:25:22,173 INFO L98 SettingsManager]: Beginning loading settings from /storage/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/ai/eq-bench/svcomp-DerefFreeMemtrack-32bit-Automizer_Fixed_noBitfields+AI_EQ_SS.epf [2018-04-09 23:25:22,196 INFO L110 SettingsManager]: Loading preferences was successful [2018-04-09 23:25:22,196 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-04-09 23:25:22,196 INFO L131 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2018-04-09 23:25:22,197 INFO L133 SettingsManager]: * ultimate.logging.details=de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation=DEBUG; [2018-04-09 23:25:22,197 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-04-09 23:25:22,197 INFO L133 SettingsManager]: * to procedures, called more than once=true [2018-04-09 23:25:22,198 INFO L131 SettingsManager]: Preferences of Abstract Interpretation differ from their defaults: [2018-04-09 23:25:22,198 INFO L133 SettingsManager]: * Abstract domain for RCFG-of-the-future=VPDomain [2018-04-09 23:25:22,198 INFO L133 SettingsManager]: * Parallel states before merging=1 [2018-04-09 23:25:22,198 INFO L133 SettingsManager]: * Use the RCFG-of-the-future interface=true [2018-04-09 23:25:22,199 INFO L131 SettingsManager]: Preferences of LTL2Aut differ from their defaults: [2018-04-09 23:25:22,199 INFO L133 SettingsManager]: * Property to check=[] a a: x > 42 [2018-04-09 23:25:22,199 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-04-09 23:25:22,199 INFO L133 SettingsManager]: * sizeof long=4 [2018-04-09 23:25:22,199 INFO L133 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2018-04-09 23:25:22,199 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-04-09 23:25:22,200 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-04-09 23:25:22,200 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-04-09 23:25:22,200 INFO L133 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2018-04-09 23:25:22,200 INFO L133 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2018-04-09 23:25:22,200 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-04-09 23:25:22,201 INFO L133 SettingsManager]: * sizeof long double=12 [2018-04-09 23:25:22,201 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-04-09 23:25:22,201 INFO L133 SettingsManager]: * Size of a code block=SingleStatement [2018-04-09 23:25:22,201 INFO L133 SettingsManager]: * Add additional assume for each assert=false [2018-04-09 23:25:22,201 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-04-09 23:25:22,202 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-04-09 23:25:22,202 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-04-09 23:25:22,202 INFO L133 SettingsManager]: * Interpolant automaton=TWOTRACK [2018-04-09 23:25:22,202 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-04-09 23:25:22,202 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-04-09 23:25:22,202 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-04-09 23:25:22,203 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-04-09 23:25:22,203 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-04-09 23:25:22,204 INFO L131 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2018-04-09 23:25:22,204 INFO L133 SettingsManager]: * TransformationType=HEAP_SEPARATOR [2018-04-09 23:25:22,204 INFO L131 SettingsManager]: Preferences of Boogie Printer differ from their defaults: [2018-04-09 23:25:22,204 INFO L133 SettingsManager]: * Dump path:=C:\Users\alex\AppData\Local\Temp\ [2018-04-09 23:25:22,239 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-04-09 23:25:22,251 INFO L266 ainManager$Toolchain]: [Toolchain 1]: Parser(s) successfully (re)initialized [2018-04-09 23:25:22,255 INFO L222 ainManager$Toolchain]: [Toolchain 1]: Toolchain data selected. [2018-04-09 23:25:22,256 INFO L271 PluginConnector]: Initializing CDTParser... [2018-04-09 23:25:22,256 INFO L276 PluginConnector]: CDTParser initialized [2018-04-09 23:25:22,257 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/array-memsafety/cstrncpy_unsafe_false-valid-deref.i [2018-04-09 23:25:22,588 INFO L225 CDTParser]: Created temporary CDT project at /storage/ultimate/releaseScripts/default/UAutomizer-linux/data/FLAG066b35a86 [2018-04-09 23:25:22,701 INFO L287 CDTParser]: IsIndexed: true [2018-04-09 23:25:22,702 INFO L288 CDTParser]: Found 1 translation units. [2018-04-09 23:25:22,702 INFO L168 CDTParser]: Scanning cstrncpy_unsafe_false-valid-deref.i [2018-04-09 23:25:22,703 INFO L210 ultiparseSymbolTable]: Include resolver: [2018-04-09 23:25:22,704 INFO L215 ultiparseSymbolTable]: [2018-04-09 23:25:22,704 INFO L218 ultiparseSymbolTable]: Function table: [2018-04-09 23:25:22,704 INFO L221 ultiparseSymbolTable]: Function definition of __U_MULTI_fcstrncpy_unsafe_false_valid_deref_i__ ('') in cstrncpy_unsafe_false-valid-deref.i [2018-04-09 23:25:22,704 INFO L221 ultiparseSymbolTable]: Function definition of null ('main') in cstrncpy_unsafe_false-valid-deref.i [2018-04-09 23:25:22,704 INFO L227 ultiparseSymbolTable]: Global variable table: [2018-04-09 23:25:22,704 INFO L233 ultiparseSymbolTable]: [2018-04-09 23:25:22,719 INFO L330 CDTParser]: Deleted temporary CDT project at /storage/ultimate/releaseScripts/default/UAutomizer-linux/data/FLAG066b35a86 [2018-04-09 23:25:22,724 INFO L304 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-04-09 23:25:22,726 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2018-04-09 23:25:22,727 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-04-09 23:25:22,727 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-04-09 23:25:22,734 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-04-09 23:25:22,735 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.04 11:25:22" (1/1) ... [2018-04-09 23:25:22,738 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6ef88135 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.04 11:25:22, skipping insertion in model container [2018-04-09 23:25:22,738 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.04 11:25:22" (1/1) ... [2018-04-09 23:25:22,753 INFO L167 Dispatcher]: Using SV-COMP mode [2018-04-09 23:25:22,763 INFO L167 Dispatcher]: Using SV-COMP mode [2018-04-09 23:25:22,898 INFO L175 PostProcessor]: Settings: Checked method=main [2018-04-09 23:25:22,925 INFO L175 PostProcessor]: Settings: Checked method=main [2018-04-09 23:25:22,930 INFO L100 SccComputation]: Graph consists of 0 InCaSumBalls and 9 non ball SCCs. Number of states in SCCs 9. [2018-04-09 23:25:22,939 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.04 11:25:22 WrapperNode [2018-04-09 23:25:22,940 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-04-09 23:25:22,940 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-04-09 23:25:22,941 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-04-09 23:25:22,941 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-04-09 23:25:22,950 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.04 11:25:22" (1/1) ... [2018-04-09 23:25:22,951 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.04 11:25:22" (1/1) ... [2018-04-09 23:25:22,958 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.04 11:25:22" (1/1) ... [2018-04-09 23:25:22,958 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.04 11:25:22" (1/1) ... [2018-04-09 23:25:22,961 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.04 11:25:22" (1/1) ... [2018-04-09 23:25:22,965 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.04 11:25:22" (1/1) ... [2018-04-09 23:25:22,966 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.04 11:25:22" (1/1) ... [2018-04-09 23:25:22,967 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-04-09 23:25:22,967 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-04-09 23:25:22,967 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-04-09 23:25:22,967 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-04-09 23:25:22,968 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.04 11:25:22" (1/1) ... No working directory specified, using /storage/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-04-09 23:25:23,028 INFO L136 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-04-09 23:25:23,029 INFO L136 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-04-09 23:25:23,029 INFO L136 BoogieDeclarations]: Found implementation of procedure cstrncpy [2018-04-09 23:25:23,029 INFO L136 BoogieDeclarations]: Found implementation of procedure main [2018-04-09 23:25:23,029 INFO L128 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2018-04-09 23:25:23,029 INFO L128 BoogieDeclarations]: Found specification of procedure cstrncpy [2018-04-09 23:25:23,029 INFO L128 BoogieDeclarations]: Found specification of procedure read~int [2018-04-09 23:25:23,030 INFO L128 BoogieDeclarations]: Found specification of procedure write~int [2018-04-09 23:25:23,030 INFO L128 BoogieDeclarations]: Found specification of procedure main [2018-04-09 23:25:23,030 INFO L128 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-04-09 23:25:23,030 INFO L128 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-04-09 23:25:23,030 INFO L128 BoogieDeclarations]: Found specification of procedure write~unchecked~int [2018-04-09 23:25:23,030 INFO L128 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-04-09 23:25:23,302 INFO L259 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-04-09 23:25:23,303 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.04 11:25:23 BoogieIcfgContainer [2018-04-09 23:25:23,303 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-04-09 23:25:23,303 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2018-04-09 23:25:23,303 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2018-04-09 23:25:23,305 INFO L276 PluginConnector]: IcfgTransformer initialized [2018-04-09 23:25:23,308 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.04 11:25:23" (1/1) ... [2018-04-09 23:25:23,318 INFO L139 apSepIcfgTransformer]: HeapSepIcfgTransformer: Starting heap partitioning [2018-04-09 23:25:23,319 INFO L140 apSepIcfgTransformer]: To be partitioned heap arrays found [#memory_int] [2018-04-09 23:25:23,336 INFO L299 apSepIcfgTransformer]: Heap separator: starting memloc-array-style preprocessing [2018-04-09 23:25:23,353 INFO L100 SccComputation]: Graph consists of 0 InCaSumBalls and 9 non ball SCCs. Number of states in SCCs 9. [2018-04-09 23:25:23,354 INFO L332 apSepIcfgTransformer]: finished MemlocArrayUpdater, created 4 location literals (each corresponds to one heap write) [2018-04-09 23:25:23,363 INFO L100 SccComputation]: Graph consists of 0 InCaSumBalls and 9 non ball SCCs. Number of states in SCCs 9. [2018-04-09 23:25:23,368 INFO L412 apSepIcfgTransformer]: finished preprocessing for the equality analysis [2018-04-09 23:25:23,368 DEBUG L416 apSepIcfgTransformer]: storeIndexInfoToLocLiteral: Map: (Store [1] at(SUMMARY for call write~int(#t~mem3, #t~post1.base, #t~post1.offset, 1); srcloc: L10''''') with |v_cstrncpy_#t~post1.offset_3|) : |mll_L10'''''_1| (Store [2] at(SUMMARY for call write~int(0, #t~post5.base, #t~post5.offset, 1); srcloc: L14'') with |v_cstrncpy_#t~post5.offset_3|) : |mll_L14''_3| (Store [3] at(SUMMARY for call write~int(0, #t~post5.base, #t~post5.offset, 1); srcloc: L14'') with |v_cstrncpy_#t~post5.base_3|) : |mll_L14''_2| (Store [0] at(SUMMARY for call write~int(#t~mem3, #t~post1.base, #t~post1.offset, 1); srcloc: L10''''') with |v_cstrncpy_#t~post1.base_3|) : |mll_L10'''''_0| [2018-04-09 23:25:23,371 DEBUG L418 apSepIcfgTransformer]: edgeToIndexToStoreIndexInfo: NestedMap2: (SUMMARY for call write~int(0, #t~post5.base, #t~post5.offset, 1); srcloc: L14'') : |v_cstrncpy_#t~post5.base_3| : (Store [3] at(SUMMARY for call write~int(0, #t~post5.base, #t~post5.offset, 1); srcloc: L14'') with |v_cstrncpy_#t~post5.base_3|) (SUMMARY for call write~int(0, #t~post5.base, #t~post5.offset, 1); srcloc: L14'') : |v_cstrncpy_#t~post5.offset_3| : (Store [2] at(SUMMARY for call write~int(0, #t~post5.base, #t~post5.offset, 1); srcloc: L14'') with |v_cstrncpy_#t~post5.offset_3|) (SUMMARY for call write~int(#t~mem3, #t~post1.base, #t~post1.offset, 1); srcloc: L10''''') : |v_cstrncpy_#t~post1.base_3| : (Store [0] at(SUMMARY for call write~int(#t~mem3, #t~post1.base, #t~post1.offset, 1); srcloc: L10''''') with |v_cstrncpy_#t~post1.base_3|) (SUMMARY for call write~int(#t~mem3, #t~post1.base, #t~post1.offset, 1); srcloc: L10''''') : |v_cstrncpy_#t~post1.offset_3| : (Store [1] at(SUMMARY for call write~int(#t~mem3, #t~post1.base, #t~post1.offset, 1); srcloc: L10''''') with |v_cstrncpy_#t~post1.offset_3|) [2018-04-09 23:25:23,421 INFO L101 FixpointEngine]: Starting fixpoint engine with domain VPDomain (maxUnwinding=3, maxParallelStates=1) [2018-04-09 23:25:52,726 INFO L314 AbstractInterpreter]: Visited 70 different actions 249 times. Merged at 46 different actions 153 times. Widened at 1 different actions 1 times. Found 13 fixpoints after 7 different actions. Largest state had 48 variables. [2018-04-09 23:25:52,728 INFO L424 apSepIcfgTransformer]: finished equality analysis [2018-04-09 23:25:52,734 INFO L195 HeapSepPreAnalysis]: Number of read from array group [#memory_int] : 3 [2018-04-09 23:25:52,735 INFO L434 apSepIcfgTransformer]: Finished pre analysis before partitioning [2018-04-09 23:25:52,735 INFO L435 apSepIcfgTransformer]: array groups: Set: [#memory_int] [2018-04-09 23:25:52,735 INFO L437 apSepIcfgTransformer]: select infos: Set: ((select |v_#memory_int_3| |v_cstrncpy_#t~post1.base_3|), at (SUMMARY for call write~int(#t~mem3, #t~post1.base, #t~post1.offset, 1); srcloc: L10''''')) ((select (select |v_#memory_int_1| |v_cstrncpy_#t~post2.base_3|) |v_cstrncpy_#t~post2.offset_3|), at (SUMMARY for call #t~mem3 := read~int(#t~post2.base, #t~post2.offset, 1); srcloc: L10'''')) ((select |v_#memory_int_5| |v_cstrncpy_#t~post5.base_3|), at (SUMMARY for call write~int(0, #t~post5.base, #t~post5.offset, 1); srcloc: L14'')) [2018-04-09 23:25:52,741 DEBUG L262 HeapPartitionManager]: merging partition blocks for array group[#memory_int] : [2018-04-09 23:25:52,742 DEBUG L264 HeapPartitionManager]: (Store [0] at(SUMMARY for call write~int(#t~mem3, #t~post1.base, #t~post1.offset, 1); srcloc: L10''''') with |v_cstrncpy_#t~post1.base_3|) [2018-04-09 23:25:52,742 DEBUG L265 HeapPartitionManager]: and [2018-04-09 23:25:52,742 DEBUG L266 HeapPartitionManager]: (Store [3] at(SUMMARY for call write~int(0, #t~post5.base, #t~post5.offset, 1); srcloc: L14'') with |v_cstrncpy_#t~post5.base_3|) [2018-04-09 23:25:52,742 DEBUG L267 HeapPartitionManager]: because of possible aliasing at dimension 0 [2018-04-09 23:25:52,742 DEBUG L268 HeapPartitionManager]: at array read ((select (select |v_#memory_int_1| |v_cstrncpy_#t~post2.base_3|) |v_cstrncpy_#t~post2.offset_3|), at (SUMMARY for call #t~mem3 := read~int(#t~post2.base, #t~post2.offset, 1); srcloc: L10'''')). [2018-04-09 23:25:52,742 DEBUG L262 HeapPartitionManager]: merging partition blocks for array group[#memory_int] : [2018-04-09 23:25:52,742 DEBUG L264 HeapPartitionManager]: (Store [2] at(SUMMARY for call write~int(0, #t~post5.base, #t~post5.offset, 1); srcloc: L14'') with |v_cstrncpy_#t~post5.offset_3|) [2018-04-09 23:25:52,742 DEBUG L265 HeapPartitionManager]: and [2018-04-09 23:25:52,743 DEBUG L266 HeapPartitionManager]: (Store [1] at(SUMMARY for call write~int(#t~mem3, #t~post1.base, #t~post1.offset, 1); srcloc: L10''''') with |v_cstrncpy_#t~post1.offset_3|) [2018-04-09 23:25:52,743 DEBUG L267 HeapPartitionManager]: because of possible aliasing at dimension 1 [2018-04-09 23:25:52,743 DEBUG L268 HeapPartitionManager]: at array read ((select (select |v_#memory_int_1| |v_cstrncpy_#t~post2.base_3|) |v_cstrncpy_#t~post2.offset_3|), at (SUMMARY for call #t~mem3 := read~int(#t~post2.base, #t~post2.offset, 1); srcloc: L10'''')). [2018-04-09 23:25:52,751 DEBUG L262 HeapPartitionManager]: merging partition blocks for array group[#memory_int] : [2018-04-09 23:25:52,751 DEBUG L264 HeapPartitionManager]: (Store [0] at(SUMMARY for call write~int(#t~mem3, #t~post1.base, #t~post1.offset, 1); srcloc: L10''''') with |v_cstrncpy_#t~post1.base_3|) [2018-04-09 23:25:52,751 DEBUG L265 HeapPartitionManager]: and [2018-04-09 23:25:52,751 DEBUG L266 HeapPartitionManager]: (Store [3] at(SUMMARY for call write~int(0, #t~post5.base, #t~post5.offset, 1); srcloc: L14'') with |v_cstrncpy_#t~post5.base_3|) [2018-04-09 23:25:52,751 DEBUG L267 HeapPartitionManager]: because of possible aliasing at dimension 0 [2018-04-09 23:25:52,752 DEBUG L268 HeapPartitionManager]: at array read ((select |v_#memory_int_5| |v_cstrncpy_#t~post5.base_3|), at (SUMMARY for call write~int(0, #t~post5.base, #t~post5.offset, 1); srcloc: L14'')). [2018-04-09 23:25:52,752 DEBUG L373 HeapPartitionManager]: creating LocationBlock locs_65 [2018-04-09 23:25:52,752 DEBUG L374 HeapPartitionManager]: with contents [(Store [3] at(SUMMARY for call write~int(0, #t~post5.base, #t~post5.offset, 1); srcloc: L14'') with |v_cstrncpy_#t~post5.base_3|), (Store [0] at(SUMMARY for call write~int(#t~mem3, #t~post1.base, #t~post1.offset, 1); srcloc: L10''''') with |v_cstrncpy_#t~post1.base_3|)] [2018-04-09 23:25:52,752 DEBUG L323 HeapPartitionManager]: adding LocationBlock locs_65 [2018-04-09 23:25:52,753 DEBUG L324 HeapPartitionManager]: at dimension 0 for ((select |v_#memory_int_3| |v_cstrncpy_#t~post1.base_3|), at (SUMMARY for call write~int(#t~mem3, #t~post1.base, #t~post1.offset, 1); srcloc: L10''''')) [2018-04-09 23:25:52,753 DEBUG L325 HeapPartitionManager]: write locations: [(Store [3] at(SUMMARY for call write~int(0, #t~post5.base, #t~post5.offset, 1); srcloc: L14'') with |v_cstrncpy_#t~post5.base_3|), (Store [0] at(SUMMARY for call write~int(#t~mem3, #t~post1.base, #t~post1.offset, 1); srcloc: L10''''') with |v_cstrncpy_#t~post1.base_3|)] [2018-04-09 23:25:52,753 DEBUG L323 HeapPartitionManager]: adding LocationBlock locs_65 [2018-04-09 23:25:52,753 DEBUG L324 HeapPartitionManager]: at dimension 0 for ((select (select |v_#memory_int_1| |v_cstrncpy_#t~post2.base_3|) |v_cstrncpy_#t~post2.offset_3|), at (SUMMARY for call #t~mem3 := read~int(#t~post2.base, #t~post2.offset, 1); srcloc: L10'''')) [2018-04-09 23:25:52,753 DEBUG L325 HeapPartitionManager]: write locations: [(Store [3] at(SUMMARY for call write~int(0, #t~post5.base, #t~post5.offset, 1); srcloc: L14'') with |v_cstrncpy_#t~post5.base_3|), (Store [0] at(SUMMARY for call write~int(#t~mem3, #t~post1.base, #t~post1.offset, 1); srcloc: L10''''') with |v_cstrncpy_#t~post1.base_3|)] [2018-04-09 23:25:52,753 DEBUG L373 HeapPartitionManager]: creating LocationBlock locs_65 [2018-04-09 23:25:52,754 DEBUG L374 HeapPartitionManager]: with contents [(Store [1] at(SUMMARY for call write~int(#t~mem3, #t~post1.base, #t~post1.offset, 1); srcloc: L10''''') with |v_cstrncpy_#t~post1.offset_3|), (Store [2] at(SUMMARY for call write~int(0, #t~post5.base, #t~post5.offset, 1); srcloc: L14'') with |v_cstrncpy_#t~post5.offset_3|)] [2018-04-09 23:25:52,754 DEBUG L323 HeapPartitionManager]: adding LocationBlock locs_65 [2018-04-09 23:25:52,754 DEBUG L324 HeapPartitionManager]: at dimension 1 for ((select (select |v_#memory_int_1| |v_cstrncpy_#t~post2.base_3|) |v_cstrncpy_#t~post2.offset_3|), at (SUMMARY for call #t~mem3 := read~int(#t~post2.base, #t~post2.offset, 1); srcloc: L10'''')) [2018-04-09 23:25:52,754 DEBUG L325 HeapPartitionManager]: write locations: [(Store [1] at(SUMMARY for call write~int(#t~mem3, #t~post1.base, #t~post1.offset, 1); srcloc: L10''''') with |v_cstrncpy_#t~post1.offset_3|), (Store [2] at(SUMMARY for call write~int(0, #t~post5.base, #t~post5.offset, 1); srcloc: L14'') with |v_cstrncpy_#t~post5.offset_3|)] [2018-04-09 23:25:52,754 DEBUG L323 HeapPartitionManager]: adding LocationBlock locs_65 [2018-04-09 23:25:52,754 DEBUG L324 HeapPartitionManager]: at dimension 0 for ((select |v_#memory_int_5| |v_cstrncpy_#t~post5.base_3|), at (SUMMARY for call write~int(0, #t~post5.base, #t~post5.offset, 1); srcloc: L14'')) [2018-04-09 23:25:52,755 DEBUG L325 HeapPartitionManager]: write locations: [(Store [3] at(SUMMARY for call write~int(0, #t~post5.base, #t~post5.offset, 1); srcloc: L14'') with |v_cstrncpy_#t~post5.base_3|), (Store [0] at(SUMMARY for call write~int(#t~mem3, #t~post1.base, #t~post1.offset, 1); srcloc: L10''''') with |v_cstrncpy_#t~post1.base_3|)] [2018-04-09 23:25:52,755 INFO L330 HeapPartitionManager]: partitioning result: [2018-04-09 23:25:52,755 INFO L335 HeapPartitionManager]: location blocks for array group [#memory_int] [2018-04-09 23:25:52,755 INFO L344 HeapPartitionManager]: at dimension 0 [2018-04-09 23:25:52,756 INFO L345 HeapPartitionManager]: # array writes (possibly including 1 dummy write/NoStoreIndexInfo) : 2 [2018-04-09 23:25:52,756 INFO L346 HeapPartitionManager]: # location blocks :1 [2018-04-09 23:25:52,756 DEBUG L353 HeapPartitionManager]: location block contents: [2018-04-09 23:25:52,756 DEBUG L356 HeapPartitionManager]: [(Store [3] at(SUMMARY for call write~int(0, #t~post5.base, #t~post5.offset, 1); srcloc: L14'') with |v_cstrncpy_#t~post5.base_3|), (Store [0] at(SUMMARY for call write~int(#t~mem3, #t~post1.base, #t~post1.offset, 1); srcloc: L10''''') with |v_cstrncpy_#t~post1.base_3|)] [2018-04-09 23:25:52,756 INFO L344 HeapPartitionManager]: at dimension 1 [2018-04-09 23:25:52,757 INFO L345 HeapPartitionManager]: # array writes (possibly including 1 dummy write/NoStoreIndexInfo) : 2 [2018-04-09 23:25:52,757 INFO L346 HeapPartitionManager]: # location blocks :1 [2018-04-09 23:25:52,757 DEBUG L353 HeapPartitionManager]: location block contents: [2018-04-09 23:25:52,757 DEBUG L356 HeapPartitionManager]: [(Store [1] at(SUMMARY for call write~int(#t~mem3, #t~post1.base, #t~post1.offset, 1); srcloc: L10''''') with |v_cstrncpy_#t~post1.offset_3|), (Store [2] at(SUMMARY for call write~int(0, #t~post5.base, #t~post5.offset, 1); srcloc: L14'') with |v_cstrncpy_#t~post5.offset_3|)] [2018-04-09 23:25:52,758 INFO L134 ransitionTransformer]: executing heap partitioning transformation [2018-04-09 23:25:52,763 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,763 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,763 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,763 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,764 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,764 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,764 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,764 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,765 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,765 DEBUG L331 ransitionTransformer]: Formula: (and (= |v_#NULL.offset_1| 0) (= |v_#NULL.base_1| 0)) InVars {} OutVars{#NULL.offset=|v_#NULL.offset_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] [2018-04-09 23:25:52,765 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,766 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,766 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,766 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,766 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,766 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,767 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,767 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,767 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-09 23:25:52,767 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-09 23:25:52,767 DEBUG L356 ransitionTransformer]: {main_~s1~0.offset=v_main_~s1~0.offset_2, main_~s1~0.base=v_main_~s1~0.base_2} [2018-04-09 23:25:52,768 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-09 23:25:52,768 DEBUG L358 ransitionTransformer]: {} [2018-04-09 23:25:52,768 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,768 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,769 DEBUG L331 ransitionTransformer]: Formula: (= |v_#valid_7| (store |v_#valid_8| 0 0)) InVars {#valid=|v_#valid_8|} OutVars{#valid=|v_#valid_7|} AuxVars[] AssignedVars[#valid] [2018-04-09 23:25:52,769 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,769 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,769 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,769 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,770 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-09 23:25:52,770 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-09 23:25:52,770 DEBUG L356 ransitionTransformer]: {main_~s2~0.base=v_main_~s2~0.base_2, main_~s2~0.offset=v_main_~s2~0.offset_2} [2018-04-09 23:25:52,770 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-09 23:25:52,770 DEBUG L358 ransitionTransformer]: {} [2018-04-09 23:25:52,770 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,771 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,771 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,771 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,771 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,772 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,772 DEBUG L331 ransitionTransformer]: Formula: (and (<= 0 (+ |v_main_#t~nondet6_3| 2147483648)) (<= |v_main_#t~nondet6_3| 2147483647)) InVars {main_#t~nondet6=|v_main_#t~nondet6_3|} OutVars{main_#t~nondet6=|v_main_#t~nondet6_3|} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,772 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,772 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,772 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,773 DEBUG L331 ransitionTransformer]: Formula: (= v_main_~n~0_1 |v_main_#t~nondet6_1|) InVars {main_#t~nondet6=|v_main_#t~nondet6_1|} OutVars{main_#t~nondet6=|v_main_#t~nondet6_1|, main_~n~0=v_main_~n~0_1} AuxVars[] AssignedVars[main_~n~0] [2018-04-09 23:25:52,773 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,773 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,773 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,773 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,774 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-09 23:25:52,774 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-09 23:25:52,774 DEBUG L356 ransitionTransformer]: {main_#t~nondet6=|v_main_#t~nondet6_2|} [2018-04-09 23:25:52,774 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-09 23:25:52,774 DEBUG L358 ransitionTransformer]: {} [2018-04-09 23:25:52,774 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,775 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,775 DEBUG L331 ransitionTransformer]: Formula: (and (= |v_cstrncpy_#in~s1.baseInParam_1| v_main_~s1~0.base_3) (= |v_cstrncpy_#in~nInParam_1| v_main_~n~0_3) (= |v_cstrncpy_#in~s1.offsetInParam_1| v_main_~s1~0.offset_3) (= |v_cstrncpy_#in~s2.baseInParam_1| v_main_~s2~0.base_3) (= |v_cstrncpy_#in~s2.offsetInParam_1| v_main_~s2~0.offset_3)) InVars {main_~s2~0.offset=v_main_~s2~0.offset_3, main_~n~0=v_main_~n~0_3, main_~s1~0.offset=v_main_~s1~0.offset_3, main_~s2~0.base=v_main_~s2~0.base_3, main_~s1~0.base=v_main_~s1~0.base_3} OutVars{cstrncpy_#in~s2.offset=|v_cstrncpy_#in~s2.offsetInParam_1|, cstrncpy_#in~n=|v_cstrncpy_#in~nInParam_1|, main_~s2~0.base=v_main_~s2~0.base_3, main_~s2~0.offset=v_main_~s2~0.offset_3, cstrncpy_#in~s1.offset=|v_cstrncpy_#in~s1.offsetInParam_1|, main_~n~0=v_main_~n~0_3, cstrncpy_#in~s1.base=|v_cstrncpy_#in~s1.baseInParam_1|, main_~s1~0.offset=v_main_~s1~0.offset_3, cstrncpy_#in~s2.base=|v_cstrncpy_#in~s2.baseInParam_1|, main_~s1~0.base=v_main_~s1~0.base_3} AuxVars[] AssignedVars[cstrncpy_#in~s2.offset, cstrncpy_#in~n, cstrncpy_#in~s1.offset, cstrncpy_#in~s1.base, cstrncpy_#in~s2.base] [2018-04-09 23:25:52,775 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-09 23:25:52,776 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-09 23:25:52,776 DEBUG L356 ransitionTransformer]: {cstrncpy_#in~s2.offset=|v_cstrncpy_#in~s2.offsetInParam_1|, cstrncpy_#in~n=|v_cstrncpy_#in~nInParam_1|, cstrncpy_#in~s1.offset=|v_cstrncpy_#in~s1.offsetInParam_1|, cstrncpy_#in~s1.base=|v_cstrncpy_#in~s1.baseInParam_1|, cstrncpy_#in~s2.base=|v_cstrncpy_#in~s2.baseInParam_1|} [2018-04-09 23:25:52,776 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-09 23:25:52,776 DEBUG L358 ransitionTransformer]: {cstrncpy_#in~s2.offset=|v_cstrncpy_#in~s2.offsetInParam_1|, cstrncpy_#in~n=|v_cstrncpy_#in~nInParam_1|, main_~s2~0.base=v_main_~s2~0.base_3, main_~s2~0.offset=v_main_~s2~0.offset_3, cstrncpy_#in~s1.offset=|v_cstrncpy_#in~s1.offsetInParam_1|, main_~n~0=v_main_~n~0_3, cstrncpy_#in~s1.base=|v_cstrncpy_#in~s1.baseInParam_1|, main_~s1~0.offset=v_main_~s1~0.offset_3, cstrncpy_#in~s2.base=|v_cstrncpy_#in~s2.baseInParam_1|, main_~s1~0.base=v_main_~s1~0.base_3} [2018-04-09 23:25:52,776 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,777 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,777 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,777 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-09 23:25:52,777 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-09 23:25:52,777 DEBUG L356 ransitionTransformer]: {main_#t~ret7.base=|v_main_#t~ret7.base_2|, main_#t~ret7.offset=|v_main_#t~ret7.offset_2|} [2018-04-09 23:25:52,777 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-09 23:25:52,778 DEBUG L358 ransitionTransformer]: {} [2018-04-09 23:25:52,778 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,778 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,778 DEBUG L331 ransitionTransformer]: Formula: (and (= v_cstrncpy_~s1.offset_1 |v_cstrncpy_#in~s1.offset_1|) (= v_cstrncpy_~s1.base_1 |v_cstrncpy_#in~s1.base_1|)) InVars {cstrncpy_#in~s1.base=|v_cstrncpy_#in~s1.base_1|, cstrncpy_#in~s1.offset=|v_cstrncpy_#in~s1.offset_1|} OutVars{cstrncpy_~s1.base=v_cstrncpy_~s1.base_1, cstrncpy_#in~s1.offset=|v_cstrncpy_#in~s1.offset_1|, cstrncpy_#in~s1.base=|v_cstrncpy_#in~s1.base_1|, cstrncpy_~s1.offset=v_cstrncpy_~s1.offset_1} AuxVars[] AssignedVars[cstrncpy_~s1.base, cstrncpy_~s1.offset] [2018-04-09 23:25:52,778 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,779 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,779 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,779 DEBUG L331 ransitionTransformer]: Formula: (= |v_main_#res_1| 0) InVars {} OutVars{main_#res=|v_main_#res_1|} AuxVars[] AssignedVars[main_#res] [2018-04-09 23:25:52,779 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,779 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,780 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,780 DEBUG L331 ransitionTransformer]: Formula: (and (= v_cstrncpy_~s2.offset_1 |v_cstrncpy_#in~s2.offset_1|) (= v_cstrncpy_~s2.base_1 |v_cstrncpy_#in~s2.base_1|)) InVars {cstrncpy_#in~s2.offset=|v_cstrncpy_#in~s2.offset_1|, cstrncpy_#in~s2.base=|v_cstrncpy_#in~s2.base_1|} OutVars{cstrncpy_#in~s2.offset=|v_cstrncpy_#in~s2.offset_1|, cstrncpy_~s2.base=v_cstrncpy_~s2.base_1, cstrncpy_~s2.offset=v_cstrncpy_~s2.offset_1, cstrncpy_#in~s2.base=|v_cstrncpy_#in~s2.base_1|} AuxVars[] AssignedVars[cstrncpy_~s2.offset, cstrncpy_~s2.base] [2018-04-09 23:25:52,780 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,780 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,780 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,781 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,781 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,781 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,781 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,781 DEBUG L331 ransitionTransformer]: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,781 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,782 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,782 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,782 DEBUG L331 ransitionTransformer]: Formula: (= v_cstrncpy_~n_1 |v_cstrncpy_#in~n_1|) InVars {cstrncpy_#in~n=|v_cstrncpy_#in~n_1|} OutVars{cstrncpy_#in~n=|v_cstrncpy_#in~n_1|, cstrncpy_~n=v_cstrncpy_~n_1} AuxVars[] AssignedVars[cstrncpy_~n] [2018-04-09 23:25:52,782 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,782 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,783 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,783 DEBUG L331 ransitionTransformer]: Formula: (and (= v_cstrncpy_~dst~0.offset_1 v_cstrncpy_~s1.offset_2) (= v_cstrncpy_~dst~0.base_1 v_cstrncpy_~s1.base_2)) InVars {cstrncpy_~s1.base=v_cstrncpy_~s1.base_2, cstrncpy_~s1.offset=v_cstrncpy_~s1.offset_2} OutVars{cstrncpy_~s1.base=v_cstrncpy_~s1.base_2, cstrncpy_~dst~0.base=v_cstrncpy_~dst~0.base_1, cstrncpy_~dst~0.offset=v_cstrncpy_~dst~0.offset_1, cstrncpy_~s1.offset=v_cstrncpy_~s1.offset_2} AuxVars[] AssignedVars[cstrncpy_~dst~0.offset, cstrncpy_~dst~0.base] [2018-04-09 23:25:52,783 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,783 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,783 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,784 DEBUG L331 ransitionTransformer]: Formula: (and (= v_cstrncpy_~src~0.base_1 v_cstrncpy_~s2.base_2) (= v_cstrncpy_~src~0.offset_1 v_cstrncpy_~s2.offset_2)) InVars {cstrncpy_~s2.offset=v_cstrncpy_~s2.offset_2, cstrncpy_~s2.base=v_cstrncpy_~s2.base_2} OutVars{cstrncpy_~src~0.base=v_cstrncpy_~src~0.base_1, cstrncpy_~s2.base=v_cstrncpy_~s2.base_2, cstrncpy_~src~0.offset=v_cstrncpy_~src~0.offset_1, cstrncpy_~s2.offset=v_cstrncpy_~s2.offset_2} AuxVars[] AssignedVars[cstrncpy_~src~0.offset, cstrncpy_~src~0.base] [2018-04-09 23:25:52,784 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,784 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,784 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,784 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,785 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-09 23:25:52,785 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-09 23:25:52,785 DEBUG L356 ransitionTransformer]: {cstrncpy_~us~0.offset=v_cstrncpy_~us~0.offset_1, cstrncpy_~us~0.base=v_cstrncpy_~us~0.base_1} [2018-04-09 23:25:52,785 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-09 23:25:52,785 DEBUG L358 ransitionTransformer]: {} [2018-04-09 23:25:52,785 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,786 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,786 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,786 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-09 23:25:52,786 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-09 23:25:52,786 DEBUG L356 ransitionTransformer]: {cstrncpy_~n2~0=v_cstrncpy_~n2~0_1} [2018-04-09 23:25:52,786 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-09 23:25:52,786 DEBUG L358 ransitionTransformer]: {} [2018-04-09 23:25:52,787 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,787 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,787 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,787 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,787 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,788 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,788 DEBUG L331 ransitionTransformer]: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,788 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,788 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,788 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,789 DEBUG L331 ransitionTransformer]: Formula: (not (< 0 v_cstrncpy_~n_2)) InVars {cstrncpy_~n=v_cstrncpy_~n_2} OutVars{cstrncpy_~n=v_cstrncpy_~n_2} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,789 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,789 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,789 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,789 DEBUG L331 ransitionTransformer]: Formula: (< 0 v_cstrncpy_~n_3) InVars {cstrncpy_~n=v_cstrncpy_~n_3} OutVars{cstrncpy_~n=v_cstrncpy_~n_3} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,789 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,790 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,790 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,790 DEBUG L331 ransitionTransformer]: Formula: (and (= |v_cstrncpy_#res.offset_1| v_cstrncpy_~s1.offset_3) (= |v_cstrncpy_#res.base_1| v_cstrncpy_~s1.base_3)) InVars {cstrncpy_~s1.base=v_cstrncpy_~s1.base_3, cstrncpy_~s1.offset=v_cstrncpy_~s1.offset_3} OutVars{cstrncpy_~s1.base=v_cstrncpy_~s1.base_3, cstrncpy_#res.offset=|v_cstrncpy_#res.offset_1|, cstrncpy_#res.base=|v_cstrncpy_#res.base_1|, cstrncpy_~s1.offset=v_cstrncpy_~s1.offset_3} AuxVars[] AssignedVars[cstrncpy_#res.offset, cstrncpy_#res.base] [2018-04-09 23:25:52,790 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,790 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,791 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,791 DEBUG L331 ransitionTransformer]: Formula: (= |v_cstrncpy_#t~post0_1| v_cstrncpy_~n_4) InVars {cstrncpy_~n=v_cstrncpy_~n_4} OutVars{cstrncpy_#t~post0=|v_cstrncpy_#t~post0_1|, cstrncpy_~n=v_cstrncpy_~n_4} AuxVars[] AssignedVars[cstrncpy_#t~post0] [2018-04-09 23:25:52,791 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,791 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,791 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,792 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,792 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,792 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,792 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,792 DEBUG L331 ransitionTransformer]: Formula: (= v_cstrncpy_~n_5 (+ |v_cstrncpy_#t~post0_2| (- 1))) InVars {cstrncpy_#t~post0=|v_cstrncpy_#t~post0_2|} OutVars{cstrncpy_#t~post0=|v_cstrncpy_#t~post0_2|, cstrncpy_~n=v_cstrncpy_~n_5} AuxVars[] AssignedVars[cstrncpy_~n] [2018-04-09 23:25:52,793 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,793 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,793 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,793 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,793 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-09 23:25:52,793 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-09 23:25:52,794 DEBUG L356 ransitionTransformer]: {cstrncpy_#t~post0=|v_cstrncpy_#t~post0_3|} [2018-04-09 23:25:52,794 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-09 23:25:52,794 DEBUG L358 ransitionTransformer]: {} [2018-04-09 23:25:52,794 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,794 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,795 DEBUG L331 ransitionTransformer]: Formula: (and (= |v_cstrncpy_#t~post1.base_1| v_cstrncpy_~dst~0.base_2) (= |v_cstrncpy_#t~post1.offset_1| v_cstrncpy_~dst~0.offset_2)) InVars {cstrncpy_~dst~0.base=v_cstrncpy_~dst~0.base_2, cstrncpy_~dst~0.offset=v_cstrncpy_~dst~0.offset_2} OutVars{cstrncpy_#t~post1.offset=|v_cstrncpy_#t~post1.offset_1|, cstrncpy_~dst~0.base=v_cstrncpy_~dst~0.base_2, cstrncpy_~dst~0.offset=v_cstrncpy_~dst~0.offset_2, cstrncpy_#t~post1.base=|v_cstrncpy_#t~post1.base_1|} AuxVars[] AssignedVars[cstrncpy_#t~post1.offset, cstrncpy_#t~post1.base] [2018-04-09 23:25:52,795 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,795 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,795 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,795 DEBUG L331 ransitionTransformer]: Formula: (and (= v_cstrncpy_~dst~0.base_3 |v_cstrncpy_#t~post1.base_2|) (= v_cstrncpy_~dst~0.offset_3 (+ |v_cstrncpy_#t~post1.offset_2| 1))) InVars {cstrncpy_#t~post1.offset=|v_cstrncpy_#t~post1.offset_2|, cstrncpy_#t~post1.base=|v_cstrncpy_#t~post1.base_2|} OutVars{cstrncpy_~dst~0.base=v_cstrncpy_~dst~0.base_3, cstrncpy_#t~post1.offset=|v_cstrncpy_#t~post1.offset_2|, cstrncpy_~dst~0.offset=v_cstrncpy_~dst~0.offset_3, cstrncpy_#t~post1.base=|v_cstrncpy_#t~post1.base_2|} AuxVars[] AssignedVars[cstrncpy_~dst~0.offset, cstrncpy_~dst~0.base] [2018-04-09 23:25:52,796 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,796 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,796 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,796 DEBUG L331 ransitionTransformer]: Formula: (and (= |v_cstrncpy_#t~post2.offset_1| v_cstrncpy_~src~0.offset_2) (= |v_cstrncpy_#t~post2.base_1| v_cstrncpy_~src~0.base_2)) InVars {cstrncpy_~src~0.offset=v_cstrncpy_~src~0.offset_2, cstrncpy_~src~0.base=v_cstrncpy_~src~0.base_2} OutVars{cstrncpy_~src~0.base=v_cstrncpy_~src~0.base_2, cstrncpy_#t~post2.offset=|v_cstrncpy_#t~post2.offset_1|, cstrncpy_~src~0.offset=v_cstrncpy_~src~0.offset_2, cstrncpy_#t~post2.base=|v_cstrncpy_#t~post2.base_1|} AuxVars[] AssignedVars[cstrncpy_#t~post2.offset, cstrncpy_#t~post2.base] [2018-04-09 23:25:52,796 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,797 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,797 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,797 DEBUG L331 ransitionTransformer]: Formula: (and (= v_cstrncpy_~src~0.base_3 |v_cstrncpy_#t~post2.base_2|) (= v_cstrncpy_~src~0.offset_3 (+ |v_cstrncpy_#t~post2.offset_2| 1))) InVars {cstrncpy_#t~post2.base=|v_cstrncpy_#t~post2.base_2|, cstrncpy_#t~post2.offset=|v_cstrncpy_#t~post2.offset_2|} OutVars{cstrncpy_~src~0.base=v_cstrncpy_~src~0.base_3, cstrncpy_#t~post2.offset=|v_cstrncpy_#t~post2.offset_2|, cstrncpy_~src~0.offset=v_cstrncpy_~src~0.offset_3, cstrncpy_#t~post2.base=|v_cstrncpy_#t~post2.base_2|} AuxVars[] AssignedVars[cstrncpy_~src~0.offset, cstrncpy_~src~0.base] [2018-04-09 23:25:52,797 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,797 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,800 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,801 DEBUG L331 ransitionTransformer]: Formula: (and (= (select |v_#valid_1| |v_cstrncpy_#t~post2.base_3|) 1) (= (select (select |v_#memory_int_part_locs_65_locs_65_1| |v_cstrncpy_#t~post2.base_3|) |v_cstrncpy_#t~post2.offset_3|) |v_cstrncpy_#t~mem3_1|) (<= (+ |v_cstrncpy_#t~post2.offset_3| 1) (select |v_#length_1| |v_cstrncpy_#t~post2.base_3|)) (<= 0 |v_cstrncpy_#t~post2.offset_3|)) InVars {#length=|v_#length_1|, #memory_int_part_locs_65_locs_65=|v_#memory_int_part_locs_65_locs_65_1|, cstrncpy_#t~post2.offset=|v_cstrncpy_#t~post2.offset_3|, cstrncpy_#t~post2.base=|v_cstrncpy_#t~post2.base_3|, #valid=|v_#valid_1|} OutVars{cstrncpy_#t~mem3=|v_cstrncpy_#t~mem3_1|, #valid=|v_#valid_1|, #length=|v_#length_1|, #memory_int_part_locs_65_locs_65=|v_#memory_int_part_locs_65_locs_65_1|, cstrncpy_#t~post2.offset=|v_cstrncpy_#t~post2.offset_3|, cstrncpy_#t~post2.base=|v_cstrncpy_#t~post2.base_3|} AuxVars[] AssignedVars[cstrncpy_#t~mem3] [2018-04-09 23:25:52,801 DEBUG L338 ransitionTransformer]: formula has changed [2018-04-09 23:25:52,801 DEBUG L339 ransitionTransformer]: old formula: [2018-04-09 23:25:52,801 DEBUG L340 ransitionTransformer]: (and (= (select |v_#valid_1| |v_cstrncpy_#t~post2.base_3|) 1) (= (select (select |v_#memory_int_1| |v_cstrncpy_#t~post2.base_3|) |v_cstrncpy_#t~post2.offset_3|) |v_cstrncpy_#t~mem3_1|) (<= (+ |v_cstrncpy_#t~post2.offset_3| 1) (select |v_#length_1| |v_cstrncpy_#t~post2.base_3|)) (<= 0 |v_cstrncpy_#t~post2.offset_3|)) [2018-04-09 23:25:52,801 DEBUG L341 ransitionTransformer]: new formula: [2018-04-09 23:25:52,801 DEBUG L342 ransitionTransformer]: (and (= (select |v_#valid_1| |v_cstrncpy_#t~post2.base_3|) 1) (= (select (select |v_#memory_int_part_locs_65_locs_65_1| |v_cstrncpy_#t~post2.base_3|) |v_cstrncpy_#t~post2.offset_3|) |v_cstrncpy_#t~mem3_1|) (<= (+ |v_cstrncpy_#t~post2.offset_3| 1) (select |v_#length_1| |v_cstrncpy_#t~post2.base_3|)) (<= 0 |v_cstrncpy_#t~post2.offset_3|)) [2018-04-09 23:25:52,802 DEBUG L346 ransitionTransformer]: invars have changed [2018-04-09 23:25:52,802 DEBUG L347 ransitionTransformer]: old invars: [2018-04-09 23:25:52,802 DEBUG L348 ransitionTransformer]: {#valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #length=|v_#length_1|, cstrncpy_#t~post2.offset=|v_cstrncpy_#t~post2.offset_3|, cstrncpy_#t~post2.base=|v_cstrncpy_#t~post2.base_3|} [2018-04-09 23:25:52,802 DEBUG L349 ransitionTransformer]: new invars: [2018-04-09 23:25:52,802 DEBUG L350 ransitionTransformer]: {#length=|v_#length_1|, #memory_int_part_locs_65_locs_65=|v_#memory_int_part_locs_65_locs_65_1|, cstrncpy_#t~post2.offset=|v_cstrncpy_#t~post2.offset_3|, cstrncpy_#t~post2.base=|v_cstrncpy_#t~post2.base_3|, #valid=|v_#valid_1|} [2018-04-09 23:25:52,803 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-09 23:25:52,803 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-09 23:25:52,803 DEBUG L356 ransitionTransformer]: {cstrncpy_#t~mem3=|v_cstrncpy_#t~mem3_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #length=|v_#length_1|, cstrncpy_#t~post2.offset=|v_cstrncpy_#t~post2.offset_3|, cstrncpy_#t~post2.base=|v_cstrncpy_#t~post2.base_3|} [2018-04-09 23:25:52,803 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-09 23:25:52,803 DEBUG L358 ransitionTransformer]: {cstrncpy_#t~mem3=|v_cstrncpy_#t~mem3_1|, #valid=|v_#valid_1|, #length=|v_#length_1|, #memory_int_part_locs_65_locs_65=|v_#memory_int_part_locs_65_locs_65_1|, cstrncpy_#t~post2.offset=|v_cstrncpy_#t~post2.offset_3|, cstrncpy_#t~post2.base=|v_cstrncpy_#t~post2.base_3|} [2018-04-09 23:25:52,803 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,804 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,804 DEBUG L331 ransitionTransformer]: Formula: (not (= (select |v_#valid_2| |v_cstrncpy_#t~post2.base_4|) 1)) InVars {cstrncpy_#t~post2.base=|v_cstrncpy_#t~post2.base_4|, #valid=|v_#valid_2|} OutVars{cstrncpy_#t~post2.base=|v_cstrncpy_#t~post2.base_4|, #valid=|v_#valid_2|} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,804 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,804 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,805 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,805 DEBUG L331 ransitionTransformer]: Formula: (or (not (<= 0 |v_cstrncpy_#t~post2.offset_4|)) (not (<= (+ |v_cstrncpy_#t~post2.offset_4| 1) (select |v_#length_2| |v_cstrncpy_#t~post2.base_5|)))) InVars {#length=|v_#length_2|, cstrncpy_#t~post2.offset=|v_cstrncpy_#t~post2.offset_4|, cstrncpy_#t~post2.base=|v_cstrncpy_#t~post2.base_5|} OutVars{#length=|v_#length_2|, cstrncpy_#t~post2.offset=|v_cstrncpy_#t~post2.offset_4|, cstrncpy_#t~post2.base=|v_cstrncpy_#t~post2.base_5|} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,805 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,805 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,807 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,807 DEBUG L331 ransitionTransformer]: Formula: (and (<= (+ |v_cstrncpy_#t~post1.offset_3| 1) (select |v_#length_3| |v_cstrncpy_#t~post1.base_3|)) (<= 0 |v_cstrncpy_#t~post1.offset_3|) (= 1 (select |v_#valid_3| |v_cstrncpy_#t~post1.base_3|)) (= |v_#memory_int_part_locs_65_locs_65_2| (store |v_#memory_int_part_locs_65_locs_65_3| |v_cstrncpy_#t~post1.base_3| (store (select |v_#memory_int_part_locs_65_locs_65_3| |v_cstrncpy_#t~post1.base_3|) |v_cstrncpy_#t~post1.offset_3| |v_cstrncpy_#t~mem3_2|)))) InVars {cstrncpy_#t~mem3=|v_cstrncpy_#t~mem3_2|, #valid=|v_#valid_3|, #length=|v_#length_3|, #memory_int_part_locs_65_locs_65=|v_#memory_int_part_locs_65_locs_65_3|, cstrncpy_#t~post1.offset=|v_cstrncpy_#t~post1.offset_3|, cstrncpy_#t~post1.base=|v_cstrncpy_#t~post1.base_3|} OutVars{cstrncpy_#t~mem3=|v_cstrncpy_#t~mem3_2|, #valid=|v_#valid_3|, #length=|v_#length_3|, #memory_int_part_locs_65_locs_65=|v_#memory_int_part_locs_65_locs_65_2|, cstrncpy_#t~post1.offset=|v_cstrncpy_#t~post1.offset_3|, cstrncpy_#t~post1.base=|v_cstrncpy_#t~post1.base_3|} AuxVars[] AssignedVars[#memory_int_part_locs_65_locs_65] [2018-04-09 23:25:52,807 DEBUG L338 ransitionTransformer]: formula has changed [2018-04-09 23:25:52,807 DEBUG L339 ransitionTransformer]: old formula: [2018-04-09 23:25:52,808 DEBUG L340 ransitionTransformer]: (and (<= (+ |v_cstrncpy_#t~post1.offset_3| 1) (select |v_#length_3| |v_cstrncpy_#t~post1.base_3|)) (<= 0 |v_cstrncpy_#t~post1.offset_3|) (= 1 (select |v_#valid_3| |v_cstrncpy_#t~post1.base_3|)) (= |v_#memory_int_2| (store |v_#memory_int_3| |v_cstrncpy_#t~post1.base_3| (store (select |v_#memory_int_3| |v_cstrncpy_#t~post1.base_3|) |v_cstrncpy_#t~post1.offset_3| |v_cstrncpy_#t~mem3_2|)))) [2018-04-09 23:25:52,808 DEBUG L341 ransitionTransformer]: new formula: [2018-04-09 23:25:52,808 DEBUG L342 ransitionTransformer]: (and (<= (+ |v_cstrncpy_#t~post1.offset_3| 1) (select |v_#length_3| |v_cstrncpy_#t~post1.base_3|)) (<= 0 |v_cstrncpy_#t~post1.offset_3|) (= 1 (select |v_#valid_3| |v_cstrncpy_#t~post1.base_3|)) (= |v_#memory_int_part_locs_65_locs_65_2| (store |v_#memory_int_part_locs_65_locs_65_3| |v_cstrncpy_#t~post1.base_3| (store (select |v_#memory_int_part_locs_65_locs_65_3| |v_cstrncpy_#t~post1.base_3|) |v_cstrncpy_#t~post1.offset_3| |v_cstrncpy_#t~mem3_2|)))) [2018-04-09 23:25:52,808 DEBUG L346 ransitionTransformer]: invars have changed [2018-04-09 23:25:52,808 DEBUG L347 ransitionTransformer]: old invars: [2018-04-09 23:25:52,808 DEBUG L348 ransitionTransformer]: {cstrncpy_#t~mem3=|v_cstrncpy_#t~mem3_2|, #valid=|v_#valid_3|, #memory_int=|v_#memory_int_3|, #length=|v_#length_3|, cstrncpy_#t~post1.offset=|v_cstrncpy_#t~post1.offset_3|, cstrncpy_#t~post1.base=|v_cstrncpy_#t~post1.base_3|} [2018-04-09 23:25:52,809 DEBUG L349 ransitionTransformer]: new invars: [2018-04-09 23:25:52,809 DEBUG L350 ransitionTransformer]: {cstrncpy_#t~mem3=|v_cstrncpy_#t~mem3_2|, #valid=|v_#valid_3|, #length=|v_#length_3|, #memory_int_part_locs_65_locs_65=|v_#memory_int_part_locs_65_locs_65_3|, cstrncpy_#t~post1.offset=|v_cstrncpy_#t~post1.offset_3|, cstrncpy_#t~post1.base=|v_cstrncpy_#t~post1.base_3|} [2018-04-09 23:25:52,809 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-09 23:25:52,809 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-09 23:25:52,809 DEBUG L356 ransitionTransformer]: {cstrncpy_#t~mem3=|v_cstrncpy_#t~mem3_2|, #valid=|v_#valid_3|, #memory_int=|v_#memory_int_2|, #length=|v_#length_3|, cstrncpy_#t~post1.offset=|v_cstrncpy_#t~post1.offset_3|, cstrncpy_#t~post1.base=|v_cstrncpy_#t~post1.base_3|} [2018-04-09 23:25:52,809 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-09 23:25:52,809 DEBUG L358 ransitionTransformer]: {cstrncpy_#t~mem3=|v_cstrncpy_#t~mem3_2|, #valid=|v_#valid_3|, #length=|v_#length_3|, #memory_int_part_locs_65_locs_65=|v_#memory_int_part_locs_65_locs_65_2|, cstrncpy_#t~post1.offset=|v_cstrncpy_#t~post1.offset_3|, cstrncpy_#t~post1.base=|v_cstrncpy_#t~post1.base_3|} [2018-04-09 23:25:52,810 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,810 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,810 DEBUG L331 ransitionTransformer]: Formula: (not (= (select |v_#valid_4| |v_cstrncpy_#t~post1.base_4|) 1)) InVars {cstrncpy_#t~post1.base=|v_cstrncpy_#t~post1.base_4|, #valid=|v_#valid_4|} OutVars{cstrncpy_#t~post1.base=|v_cstrncpy_#t~post1.base_4|, #valid=|v_#valid_4|} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,810 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,810 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,811 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,811 DEBUG L331 ransitionTransformer]: Formula: (or (not (<= (+ |v_cstrncpy_#t~post1.offset_4| 1) (select |v_#length_4| |v_cstrncpy_#t~post1.base_5|))) (not (<= 0 |v_cstrncpy_#t~post1.offset_4|))) InVars {#length=|v_#length_4|, cstrncpy_#t~post1.offset=|v_cstrncpy_#t~post1.offset_4|, cstrncpy_#t~post1.base=|v_cstrncpy_#t~post1.base_5|} OutVars{#length=|v_#length_4|, cstrncpy_#t~post1.offset=|v_cstrncpy_#t~post1.offset_4|, cstrncpy_#t~post1.base=|v_cstrncpy_#t~post1.base_5|} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,811 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,811 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,811 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,812 DEBUG L331 ransitionTransformer]: Formula: (= 0 |v_cstrncpy_#t~mem3_3|) InVars {cstrncpy_#t~mem3=|v_cstrncpy_#t~mem3_3|} OutVars{cstrncpy_#t~mem3=|v_cstrncpy_#t~mem3_3|} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,812 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,812 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,812 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,812 DEBUG L331 ransitionTransformer]: Formula: (not (= 0 |v_cstrncpy_#t~mem3_5|)) InVars {cstrncpy_#t~mem3=|v_cstrncpy_#t~mem3_5|} OutVars{cstrncpy_#t~mem3=|v_cstrncpy_#t~mem3_5|} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,812 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,813 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,813 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,813 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,813 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-09 23:25:52,813 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-09 23:25:52,813 DEBUG L356 ransitionTransformer]: {cstrncpy_#t~post1.offset=|v_cstrncpy_#t~post1.offset_5|, cstrncpy_#t~post1.base=|v_cstrncpy_#t~post1.base_6|} [2018-04-09 23:25:52,814 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-09 23:25:52,814 DEBUG L358 ransitionTransformer]: {} [2018-04-09 23:25:52,814 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,814 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,814 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,814 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-09 23:25:52,815 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-09 23:25:52,815 DEBUG L356 ransitionTransformer]: {cstrncpy_#t~post1.offset=|v_cstrncpy_#t~post1.offset_6|, cstrncpy_#t~post1.base=|v_cstrncpy_#t~post1.base_7|} [2018-04-09 23:25:52,815 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-09 23:25:52,815 DEBUG L358 ransitionTransformer]: {} [2018-04-09 23:25:52,815 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,815 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,816 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,816 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-09 23:25:52,816 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-09 23:25:52,816 DEBUG L356 ransitionTransformer]: {cstrncpy_#t~mem3=|v_cstrncpy_#t~mem3_4|} [2018-04-09 23:25:52,816 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-09 23:25:52,816 DEBUG L358 ransitionTransformer]: {} [2018-04-09 23:25:52,816 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,817 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,817 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,817 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-09 23:25:52,817 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-09 23:25:52,817 DEBUG L356 ransitionTransformer]: {cstrncpy_#t~mem3=|v_cstrncpy_#t~mem3_6|} [2018-04-09 23:25:52,817 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-09 23:25:52,818 DEBUG L358 ransitionTransformer]: {} [2018-04-09 23:25:52,818 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,818 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,818 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,818 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-09 23:25:52,818 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-09 23:25:52,819 DEBUG L356 ransitionTransformer]: {cstrncpy_#t~post2.offset=|v_cstrncpy_#t~post2.offset_5|, cstrncpy_#t~post2.base=|v_cstrncpy_#t~post2.base_6|} [2018-04-09 23:25:52,819 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-09 23:25:52,819 DEBUG L358 ransitionTransformer]: {} [2018-04-09 23:25:52,819 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,819 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,819 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,820 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-09 23:25:52,820 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-09 23:25:52,820 DEBUG L356 ransitionTransformer]: {cstrncpy_#t~post2.offset=|v_cstrncpy_#t~post2.offset_6|, cstrncpy_#t~post2.base=|v_cstrncpy_#t~post2.base_7|} [2018-04-09 23:25:52,820 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-09 23:25:52,820 DEBUG L358 ransitionTransformer]: {} [2018-04-09 23:25:52,820 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,821 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,821 DEBUG L331 ransitionTransformer]: Formula: (and (= v_cstrncpy_~us~0.offset_2 v_cstrncpy_~dst~0.offset_4) (= v_cstrncpy_~us~0.base_2 v_cstrncpy_~dst~0.base_4)) InVars {cstrncpy_~dst~0.base=v_cstrncpy_~dst~0.base_4, cstrncpy_~dst~0.offset=v_cstrncpy_~dst~0.offset_4} OutVars{cstrncpy_~us~0.offset=v_cstrncpy_~us~0.offset_2, cstrncpy_~us~0.base=v_cstrncpy_~us~0.base_2, cstrncpy_~dst~0.base=v_cstrncpy_~dst~0.base_4, cstrncpy_~dst~0.offset=v_cstrncpy_~dst~0.offset_4} AuxVars[] AssignedVars[cstrncpy_~us~0.offset, cstrncpy_~us~0.base] [2018-04-09 23:25:52,821 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,821 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,821 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,821 DEBUG L331 ransitionTransformer]: Formula: (= v_cstrncpy_~n2~0_2 v_cstrncpy_~n_6) InVars {cstrncpy_~n=v_cstrncpy_~n_6} OutVars{cstrncpy_~n2~0=v_cstrncpy_~n2~0_2, cstrncpy_~n=v_cstrncpy_~n_6} AuxVars[] AssignedVars[cstrncpy_~n2~0] [2018-04-09 23:25:52,822 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,822 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,822 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,822 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,822 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,822 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,823 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,823 DEBUG L331 ransitionTransformer]: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,823 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,823 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,823 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,824 DEBUG L331 ransitionTransformer]: Formula: (= |v_cstrncpy_#t~post4_1| v_cstrncpy_~n2~0_3) InVars {cstrncpy_~n2~0=v_cstrncpy_~n2~0_3} OutVars{cstrncpy_~n2~0=v_cstrncpy_~n2~0_3, cstrncpy_#t~post4=|v_cstrncpy_#t~post4_1|} AuxVars[] AssignedVars[cstrncpy_#t~post4] [2018-04-09 23:25:52,824 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,824 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,824 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,824 DEBUG L331 ransitionTransformer]: Formula: (= v_cstrncpy_~n2~0_4 (+ |v_cstrncpy_#t~post4_2| (- 1))) InVars {cstrncpy_#t~post4=|v_cstrncpy_#t~post4_2|} OutVars{cstrncpy_~n2~0=v_cstrncpy_~n2~0_4, cstrncpy_#t~post4=|v_cstrncpy_#t~post4_2|} AuxVars[] AssignedVars[cstrncpy_~n2~0] [2018-04-09 23:25:52,825 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,825 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,825 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,825 DEBUG L331 ransitionTransformer]: Formula: (= 0 |v_cstrncpy_#t~post4_3|) InVars {cstrncpy_#t~post4=|v_cstrncpy_#t~post4_3|} OutVars{cstrncpy_#t~post4=|v_cstrncpy_#t~post4_3|} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,825 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,825 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,826 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,826 DEBUG L331 ransitionTransformer]: Formula: (not (= 0 |v_cstrncpy_#t~post4_5|)) InVars {cstrncpy_#t~post4=|v_cstrncpy_#t~post4_5|} OutVars{cstrncpy_#t~post4=|v_cstrncpy_#t~post4_5|} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,826 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,827 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,827 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,827 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,827 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-09 23:25:52,827 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-09 23:25:52,827 DEBUG L356 ransitionTransformer]: {cstrncpy_#t~post4=|v_cstrncpy_#t~post4_4|} [2018-04-09 23:25:52,828 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-09 23:25:52,828 DEBUG L358 ransitionTransformer]: {} [2018-04-09 23:25:52,828 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,828 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,828 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,828 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-09 23:25:52,829 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-09 23:25:52,829 DEBUG L356 ransitionTransformer]: {cstrncpy_#t~post4=|v_cstrncpy_#t~post4_6|} [2018-04-09 23:25:52,829 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-09 23:25:52,829 DEBUG L358 ransitionTransformer]: {} [2018-04-09 23:25:52,829 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,829 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,830 DEBUG L331 ransitionTransformer]: Formula: (and (= |v_cstrncpy_#t~post5.offset_1| v_cstrncpy_~us~0.offset_3) (= |v_cstrncpy_#t~post5.base_1| v_cstrncpy_~us~0.base_3)) InVars {cstrncpy_~us~0.offset=v_cstrncpy_~us~0.offset_3, cstrncpy_~us~0.base=v_cstrncpy_~us~0.base_3} OutVars{cstrncpy_~us~0.offset=v_cstrncpy_~us~0.offset_3, cstrncpy_~us~0.base=v_cstrncpy_~us~0.base_3, cstrncpy_#t~post5.offset=|v_cstrncpy_#t~post5.offset_1|, cstrncpy_#t~post5.base=|v_cstrncpy_#t~post5.base_1|} AuxVars[] AssignedVars[cstrncpy_#t~post5.offset, cstrncpy_#t~post5.base] [2018-04-09 23:25:52,830 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,830 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,830 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,830 DEBUG L331 ransitionTransformer]: Formula: (and (= v_cstrncpy_~us~0.offset_4 (+ |v_cstrncpy_#t~post5.offset_2| 1)) (= v_cstrncpy_~us~0.base_4 |v_cstrncpy_#t~post5.base_2|)) InVars {cstrncpy_#t~post5.base=|v_cstrncpy_#t~post5.base_2|, cstrncpy_#t~post5.offset=|v_cstrncpy_#t~post5.offset_2|} OutVars{cstrncpy_~us~0.offset=v_cstrncpy_~us~0.offset_4, cstrncpy_~us~0.base=v_cstrncpy_~us~0.base_4, cstrncpy_#t~post5.offset=|v_cstrncpy_#t~post5.offset_2|, cstrncpy_#t~post5.base=|v_cstrncpy_#t~post5.base_2|} AuxVars[] AssignedVars[cstrncpy_~us~0.offset, cstrncpy_~us~0.base] [2018-04-09 23:25:52,830 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,831 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,831 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,831 DEBUG L331 ransitionTransformer]: Formula: (and (= (store |v_#memory_int_part_locs_65_locs_65_4| |v_cstrncpy_#t~post5.base_3| (store (select |v_#memory_int_part_locs_65_locs_65_4| |v_cstrncpy_#t~post5.base_3|) |v_cstrncpy_#t~post5.offset_3| 0)) |v_#memory_int_part_locs_65_locs_65_5|) (<= (+ |v_cstrncpy_#t~post5.offset_3| 1) (select |v_#length_5| |v_cstrncpy_#t~post5.base_3|)) (<= 0 |v_cstrncpy_#t~post5.offset_3|) (= (select |v_#valid_5| |v_cstrncpy_#t~post5.base_3|) 1)) InVars {cstrncpy_#t~post5.offset=|v_cstrncpy_#t~post5.offset_3|, #length=|v_#length_5|, #memory_int_part_locs_65_locs_65=|v_#memory_int_part_locs_65_locs_65_4|, cstrncpy_#t~post5.base=|v_cstrncpy_#t~post5.base_3|, #valid=|v_#valid_5|} OutVars{cstrncpy_#t~post5.offset=|v_cstrncpy_#t~post5.offset_3|, #length=|v_#length_5|, #memory_int_part_locs_65_locs_65=|v_#memory_int_part_locs_65_locs_65_5|, cstrncpy_#t~post5.base=|v_cstrncpy_#t~post5.base_3|, #valid=|v_#valid_5|} AuxVars[] AssignedVars[#memory_int_part_locs_65_locs_65] [2018-04-09 23:25:52,831 DEBUG L338 ransitionTransformer]: formula has changed [2018-04-09 23:25:52,832 DEBUG L339 ransitionTransformer]: old formula: [2018-04-09 23:25:52,832 DEBUG L340 ransitionTransformer]: (and (= (store |v_#memory_int_5| |v_cstrncpy_#t~post5.base_3| (store (select |v_#memory_int_5| |v_cstrncpy_#t~post5.base_3|) |v_cstrncpy_#t~post5.offset_3| 0)) |v_#memory_int_4|) (<= (+ |v_cstrncpy_#t~post5.offset_3| 1) (select |v_#length_5| |v_cstrncpy_#t~post5.base_3|)) (<= 0 |v_cstrncpy_#t~post5.offset_3|) (= (select |v_#valid_5| |v_cstrncpy_#t~post5.base_3|) 1)) [2018-04-09 23:25:52,832 DEBUG L341 ransitionTransformer]: new formula: [2018-04-09 23:25:52,832 DEBUG L342 ransitionTransformer]: (and (= (store |v_#memory_int_part_locs_65_locs_65_4| |v_cstrncpy_#t~post5.base_3| (store (select |v_#memory_int_part_locs_65_locs_65_4| |v_cstrncpy_#t~post5.base_3|) |v_cstrncpy_#t~post5.offset_3| 0)) |v_#memory_int_part_locs_65_locs_65_5|) (<= (+ |v_cstrncpy_#t~post5.offset_3| 1) (select |v_#length_5| |v_cstrncpy_#t~post5.base_3|)) (<= 0 |v_cstrncpy_#t~post5.offset_3|) (= (select |v_#valid_5| |v_cstrncpy_#t~post5.base_3|) 1)) [2018-04-09 23:25:52,832 DEBUG L346 ransitionTransformer]: invars have changed [2018-04-09 23:25:52,832 DEBUG L347 ransitionTransformer]: old invars: [2018-04-09 23:25:52,832 DEBUG L348 ransitionTransformer]: {#valid=|v_#valid_5|, #memory_int=|v_#memory_int_5|, cstrncpy_#t~post5.offset=|v_cstrncpy_#t~post5.offset_3|, #length=|v_#length_5|, cstrncpy_#t~post5.base=|v_cstrncpy_#t~post5.base_3|} [2018-04-09 23:25:52,832 DEBUG L349 ransitionTransformer]: new invars: [2018-04-09 23:25:52,832 DEBUG L350 ransitionTransformer]: {cstrncpy_#t~post5.offset=|v_cstrncpy_#t~post5.offset_3|, #length=|v_#length_5|, #memory_int_part_locs_65_locs_65=|v_#memory_int_part_locs_65_locs_65_4|, cstrncpy_#t~post5.base=|v_cstrncpy_#t~post5.base_3|, #valid=|v_#valid_5|} [2018-04-09 23:25:52,832 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-09 23:25:52,832 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-09 23:25:52,833 DEBUG L356 ransitionTransformer]: {#valid=|v_#valid_5|, #memory_int=|v_#memory_int_4|, cstrncpy_#t~post5.offset=|v_cstrncpy_#t~post5.offset_3|, #length=|v_#length_5|, cstrncpy_#t~post5.base=|v_cstrncpy_#t~post5.base_3|} [2018-04-09 23:25:52,833 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-09 23:25:52,833 DEBUG L358 ransitionTransformer]: {cstrncpy_#t~post5.offset=|v_cstrncpy_#t~post5.offset_3|, #length=|v_#length_5|, #memory_int_part_locs_65_locs_65=|v_#memory_int_part_locs_65_locs_65_5|, cstrncpy_#t~post5.base=|v_cstrncpy_#t~post5.base_3|, #valid=|v_#valid_5|} [2018-04-09 23:25:52,833 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,833 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,833 DEBUG L331 ransitionTransformer]: Formula: (not (= (select |v_#valid_6| |v_cstrncpy_#t~post5.base_4|) 1)) InVars {cstrncpy_#t~post5.base=|v_cstrncpy_#t~post5.base_4|, #valid=|v_#valid_6|} OutVars{cstrncpy_#t~post5.base=|v_cstrncpy_#t~post5.base_4|, #valid=|v_#valid_6|} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,833 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,833 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,833 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,834 DEBUG L331 ransitionTransformer]: Formula: (or (not (<= (+ |v_cstrncpy_#t~post5.offset_4| 1) (select |v_#length_6| |v_cstrncpy_#t~post5.base_5|))) (not (<= 0 |v_cstrncpy_#t~post5.offset_4|))) InVars {cstrncpy_#t~post5.offset=|v_cstrncpy_#t~post5.offset_4|, #length=|v_#length_6|, cstrncpy_#t~post5.base=|v_cstrncpy_#t~post5.base_5|} OutVars{cstrncpy_#t~post5.offset=|v_cstrncpy_#t~post5.offset_4|, #length=|v_#length_6|, cstrncpy_#t~post5.base=|v_cstrncpy_#t~post5.base_5|} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,834 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,834 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,834 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,834 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,834 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-09 23:25:52,834 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-09 23:25:52,834 DEBUG L356 ransitionTransformer]: {cstrncpy_#t~post5.offset=|v_cstrncpy_#t~post5.offset_5|, cstrncpy_#t~post5.base=|v_cstrncpy_#t~post5.base_6|} [2018-04-09 23:25:52,835 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-09 23:25:52,835 DEBUG L358 ransitionTransformer]: {} [2018-04-09 23:25:52,835 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,835 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,835 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-09 23:25:52,835 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-09 23:25:52,835 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,836 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,836 DEBUG L331 ransitionTransformer]: Formula: (= |v_ULTIMATE.start_#t~ret8_2| |v_main_#resOutParam_1|) InVars {main_#res=|v_main_#resOutParam_1|} OutVars{ULTIMATE.start_#t~ret8=|v_ULTIMATE.start_#t~ret8_2|, main_#res=|v_main_#resOutParam_1|} AuxVars[] AssignedVars[ULTIMATE.start_#t~ret8] [2018-04-09 23:25:52,836 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-09 23:25:52,836 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-09 23:25:52,836 DEBUG L356 ransitionTransformer]: {ULTIMATE.start_#t~ret8=|v_ULTIMATE.start_#t~ret8_2|} [2018-04-09 23:25:52,836 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-09 23:25:52,837 DEBUG L358 ransitionTransformer]: {ULTIMATE.start_#t~ret8=|v_ULTIMATE.start_#t~ret8_2|, main_#res=|v_main_#resOutParam_1|} [2018-04-09 23:25:52,837 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,837 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-09 23:25:52,837 DEBUG L331 ransitionTransformer]: Formula: (and (= |v_main_#t~ret7.offset_3| |v_cstrncpy_#res.offsetOutParam_1|) (= |v_main_#t~ret7.base_3| |v_cstrncpy_#res.baseOutParam_1|)) InVars {cstrncpy_#res.base=|v_cstrncpy_#res.baseOutParam_1|, cstrncpy_#res.offset=|v_cstrncpy_#res.offsetOutParam_1|} OutVars{main_#t~ret7.base=|v_main_#t~ret7.base_3|, cstrncpy_#res.offset=|v_cstrncpy_#res.offsetOutParam_1|, cstrncpy_#res.base=|v_cstrncpy_#res.baseOutParam_1|, main_#t~ret7.offset=|v_main_#t~ret7.offset_3|} AuxVars[] AssignedVars[main_#t~ret7.base, main_#t~ret7.offset] [2018-04-09 23:25:52,837 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-09 23:25:52,838 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-09 23:25:52,838 DEBUG L356 ransitionTransformer]: {main_#t~ret7.base=|v_main_#t~ret7.base_3|, main_#t~ret7.offset=|v_main_#t~ret7.offset_3|} [2018-04-09 23:25:52,838 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-09 23:25:52,838 DEBUG L358 ransitionTransformer]: {main_#t~ret7.base=|v_main_#t~ret7.base_3|, cstrncpy_#res.offset=|v_cstrncpy_#res.offsetOutParam_1|, cstrncpy_#res.base=|v_cstrncpy_#res.baseOutParam_1|, main_#t~ret7.offset=|v_main_#t~ret7.offset_3|} [2018-04-09 23:25:52,838 DEBUG L360 ransitionTransformer]: [2018-04-09 23:25:52,838 INFO L100 SccComputation]: Graph consists of 0 InCaSumBalls and 9 non ball SCCs. Number of states in SCCs 9. [2018-04-09 23:25:52,840 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 09.04 11:25:52 BasicIcfg [2018-04-09 23:25:52,840 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2018-04-09 23:25:52,841 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-04-09 23:25:52,841 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-04-09 23:25:52,844 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-04-09 23:25:52,845 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.04 11:25:22" (1/4) ... [2018-04-09 23:25:52,845 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@72b77b63 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.04 11:25:52, skipping insertion in model container [2018-04-09 23:25:52,845 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.04 11:25:22" (2/4) ... [2018-04-09 23:25:52,846 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@72b77b63 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.04 11:25:52, skipping insertion in model container [2018-04-09 23:25:52,846 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.04 11:25:23" (3/4) ... [2018-04-09 23:25:52,846 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@72b77b63 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 09.04 11:25:52, skipping insertion in model container [2018-04-09 23:25:52,846 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 09.04 11:25:52" (4/4) ... [2018-04-09 23:25:52,848 INFO L107 eAbstractionObserver]: Analyzing ICFG memPartitionedIcfg [2018-04-09 23:25:52,857 INFO L131 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-04-09 23:25:52,864 INFO L143 ceAbstractionStarter]: Appying trace abstraction to program that has 7 error locations. [2018-04-09 23:25:52,894 INFO L128 ementStrategyFactory]: Using default assertion order modulation [2018-04-09 23:25:52,895 INFO L369 AbstractCegarLoop]: Interprodecural is true [2018-04-09 23:25:52,895 INFO L370 AbstractCegarLoop]: Hoare is true [2018-04-09 23:25:52,895 INFO L371 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-04-09 23:25:52,895 INFO L372 AbstractCegarLoop]: Backedges is TWOTRACK [2018-04-09 23:25:52,895 INFO L373 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-04-09 23:25:52,895 INFO L374 AbstractCegarLoop]: Difference is false [2018-04-09 23:25:52,895 INFO L375 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-04-09 23:25:52,896 INFO L380 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-04-09 23:25:52,896 INFO L87 2NestedWordAutomaton]: Mode: main mode - execution starts in main procedure [2018-04-09 23:25:52,905 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states. [2018-04-09 23:25:52,909 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2018-04-09 23:25:52,909 INFO L347 BasicCegarLoop]: Found error trace [2018-04-09 23:25:52,910 INFO L355 BasicCegarLoop]: trace histogram [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] [2018-04-09 23:25:52,910 INFO L408 AbstractCegarLoop]: === Iteration 1 === [cstrncpyErr3RequiresViolation, cstrncpyErr5RequiresViolation, cstrncpyErr4RequiresViolation, cstrncpyErr2RequiresViolation, cstrncpyErr0RequiresViolation, cstrncpyErr1RequiresViolation, mainErr0EnsuresViolationMEMORY_LEAK]=== [2018-04-09 23:25:52,913 INFO L82 PathProgramCache]: Analyzing trace with hash -901774949, now seen corresponding path program 1 times No working directory specified, using /storage/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 2 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-04-09 23:25:52,924 INFO L68 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2018-04-09 23:25:52,955 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-04-09 23:25:52,963 INFO L270 TraceCheckSpWp]: Computing forward predicates... [2018-04-09 23:25:52,977 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-04-09 23:25:52,977 INFO L314 TraceCheckSpWp]: Computing backward predicates... [2018-04-09 23:25:52,996 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-04-09 23:25:53,021 INFO L320 seRefinementStrategy]: Constructing automaton from 2 perfect and 0 imperfect interpolant sequences. [2018-04-09 23:25:53,021 INFO L335 seRefinementStrategy]: Number of different interpolants: perfect sequences [2, 2] imperfect sequences [] total 2 [2018-04-09 23:25:53,023 INFO L442 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-04-09 23:25:53,030 INFO L132 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-04-09 23:25:53,030 INFO L133 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-04-09 23:25:53,032 INFO L87 Difference]: Start difference. First operand 65 states. Second operand 2 states. [2018-04-09 23:25:53,049 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-04-09 23:25:53,049 INFO L93 Difference]: Finished difference Result 74 states and 78 transitions. [2018-04-09 23:25:53,049 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-04-09 23:25:53,051 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 26 [2018-04-09 23:25:53,051 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-04-09 23:25:53,059 INFO L225 Difference]: With dead ends: 74 [2018-04-09 23:25:53,059 INFO L226 Difference]: Without dead ends: 54 [2018-04-09 23:25:53,062 INFO L567 BasicCegarLoop]: 0 DeclaredPredicates, 51 GetRequests, 51 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-04-09 23:25:53,075 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2018-04-09 23:25:53,088 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 54. [2018-04-09 23:25:53,090 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 54 states. [2018-04-09 23:25:53,091 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 55 transitions. [2018-04-09 23:25:53,093 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 55 transitions. Word has length 26 [2018-04-09 23:25:53,093 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-04-09 23:25:53,093 INFO L459 AbstractCegarLoop]: Abstraction has 54 states and 55 transitions. [2018-04-09 23:25:53,093 INFO L460 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-04-09 23:25:53,093 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 55 transitions. [2018-04-09 23:25:53,094 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2018-04-09 23:25:53,094 INFO L347 BasicCegarLoop]: Found error trace [2018-04-09 23:25:53,094 INFO L355 BasicCegarLoop]: trace histogram [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] [2018-04-09 23:25:53,094 INFO L408 AbstractCegarLoop]: === Iteration 2 === [cstrncpyErr3RequiresViolation, cstrncpyErr5RequiresViolation, cstrncpyErr4RequiresViolation, cstrncpyErr2RequiresViolation, cstrncpyErr0RequiresViolation, cstrncpyErr1RequiresViolation, mainErr0EnsuresViolationMEMORY_LEAK]=== [2018-04-09 23:25:53,094 INFO L82 PathProgramCache]: Analyzing trace with hash 1699912670, now seen corresponding path program 1 times No working directory specified, using /storage/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 3 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-04-09 23:25:53,102 INFO L68 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2018-04-09 23:25:53,123 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-04-09 23:25:53,141 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-04-09 23:25:53,195 INFO L421 BasicCegarLoop]: Counterexample might be feasible [2018-04-09 23:25:53,231 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 09.04 11:25:53 BasicIcfg [2018-04-09 23:25:53,231 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2018-04-09 23:25:53,232 INFO L168 Benchmark]: Toolchain (without parser) took 30507.90 ms. Allocated memory was 302.5 MB in the beginning and 1.1 GB in the end (delta: 758.1 MB). Free memory was 244.2 MB in the beginning and 644.6 MB in the end (delta: -400.4 MB). Peak memory consumption was 357.7 MB. Max. memory is 5.3 GB. [2018-04-09 23:25:53,232 INFO L168 Benchmark]: CDTParser took 0.12 ms. Allocated memory is still 302.5 MB. Free memory is still 264.9 MB. There was no memory consumed. Max. memory is 5.3 GB. [2018-04-09 23:25:53,232 INFO L168 Benchmark]: CACSL2BoogieTranslator took 212.92 ms. Allocated memory is still 302.5 MB. Free memory was 244.2 MB in the beginning and 234.9 MB in the end (delta: 9.2 MB). Peak memory consumption was 9.2 MB. Max. memory is 5.3 GB. [2018-04-09 23:25:53,233 INFO L168 Benchmark]: Boogie Preprocessor took 26.55 ms. Allocated memory is still 302.5 MB. Free memory was 233.9 MB in the beginning and 232.9 MB in the end (delta: 996.3 kB). Peak memory consumption was 996.3 kB. Max. memory is 5.3 GB. [2018-04-09 23:25:53,233 INFO L168 Benchmark]: RCFGBuilder took 335.72 ms. Allocated memory was 302.5 MB in the beginning and 462.9 MB in the end (delta: 160.4 MB). Free memory was 232.9 MB in the beginning and 428.5 MB in the end (delta: -195.5 MB). Peak memory consumption was 24.2 MB. Max. memory is 5.3 GB. [2018-04-09 23:25:53,233 INFO L168 Benchmark]: IcfgTransformer took 29536.79 ms. Allocated memory was 462.9 MB in the beginning and 1.1 GB in the end (delta: 597.7 MB). Free memory was 428.5 MB in the beginning and 820.8 MB in the end (delta: -392.3 MB). Peak memory consumption was 205.4 MB. Max. memory is 5.3 GB. [2018-04-09 23:25:53,234 INFO L168 Benchmark]: TraceAbstraction took 390.33 ms. Allocated memory is still 1.1 GB. Free memory was 820.8 MB in the beginning and 644.6 MB in the end (delta: 176.2 MB). Peak memory consumption was 176.2 MB. Max. memory is 5.3 GB. [2018-04-09 23:25:53,236 INFO L344 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.12 ms. Allocated memory is still 302.5 MB. Free memory is still 264.9 MB. There was no memory consumed. Max. memory is 5.3 GB. * CACSL2BoogieTranslator took 212.92 ms. Allocated memory is still 302.5 MB. Free memory was 244.2 MB in the beginning and 234.9 MB in the end (delta: 9.2 MB). Peak memory consumption was 9.2 MB. Max. memory is 5.3 GB. * Boogie Preprocessor took 26.55 ms. Allocated memory is still 302.5 MB. Free memory was 233.9 MB in the beginning and 232.9 MB in the end (delta: 996.3 kB). Peak memory consumption was 996.3 kB. Max. memory is 5.3 GB. * RCFGBuilder took 335.72 ms. Allocated memory was 302.5 MB in the beginning and 462.9 MB in the end (delta: 160.4 MB). Free memory was 232.9 MB in the beginning and 428.5 MB in the end (delta: -195.5 MB). Peak memory consumption was 24.2 MB. Max. memory is 5.3 GB. * IcfgTransformer took 29536.79 ms. Allocated memory was 462.9 MB in the beginning and 1.1 GB in the end (delta: 597.7 MB). Free memory was 428.5 MB in the beginning and 820.8 MB in the end (delta: -392.3 MB). Peak memory consumption was 205.4 MB. Max. memory is 5.3 GB. * TraceAbstraction took 390.33 ms. Allocated memory is still 1.1 GB. Free memory was 820.8 MB in the beginning and 644.6 MB in the end (delta: 176.2 MB). Peak memory consumption was 176.2 MB. Max. memory is 5.3 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.analysis.abstractinterpretationv2: - StatisticsResult: ArrayEqualityDomainStatistics #Locations : 63 LocStat_MAX_WEQGRAPH_SIZE : 2 LocStat_MAX_SIZEOF_WEQEDGELABEL : 2 LocStat_NO_SUPPORTING_EQUALITIES : 903 LocStat_NO_SUPPORTING_DISEQUALITIES : 210 LocStat_NO_DISJUNCTIONS : -126 LocStat_MAX_NO_DISJUNCTIONS : -1 #Transitions : 76 TransStat_MAX_WEQGRAPH_SIZE : 4 TransStat_MAX_SIZEOF_WEQEDGELABEL : 1 TransStat_NO_SUPPORTING_EQUALITIES : 82 TransStat_NO_SUPPORTING_DISEQUALITIES : 5 TransStat_NO_DISJUNCTIONS : 76 TransStat_MAX_NO_DISJUNCTIONS : 2 - StatisticsResult: EqConstraintFactoryStatistics CONJOIN_DISJUNCTIVE(MILLISECONDS) : 6349.58 RENAME_VARIABLES(MILLISECONDS) : 276.79 UNFREEZE(MILLISECONDS) : 0.00 CONJOIN(MILLISECONDS) : 6337.03 PROJECTAWAY(MILLISECONDS) : 11601.16 ADD_WEAK_EQUALITY(MILLISECONDS) : 7.02 DISJOIN(MILLISECONDS) : 373.74 RENAME_VARIABLES_DISJUNCTIVE(MILLISECONDS) : 291.15 ADD_EQUALITY(MILLISECONDS) : 10.99 DISJOIN_DISJUNCTIVE(MILLISECONDS) : 0.00 ADD_DISEQUALITY(MILLISECONDS) : 0.24 #CONJOIN_DISJUNCTIVE : 275 #RENAME_VARIABLES : 546 #UNFREEZE : 0 #CONJOIN : 358 #PROJECTAWAY : 377 #ADD_WEAK_EQUALITY : 9 #DISJOIN : 104 #RENAME_VARIABLES_DISJUNCTIVE : 546 #ADD_EQUALITY : 84 #DISJOIN_DISJUNCTIVE : 0 #ADD_DISEQUALITY : 5 - StatisticsResult: WeqCcManagerStatistics FREEZE(MILLISECONDS) : 17268.91 ADDNODE(MILLISECONDS) : 0.00 MEET(MILLISECONDS) : 6328.51 FILTERREDUNDANT(MILLISECONDS) : 0.00 REPORTWEQ(MILLISECONDS) : 6.85 JOIN(MILLISECONDS) : 366.43 RENAMEVARS(MILLISECONDS) : 270.02 FLATTENLABELS(MILLISECONDS) : 0.00 COPY(MILLISECONDS) : 0.00 ISSTRONGERTHAN(MILLISECONDS) : 9655.74 ISLABELSTRONGERTHAN(MILLISECONDS) : 1682.63 ISWEQGRAPHSTRONGERTHAN(MILLISECONDS) : 160.16 UNFREEZE(MILLISECONDS) : 103.35 REPORTCONTAINS(MILLISECONDS) : 0.80 PROJECTAWAY(MILLISECONDS) : 11480.25 MEETEDGELABELS(MILLISECONDS) : 1612.16 REPORTEQUALITY(MILLISECONDS) : 212.31 ADDALLNODES(MILLISECONDS) : 123.90 REPORTDISEQUALITY(MILLISECONDS) : 3.88 WEQGRAPHJOIN(MILLISECONDS) : 273.83 #FREEZE : 2664 #ADDNODE : 0 #MEET : 249 #FILTERREDUNDANT : 0 #REPORTWEQ : 9 #JOIN : 104 #RENAMEVARS : 546 #FLATTENLABELS : 0 #COPY : 0 #ISSTRONGERTHAN : 601 #ISLABELSTRONGERTHAN : 106956 #ISWEQGRAPHSTRONGERTHAN : 329 #UNFREEZE : 1859 #REPORTCONTAINS : 45 #PROJECTAWAY : 1064 #MEETEDGELABELS : 1660 #REPORTEQUALITY : 3512 #ADDALLNODES : 249 #REPORTDISEQUALITY : 835 #WEQGRAPHJOIN : 104 - StatisticsResult: CcManagerStatistics ADDNODE(MILLISECONDS) : 0.00 MEET(MILLISECONDS) : 5363.89 REPORT_EQUALITY(MILLISECONDS) : 1869.87 FILTERREDUNDANT(MILLISECONDS) : 14488.74 ADD_ALL_ELEMENTS(MILLISECONDS) : 3970.43 JOIN(MILLISECONDS) : 68.05 ALIGN_ELEMENTS(MILLISECONDS) : 8667.41 COPY(MILLISECONDS) : 0.00 REPORT_DISEQUALITY(MILLISECONDS) : 346.81 UNFREEZE(MILLISECONDS) : 0.00 OVERALL(MILLISECONDS) : 16658.19 REPORTCONTAINS(MILLISECONDS) : 28.49 IS_STRONGER_THAN_NO_CACHING(MILLISECONDS) : 11196.96 REMOVE(MILLISECONDS) : 0.00 IS_STRONGER_THAN_W_CACHING(MILLISECONDS) : 0.00 PROJECT_TO_ELEMENTS(MILLISECONDS) : 1403.82 #ADDNODE : 0 #MEET : 16443 #REPORT_EQUALITY : 251554 #FILTERREDUNDANT : 225171 #ADD_ALL_ELEMENTS : 235887 #JOIN : 104 #ALIGN_ELEMENTS : 108913 #COPY : 0 #REPORT_DISEQUALITY : 75669 #UNFREEZE : 0 #OVERALL : 1262101 #REPORTCONTAINS : 3621 #IS_STRONGER_THAN_NO_CACHING : 329782 #REMOVE : 0 #IS_STRONGER_THAN_W_CACHING : 0 #PROJECT_TO_ELEMENTS : 14957 * Results from de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation: - StatisticsResult: HeapSeparatorStatistics #COUNT_NEW_ARRAY_VARS_[#memory_int] : 1 COUNT_ARRAY_WRITES_for_[#memory_int]_at_dim_0 : 2 COUNT_BLOCKS_for_[#memory_int]_at_dim_0 : 1 COUNT_ARRAY_WRITES_for_[#memory_int]_at_dim_1 : 2 COUNT_BLOCKS_for_[#memory_int]_at_dim_1 : 1 COUNT_ARRAY_READS for [#memory_int] : 3 * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - CounterExampleResult [Line: 10]: pointer dereference may fail pointer dereference may fail We found a FailurePath: [L21] char *s1; [L22] char *s2; [L23] int n = __VERIFIER_nondet_int(); VAL [__VERIFIER_nondet_int()=1, n=1] [L24] CALL cstrncpy(s1, s2, n) VAL [\old(n)=1, n=1, s1={7:0}, s1={7:0}, s2={0:-1}, s2={0:-1}] [L4] char *dst = s1; VAL [\old(n)=1, dst={7:0}, n=1, n=1, s1={7:0}, s1={7:0}, s1={7:0}, s2={0:-1}, s2={0:-1}, s2={0:-1}] [L5] const char *src = s2; VAL [\old(n)=1, dst={7:0}, n=1, n=1, s1={7:0}, s1={7:0}, s1={7:0}, s2={0:-1}, s2={0:-1}, s2={0:-1}, src={0:-1}] [L6] char *us; VAL [\old(n)=1, dst={7:0}, n=1, n=1, s1={7:0}, s1={7:0}, s1={7:0}, s2={0:-1}, s2={0:-1}, s2={0:-1}, src={0:-1}] [L7] int n2; VAL [\old(n)=1, dst={7:0}, n=1, n=1, s1={7:0}, s1={7:0}, s1={7:0}, s2={0:-1}, s2={0:-1}, s2={0:-1}, src={0:-1}] [L8] COND TRUE n > 0 VAL [\old(n)=1, dst={7:0}, n=1, n=1, s1={7:0}, s1={7:0}, s1={7:0}, s2={0:-1}, s2={0:-1}, s2={0:-1}, src={0:-1}] [L9] n-- VAL [\old(n)=1, dst={7:0}, n=1, n=1, n--=1, s1={7:0}, s1={7:0}, s1={7:0}, s2={0:-1}, s2={0:-1}, s2={0:-1}, src={0:-1}] [L9] n-- VAL [\old(n)=1, dst={7:0}, n=1, n=0, n--=1, s1={7:0}, s1={7:0}, s1={7:0}, s2={0:-1}, s2={0:-1}, s2={0:-1}, src={0:-1}] [L10] dst++ VAL [\old(n)=1, dst={7:0}, dst++={7:0}, n=1, n=0, n--=1, s1={7:0}, s1={7:0}, s1={7:0}, s2={0:-1}, s2={0:-1}, s2={0:-1}, src={0:-1}] [L10] dst++ VAL [\old(n)=1, dst={7:1}, dst++={7:0}, n=0, n=1, n--=1, s1={7:0}, s1={7:0}, s1={7:0}, s2={0:-1}, s2={0:-1}, s2={0:-1}, src={0:-1}] [L10] src++ VAL [\old(n)=1, dst={7:1}, dst++={7:0}, n=1, n=0, n--=1, s1={7:0}, s1={7:0}, s1={7:0}, s2={0:-1}, s2={0:-1}, s2={0:-1}, src={0:-1}, src++={0:-1}] [L10] src++ VAL [\old(n)=1, dst={7:1}, dst++={7:0}, n=1, n=0, n--=1, s1={7:0}, s1={7:0}, s1={7:0}, s2={0:-1}, s2={0:-1}, s2={0:-1}, src={0:0}, src++={0:-1}] [L10] FCALL src++ - StatisticsResult: Ultimate Automizer benchmark data CFG has 4 procedures, 65 locations, 7 error locations. UNSAFE Result, 0.3s OverallTime, 2 OverallIterations, 1 TraceHistogramMax, 0.0s AutomataDifference, 0.0s DeadEndRemovalTime, 0.0s HoareAnnotationTime, HoareTripleCheckerStatistics: 66 SDtfs, 0 SDslu, 0 SDs, 0 SdLazy, 0 SolverSat, 0 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 0.0s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 51 GetRequests, 51 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=65occurred in iteration=0, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s AbstIntTime, 0 AbstIntIterations, 0 AbstIntStrong, NaN AbsIntWeakeningRatio, NaN AbsIntAvgWeakeningVarsNumRemoved, NaN AbsIntAvgWeakenedConjuncts, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 1 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TraceCheckStatistics: 0.0s SsaConstructionTime, 0.0s SatisfiabilityAnalysisTime, 0.0s InterpolantComputationTime, 55 NumberOfCodeBlocks, 55 NumberOfCodeBlocksAsserted, 2 NumberOfCheckSat, 50 ConstructedInterpolants, 0 QuantifiedInterpolants, 1250 SizeOfPredicates, 0 NumberOfNonLiveVariables, 80 ConjunctsInSsa, 1 ConjunctsInUnsatCore, 2 InterpolantComputations, 2 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, InvariantSynthesisStatistics: No data available, InterpolantConsolidationStatistics: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be incorrect! Written .csv to /storage/ultimate/releaseScripts/default/UAutomizer-linux/../../../releaseScripts/default/UAutomizer-linux/csv/cstrncpy_unsafe_false-valid-deref.i_svcomp-DerefFreeMemtrack-32bit-Automizer_Fixed_noBitfields+AI_EQ_SS.epf_AutomizerCTransformed.xml/Csv-Benchmark-0-2018-04-09_23-25-53-245.csv Written .csv to /storage/ultimate/releaseScripts/default/UAutomizer-linux/../../../releaseScripts/default/UAutomizer-linux/csv/cstrncpy_unsafe_false-valid-deref.i_svcomp-DerefFreeMemtrack-32bit-Automizer_Fixed_noBitfields+AI_EQ_SS.epf_AutomizerCTransformed.xml/Csv-VPDomainBenchmark-0-2018-04-09_23-25-53-245.csv Written .csv to /storage/ultimate/releaseScripts/default/UAutomizer-linux/../../../releaseScripts/default/UAutomizer-linux/csv/cstrncpy_unsafe_false-valid-deref.i_svcomp-DerefFreeMemtrack-32bit-Automizer_Fixed_noBitfields+AI_EQ_SS.epf_AutomizerCTransformed.xml/Csv-BenchmarkWithCounters-0-2018-04-09_23-25-53-245.csv Written .csv to /storage/ultimate/releaseScripts/default/UAutomizer-linux/../../../releaseScripts/default/UAutomizer-linux/csv/cstrncpy_unsafe_false-valid-deref.i_svcomp-DerefFreeMemtrack-32bit-Automizer_Fixed_noBitfields+AI_EQ_SS.epf_AutomizerCTransformed.xml/Csv-BenchmarkWithCounters-1-2018-04-09_23-25-53-245.csv Written .csv to /storage/ultimate/releaseScripts/default/UAutomizer-linux/../../../releaseScripts/default/UAutomizer-linux/csv/cstrncpy_unsafe_false-valid-deref.i_svcomp-DerefFreeMemtrack-32bit-Automizer_Fixed_noBitfields+AI_EQ_SS.epf_AutomizerCTransformed.xml/Csv-BenchmarkWithCounters-2-2018-04-09_23-25-53-245.csv Written .csv to /storage/ultimate/releaseScripts/default/UAutomizer-linux/../../../releaseScripts/default/UAutomizer-linux/csv/cstrncpy_unsafe_false-valid-deref.i_svcomp-DerefFreeMemtrack-32bit-Automizer_Fixed_noBitfields+AI_EQ_SS.epf_AutomizerCTransformed.xml/Csv-HeapSeparatorBenchmark-0-2018-04-09_23-25-53-245.csv Written .csv to /storage/ultimate/releaseScripts/default/UAutomizer-linux/../../../releaseScripts/default/UAutomizer-linux/csv/cstrncpy_unsafe_false-valid-deref.i_svcomp-DerefFreeMemtrack-32bit-Automizer_Fixed_noBitfields+AI_EQ_SS.epf_AutomizerCTransformed.xml/Csv-TraceAbstractionBenchmarks-0-2018-04-09_23-25-53-245.csv Received shutdown request...