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-8168ed2-m [2018-04-12 00:31:05,209 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-04-12 00:31:05,211 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-04-12 00:31:05,224 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-04-12 00:31:05,224 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-04-12 00:31:05,225 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-04-12 00:31:05,225 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-04-12 00:31:05,227 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-04-12 00:31:05,229 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-04-12 00:31:05,230 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-04-12 00:31:05,231 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-04-12 00:31:05,231 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-04-12 00:31:05,232 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-04-12 00:31:05,234 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-04-12 00:31:05,234 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-04-12 00:31:05,236 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-04-12 00:31:05,239 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-04-12 00:31:05,240 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-04-12 00:31:05,242 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-04-12 00:31:05,243 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-04-12 00:31:05,245 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-04-12 00:31:05,245 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-04-12 00:31:05,246 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-04-12 00:31:05,247 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-04-12 00:31:05,247 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-04-12 00:31:05,249 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-04-12 00:31:05,249 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-04-12 00:31:05,250 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-04-12 00:31:05,250 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-04-12 00:31:05,251 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-04-12 00:31:05,251 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-04-12 00:31:05,252 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-12 00:31:05,275 INFO L110 SettingsManager]: Loading preferences was successful [2018-04-12 00:31:05,275 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-04-12 00:31:05,275 INFO L131 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2018-04-12 00:31:05,275 INFO L133 SettingsManager]: * ultimate.logging.details=de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation=DEBUG; [2018-04-12 00:31:05,276 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-04-12 00:31:05,276 INFO L133 SettingsManager]: * to procedures, called more than once=true [2018-04-12 00:31:05,276 INFO L131 SettingsManager]: Preferences of Abstract Interpretation differ from their defaults: [2018-04-12 00:31:05,276 INFO L133 SettingsManager]: * Abstract domain for RCFG-of-the-future=VPDomain [2018-04-12 00:31:05,276 INFO L133 SettingsManager]: * Parallel states before merging=1 [2018-04-12 00:31:05,276 INFO L133 SettingsManager]: * Use the RCFG-of-the-future interface=true [2018-04-12 00:31:05,277 INFO L131 SettingsManager]: Preferences of LTL2Aut differ from their defaults: [2018-04-12 00:31:05,277 INFO L133 SettingsManager]: * Property to check=[] a a: x > 42 [2018-04-12 00:31:05,277 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-04-12 00:31:05,277 INFO L133 SettingsManager]: * sizeof long=4 [2018-04-12 00:31:05,277 INFO L133 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2018-04-12 00:31:05,277 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-04-12 00:31:05,277 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-04-12 00:31:05,278 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-04-12 00:31:05,278 INFO L133 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2018-04-12 00:31:05,278 INFO L133 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2018-04-12 00:31:05,278 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-04-12 00:31:05,278 INFO L133 SettingsManager]: * sizeof long double=12 [2018-04-12 00:31:05,278 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-04-12 00:31:05,279 INFO L133 SettingsManager]: * Size of a code block=SingleStatement [2018-04-12 00:31:05,279 INFO L133 SettingsManager]: * Add additional assume for each assert=false [2018-04-12 00:31:05,279 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-04-12 00:31:05,279 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-04-12 00:31:05,279 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-04-12 00:31:05,280 INFO L133 SettingsManager]: * Interpolant automaton=TWOTRACK [2018-04-12 00:31:05,280 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-04-12 00:31:05,280 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-04-12 00:31:05,280 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-04-12 00:31:05,280 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-04-12 00:31:05,280 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-04-12 00:31:05,281 INFO L131 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2018-04-12 00:31:05,281 INFO L133 SettingsManager]: * TransformationType=HEAP_SEPARATOR [2018-04-12 00:31:05,281 INFO L131 SettingsManager]: Preferences of Boogie Printer differ from their defaults: [2018-04-12 00:31:05,281 INFO L133 SettingsManager]: * Dump path:=C:\Users\alex\AppData\Local\Temp\ [2018-04-12 00:31:05,312 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-04-12 00:31:05,322 INFO L266 ainManager$Toolchain]: [Toolchain 1]: Parser(s) successfully (re)initialized [2018-04-12 00:31:05,325 INFO L222 ainManager$Toolchain]: [Toolchain 1]: Toolchain data selected. [2018-04-12 00:31:05,326 INFO L271 PluginConnector]: Initializing CDTParser... [2018-04-12 00:31:05,326 INFO L276 PluginConnector]: CDTParser initialized [2018-04-12 00:31:05,327 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-12 00:31:05,627 INFO L225 CDTParser]: Created temporary CDT project at /storage/ultimate/releaseScripts/default/UAutomizer-linux/data/FLAG9eeecaa8d [2018-04-12 00:31:05,737 INFO L287 CDTParser]: IsIndexed: true [2018-04-12 00:31:05,737 INFO L288 CDTParser]: Found 1 translation units. [2018-04-12 00:31:05,737 INFO L168 CDTParser]: Scanning cstrncpy_unsafe_false-valid-deref.i [2018-04-12 00:31:05,738 INFO L210 ultiparseSymbolTable]: Include resolver: [2018-04-12 00:31:05,738 INFO L215 ultiparseSymbolTable]: [2018-04-12 00:31:05,739 INFO L218 ultiparseSymbolTable]: Function table: [2018-04-12 00:31:05,739 INFO L221 ultiparseSymbolTable]: Function definition of __U_MULTI_fcstrncpy_unsafe_false_valid_deref_i__ ('') in cstrncpy_unsafe_false-valid-deref.i [2018-04-12 00:31:05,739 INFO L221 ultiparseSymbolTable]: Function definition of null ('main') in cstrncpy_unsafe_false-valid-deref.i [2018-04-12 00:31:05,739 INFO L227 ultiparseSymbolTable]: Global variable table: [2018-04-12 00:31:05,739 INFO L233 ultiparseSymbolTable]: [2018-04-12 00:31:05,755 INFO L330 CDTParser]: Deleted temporary CDT project at /storage/ultimate/releaseScripts/default/UAutomizer-linux/data/FLAG9eeecaa8d [2018-04-12 00:31:05,759 INFO L304 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-04-12 00:31:05,762 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2018-04-12 00:31:05,762 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-04-12 00:31:05,763 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-04-12 00:31:05,767 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-04-12 00:31:05,768 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 12.04 12:31:05" (1/1) ... [2018-04-12 00:31:05,770 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@91fd04a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.04 12:31:05, skipping insertion in model container [2018-04-12 00:31:05,770 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 12.04 12:31:05" (1/1) ... [2018-04-12 00:31:05,784 INFO L167 Dispatcher]: Using SV-COMP mode [2018-04-12 00:31:05,796 INFO L167 Dispatcher]: Using SV-COMP mode [2018-04-12 00:31:05,918 INFO L175 PostProcessor]: Settings: Checked method=main [2018-04-12 00:31:05,941 INFO L175 PostProcessor]: Settings: Checked method=main [2018-04-12 00:31:05,946 INFO L100 SccComputation]: Graph consists of 0 InCaSumBalls and 9 non ball SCCs. Number of states in SCCs 9. [2018-04-12 00:31:05,954 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.04 12:31:05 WrapperNode [2018-04-12 00:31:05,955 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-04-12 00:31:05,955 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-04-12 00:31:05,955 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-04-12 00:31:05,955 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-04-12 00:31:05,965 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.04 12:31:05" (1/1) ... [2018-04-12 00:31:05,965 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.04 12:31:05" (1/1) ... [2018-04-12 00:31:05,972 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.04 12:31:05" (1/1) ... [2018-04-12 00:31:05,972 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.04 12:31:05" (1/1) ... [2018-04-12 00:31:05,976 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.04 12:31:05" (1/1) ... [2018-04-12 00:31:05,981 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.04 12:31:05" (1/1) ... [2018-04-12 00:31:05,983 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.04 12:31:05" (1/1) ... [2018-04-12 00:31:05,985 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-04-12 00:31:05,985 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-04-12 00:31:05,985 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-04-12 00:31:05,986 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-04-12 00:31:05,987 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.04 12:31:05" (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-12 00:31:06,043 INFO L136 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-04-12 00:31:06,044 INFO L136 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-04-12 00:31:06,044 INFO L136 BoogieDeclarations]: Found implementation of procedure cstrncpy [2018-04-12 00:31:06,044 INFO L136 BoogieDeclarations]: Found implementation of procedure main [2018-04-12 00:31:06,044 INFO L128 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2018-04-12 00:31:06,044 INFO L128 BoogieDeclarations]: Found specification of procedure cstrncpy [2018-04-12 00:31:06,044 INFO L128 BoogieDeclarations]: Found specification of procedure read~int [2018-04-12 00:31:06,045 INFO L128 BoogieDeclarations]: Found specification of procedure write~int [2018-04-12 00:31:06,045 INFO L128 BoogieDeclarations]: Found specification of procedure main [2018-04-12 00:31:06,045 INFO L128 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-04-12 00:31:06,045 INFO L128 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-04-12 00:31:06,045 INFO L128 BoogieDeclarations]: Found specification of procedure write~unchecked~int [2018-04-12 00:31:06,045 INFO L128 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-04-12 00:31:06,294 INFO L259 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-04-12 00:31:06,295 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 12.04 12:31:06 BoogieIcfgContainer [2018-04-12 00:31:06,295 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-04-12 00:31:06,296 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2018-04-12 00:31:06,296 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2018-04-12 00:31:06,297 INFO L276 PluginConnector]: IcfgTransformer initialized [2018-04-12 00:31:06,299 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 12.04 12:31:06" (1/1) ... [2018-04-12 00:31:06,306 INFO L139 apSepIcfgTransformer]: HeapSepIcfgTransformer: Starting heap partitioning [2018-04-12 00:31:06,307 INFO L140 apSepIcfgTransformer]: To be partitioned heap arrays found [#memory_int] [2018-04-12 00:31:06,322 INFO L299 apSepIcfgTransformer]: Heap separator: starting memloc-array-style preprocessing [2018-04-12 00:31:06,338 INFO L100 SccComputation]: Graph consists of 0 InCaSumBalls and 9 non ball SCCs. Number of states in SCCs 9. [2018-04-12 00:31:06,339 INFO L332 apSepIcfgTransformer]: finished MemlocArrayUpdater, created 4 location literals (each corresponds to one heap write) [2018-04-12 00:31:06,346 INFO L100 SccComputation]: Graph consists of 0 InCaSumBalls and 9 non ball SCCs. Number of states in SCCs 9. [2018-04-12 00:31:06,351 INFO L412 apSepIcfgTransformer]: finished preprocessing for the equality analysis [2018-04-12 00:31:06,351 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-12 00:31:06,354 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-12 00:31:06,411 INFO L101 FixpointEngine]: Starting fixpoint engine with domain VPDomain (maxUnwinding=3, maxParallelStates=1) [2018-04-12 00:31:35,250 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-12 00:31:35,253 INFO L424 apSepIcfgTransformer]: finished equality analysis [2018-04-12 00:31:35,259 INFO L195 HeapSepPreAnalysis]: Number of read from array group [#memory_int] : 3 [2018-04-12 00:31:35,260 INFO L434 apSepIcfgTransformer]: Finished pre analysis before partitioning [2018-04-12 00:31:35,260 INFO L435 apSepIcfgTransformer]: array groups: Set: [#memory_int] [2018-04-12 00:31:35,261 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-12 00:31:35,267 DEBUG L262 HeapPartitionManager]: merging partition blocks for array group[#memory_int] : [2018-04-12 00:31:35,267 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-12 00:31:35,268 DEBUG L265 HeapPartitionManager]: and [2018-04-12 00:31:35,268 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-12 00:31:35,268 DEBUG L267 HeapPartitionManager]: because of possible aliasing at dimension 0 [2018-04-12 00:31:35,268 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-12 00:31:35,268 DEBUG L262 HeapPartitionManager]: merging partition blocks for array group[#memory_int] : [2018-04-12 00:31:35,268 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-12 00:31:35,268 DEBUG L265 HeapPartitionManager]: and [2018-04-12 00:31:35,268 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-12 00:31:35,269 DEBUG L267 HeapPartitionManager]: because of possible aliasing at dimension 1 [2018-04-12 00:31:35,269 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-12 00:31:35,277 DEBUG L262 HeapPartitionManager]: merging partition blocks for array group[#memory_int] : [2018-04-12 00:31:35,277 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-12 00:31:35,277 DEBUG L265 HeapPartitionManager]: and [2018-04-12 00:31:35,277 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-12 00:31:35,277 DEBUG L267 HeapPartitionManager]: because of possible aliasing at dimension 0 [2018-04-12 00:31:35,278 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-12 00:31:35,278 DEBUG L373 HeapPartitionManager]: creating LocationBlock locs_65 [2018-04-12 00:31:35,278 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-12 00:31:35,278 DEBUG L323 HeapPartitionManager]: adding LocationBlock locs_65 [2018-04-12 00:31:35,279 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-12 00:31:35,279 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-12 00:31:35,279 DEBUG L323 HeapPartitionManager]: adding LocationBlock locs_65 [2018-04-12 00:31:35,279 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-12 00:31:35,279 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-12 00:31:35,279 DEBUG L373 HeapPartitionManager]: creating LocationBlock locs_65 [2018-04-12 00:31:35,279 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-12 00:31:35,279 DEBUG L323 HeapPartitionManager]: adding LocationBlock locs_65 [2018-04-12 00:31:35,279 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-12 00:31:35,280 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-12 00:31:35,280 DEBUG L323 HeapPartitionManager]: adding LocationBlock locs_65 [2018-04-12 00:31:35,280 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-12 00:31:35,280 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-12 00:31:35,280 INFO L330 HeapPartitionManager]: partitioning result: [2018-04-12 00:31:35,280 INFO L335 HeapPartitionManager]: location blocks for array group [#memory_int] [2018-04-12 00:31:35,281 INFO L344 HeapPartitionManager]: at dimension 0 [2018-04-12 00:31:35,281 INFO L345 HeapPartitionManager]: # array writes (possibly including 1 dummy write/NoStoreIndexInfo) : 2 [2018-04-12 00:31:35,281 INFO L346 HeapPartitionManager]: # location blocks :1 [2018-04-12 00:31:35,281 DEBUG L353 HeapPartitionManager]: location block contents: [2018-04-12 00:31:35,281 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-12 00:31:35,282 INFO L344 HeapPartitionManager]: at dimension 1 [2018-04-12 00:31:35,282 INFO L345 HeapPartitionManager]: # array writes (possibly including 1 dummy write/NoStoreIndexInfo) : 2 [2018-04-12 00:31:35,282 INFO L346 HeapPartitionManager]: # location blocks :1 [2018-04-12 00:31:35,282 DEBUG L353 HeapPartitionManager]: location block contents: [2018-04-12 00:31:35,282 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-12 00:31:35,284 INFO L134 ransitionTransformer]: executing heap partitioning transformation [2018-04-12 00:31:35,288 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,288 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,288 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,289 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,289 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,289 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,289 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,290 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,290 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,290 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-12 00:31:35,291 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,291 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,291 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,291 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,291 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,291 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,292 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,292 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,292 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-12 00:31:35,292 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-12 00:31:35,293 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-12 00:31:35,293 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-12 00:31:35,293 DEBUG L358 ransitionTransformer]: {} [2018-04-12 00:31:35,293 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,294 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,294 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-12 00:31:35,294 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,294 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,294 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,294 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,295 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-12 00:31:35,295 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-12 00:31:35,295 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-12 00:31:35,295 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-12 00:31:35,295 DEBUG L358 ransitionTransformer]: {} [2018-04-12 00:31:35,295 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,296 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,296 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,296 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,296 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,297 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,297 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-12 00:31:35,297 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,297 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,298 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,298 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-12 00:31:35,298 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,298 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,298 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,299 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,299 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-12 00:31:35,299 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-12 00:31:35,299 DEBUG L356 ransitionTransformer]: {main_#t~nondet6=|v_main_#t~nondet6_2|} [2018-04-12 00:31:35,299 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-12 00:31:35,299 DEBUG L358 ransitionTransformer]: {} [2018-04-12 00:31:35,300 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,300 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,300 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-12 00:31:35,301 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-12 00:31:35,301 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-12 00:31:35,301 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-12 00:31:35,301 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-12 00:31:35,301 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-12 00:31:35,301 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,302 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,302 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,302 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-12 00:31:35,302 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-12 00:31:35,302 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-12 00:31:35,302 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-12 00:31:35,303 DEBUG L358 ransitionTransformer]: {} [2018-04-12 00:31:35,303 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,303 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,303 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-12 00:31:35,304 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,304 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,304 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,304 DEBUG L331 ransitionTransformer]: Formula: (= |v_main_#res_1| 0) InVars {} OutVars{main_#res=|v_main_#res_1|} AuxVars[] AssignedVars[main_#res] [2018-04-12 00:31:35,304 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,304 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,305 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,305 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-12 00:31:35,305 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,305 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,306 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,306 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,306 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,306 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,306 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,306 DEBUG L331 ransitionTransformer]: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,307 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,307 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,307 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,307 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-12 00:31:35,307 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,308 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,308 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,308 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-12 00:31:35,308 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,308 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,309 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,309 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-12 00:31:35,309 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,309 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,309 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,310 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,310 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-12 00:31:35,310 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-12 00:31:35,310 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-12 00:31:35,310 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-12 00:31:35,310 DEBUG L358 ransitionTransformer]: {} [2018-04-12 00:31:35,311 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,311 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,311 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,311 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-12 00:31:35,311 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-12 00:31:35,312 DEBUG L356 ransitionTransformer]: {cstrncpy_~n2~0=v_cstrncpy_~n2~0_1} [2018-04-12 00:31:35,312 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-12 00:31:35,312 DEBUG L358 ransitionTransformer]: {} [2018-04-12 00:31:35,312 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,312 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,313 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,313 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,313 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,313 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,313 DEBUG L331 ransitionTransformer]: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,313 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,314 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,314 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,314 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-12 00:31:35,314 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,314 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,315 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,315 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-12 00:31:35,315 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,315 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,315 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,316 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-12 00:31:35,316 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,316 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,316 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,316 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-12 00:31:35,317 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,317 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,317 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,317 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,317 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,317 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,318 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,318 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-12 00:31:35,318 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,318 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,318 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,319 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,319 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-12 00:31:35,319 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-12 00:31:35,319 DEBUG L356 ransitionTransformer]: {cstrncpy_#t~post0=|v_cstrncpy_#t~post0_3|} [2018-04-12 00:31:35,319 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-12 00:31:35,319 DEBUG L358 ransitionTransformer]: {} [2018-04-12 00:31:35,320 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,320 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,320 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-12 00:31:35,320 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,320 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,321 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,321 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-12 00:31:35,321 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,321 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,322 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,322 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-12 00:31:35,322 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,322 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,322 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,323 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-12 00:31:35,323 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,323 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,326 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,326 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-12 00:31:35,326 DEBUG L338 ransitionTransformer]: formula has changed [2018-04-12 00:31:35,326 DEBUG L339 ransitionTransformer]: old formula: [2018-04-12 00:31:35,327 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-12 00:31:35,327 DEBUG L341 ransitionTransformer]: new formula: [2018-04-12 00:31:35,327 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-12 00:31:35,327 DEBUG L346 ransitionTransformer]: invars have changed [2018-04-12 00:31:35,327 DEBUG L347 ransitionTransformer]: old invars: [2018-04-12 00:31:35,327 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-12 00:31:35,328 DEBUG L349 ransitionTransformer]: new invars: [2018-04-12 00:31:35,328 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-12 00:31:35,328 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-12 00:31:35,328 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-12 00:31:35,328 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-12 00:31:35,328 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-12 00:31:35,329 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-12 00:31:35,329 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,329 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,329 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-12 00:31:35,329 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,330 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,330 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,330 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-12 00:31:35,330 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,330 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,332 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,332 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-12 00:31:35,333 DEBUG L338 ransitionTransformer]: formula has changed [2018-04-12 00:31:35,333 DEBUG L339 ransitionTransformer]: old formula: [2018-04-12 00:31:35,333 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-12 00:31:35,333 DEBUG L341 ransitionTransformer]: new formula: [2018-04-12 00:31:35,333 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-12 00:31:35,333 DEBUG L346 ransitionTransformer]: invars have changed [2018-04-12 00:31:35,334 DEBUG L347 ransitionTransformer]: old invars: [2018-04-12 00:31:35,334 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-12 00:31:35,334 DEBUG L349 ransitionTransformer]: new invars: [2018-04-12 00:31:35,334 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-12 00:31:35,334 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-12 00:31:35,334 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-12 00:31:35,335 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-12 00:31:35,335 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-12 00:31:35,335 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-12 00:31:35,335 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,335 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,336 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-12 00:31:35,336 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,336 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,336 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,336 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-12 00:31:35,336 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,337 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,337 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,337 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-12 00:31:35,337 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,337 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,338 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,338 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-12 00:31:35,338 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,338 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,338 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,338 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,339 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-12 00:31:35,339 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-12 00:31:35,339 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-12 00:31:35,339 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-12 00:31:35,339 DEBUG L358 ransitionTransformer]: {} [2018-04-12 00:31:35,339 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,340 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,340 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,340 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-12 00:31:35,340 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-12 00:31:35,340 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-12 00:31:35,340 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-12 00:31:35,341 DEBUG L358 ransitionTransformer]: {} [2018-04-12 00:31:35,341 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,341 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,341 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,341 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-12 00:31:35,341 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-12 00:31:35,342 DEBUG L356 ransitionTransformer]: {cstrncpy_#t~mem3=|v_cstrncpy_#t~mem3_4|} [2018-04-12 00:31:35,342 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-12 00:31:35,342 DEBUG L358 ransitionTransformer]: {} [2018-04-12 00:31:35,342 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,342 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,342 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,343 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-12 00:31:35,343 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-12 00:31:35,343 DEBUG L356 ransitionTransformer]: {cstrncpy_#t~mem3=|v_cstrncpy_#t~mem3_6|} [2018-04-12 00:31:35,343 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-12 00:31:35,343 DEBUG L358 ransitionTransformer]: {} [2018-04-12 00:31:35,343 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,344 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,344 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,344 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-12 00:31:35,344 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-12 00:31:35,344 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-12 00:31:35,344 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-12 00:31:35,344 DEBUG L358 ransitionTransformer]: {} [2018-04-12 00:31:35,345 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,345 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,345 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,345 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-12 00:31:35,345 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-12 00:31:35,345 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-12 00:31:35,346 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-12 00:31:35,346 DEBUG L358 ransitionTransformer]: {} [2018-04-12 00:31:35,346 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,346 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,346 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-12 00:31:35,346 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,347 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,347 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,347 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-12 00:31:35,347 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,351 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,352 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,352 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,352 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,352 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,352 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,353 DEBUG L331 ransitionTransformer]: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,353 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,353 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,353 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,353 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-12 00:31:35,353 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,353 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,353 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,353 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-12 00:31:35,354 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,354 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,354 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,354 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-12 00:31:35,354 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,354 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,354 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,354 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-12 00:31:35,355 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,355 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,355 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,355 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,355 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-12 00:31:35,355 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-12 00:31:35,355 DEBUG L356 ransitionTransformer]: {cstrncpy_#t~post4=|v_cstrncpy_#t~post4_4|} [2018-04-12 00:31:35,355 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-12 00:31:35,355 DEBUG L358 ransitionTransformer]: {} [2018-04-12 00:31:35,355 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,356 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,356 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,356 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-12 00:31:35,356 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-12 00:31:35,356 DEBUG L356 ransitionTransformer]: {cstrncpy_#t~post4=|v_cstrncpy_#t~post4_6|} [2018-04-12 00:31:35,356 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-12 00:31:35,356 DEBUG L358 ransitionTransformer]: {} [2018-04-12 00:31:35,356 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,356 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,356 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-12 00:31:35,356 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,357 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,357 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,357 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-12 00:31:35,357 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,357 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,357 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,358 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-12 00:31:35,358 DEBUG L338 ransitionTransformer]: formula has changed [2018-04-12 00:31:35,358 DEBUG L339 ransitionTransformer]: old formula: [2018-04-12 00:31:35,358 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-12 00:31:35,358 DEBUG L341 ransitionTransformer]: new formula: [2018-04-12 00:31:35,358 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-12 00:31:35,358 DEBUG L346 ransitionTransformer]: invars have changed [2018-04-12 00:31:35,358 DEBUG L347 ransitionTransformer]: old invars: [2018-04-12 00:31:35,358 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-12 00:31:35,358 DEBUG L349 ransitionTransformer]: new invars: [2018-04-12 00:31:35,359 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-12 00:31:35,359 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-12 00:31:35,359 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-12 00:31:35,359 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-12 00:31:35,359 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-12 00:31:35,359 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-12 00:31:35,359 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,359 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,359 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-12 00:31:35,359 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,360 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,360 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,360 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-12 00:31:35,360 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,360 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,360 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,360 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,360 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-12 00:31:35,360 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-12 00:31:35,361 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-12 00:31:35,361 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-12 00:31:35,361 DEBUG L358 ransitionTransformer]: {} [2018-04-12 00:31:35,361 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,361 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,361 DEBUG L331 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-12 00:31:35,361 DEBUG L334 ransitionTransformer]: transformula unchanged [2018-04-12 00:31:35,361 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,361 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,361 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-12 00:31:35,362 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-12 00:31:35,362 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-12 00:31:35,362 DEBUG L356 ransitionTransformer]: {ULTIMATE.start_#t~ret8=|v_ULTIMATE.start_#t~ret8_2|} [2018-04-12 00:31:35,362 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-12 00:31:35,362 DEBUG L358 ransitionTransformer]: {ULTIMATE.start_#t~ret8=|v_ULTIMATE.start_#t~ret8_2|, main_#res=|v_main_#resOutParam_1|} [2018-04-12 00:31:35,362 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,362 DEBUG L330 ransitionTransformer]: transformed transition [2018-04-12 00:31:35,362 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-12 00:31:35,362 DEBUG L354 ransitionTransformer]: outvars have changed [2018-04-12 00:31:35,362 DEBUG L355 ransitionTransformer]: old outvars: [2018-04-12 00:31:35,362 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-12 00:31:35,363 DEBUG L357 ransitionTransformer]: new outvars: [2018-04-12 00:31:35,363 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-12 00:31:35,363 DEBUG L360 ransitionTransformer]: [2018-04-12 00:31:35,363 INFO L100 SccComputation]: Graph consists of 0 InCaSumBalls and 9 non ball SCCs. Number of states in SCCs 9. [2018-04-12 00:31:35,364 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 12.04 12:31:35 BasicIcfg [2018-04-12 00:31:35,364 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2018-04-12 00:31:35,365 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-04-12 00:31:35,365 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-04-12 00:31:35,367 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-04-12 00:31:35,367 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 12.04 12:31:05" (1/4) ... [2018-04-12 00:31:35,368 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@734767d6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 12.04 12:31:35, skipping insertion in model container [2018-04-12 00:31:35,368 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 12.04 12:31:05" (2/4) ... [2018-04-12 00:31:35,368 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@734767d6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 12.04 12:31:35, skipping insertion in model container [2018-04-12 00:31:35,368 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 12.04 12:31:06" (3/4) ... [2018-04-12 00:31:35,368 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@734767d6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 12.04 12:31:35, skipping insertion in model container [2018-04-12 00:31:35,369 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 12.04 12:31:35" (4/4) ... [2018-04-12 00:31:35,370 INFO L107 eAbstractionObserver]: Analyzing ICFG memPartitionedIcfg [2018-04-12 00:31:35,376 INFO L131 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-04-12 00:31:35,382 INFO L143 ceAbstractionStarter]: Appying trace abstraction to program that has 7 error locations. [2018-04-12 00:31:35,415 INFO L128 ementStrategyFactory]: Using default assertion order modulation [2018-04-12 00:31:35,416 INFO L369 AbstractCegarLoop]: Interprodecural is true [2018-04-12 00:31:35,416 INFO L370 AbstractCegarLoop]: Hoare is true [2018-04-12 00:31:35,416 INFO L371 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-04-12 00:31:35,416 INFO L372 AbstractCegarLoop]: Backedges is TWOTRACK [2018-04-12 00:31:35,416 INFO L373 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-04-12 00:31:35,416 INFO L374 AbstractCegarLoop]: Difference is false [2018-04-12 00:31:35,416 INFO L375 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-04-12 00:31:35,416 INFO L380 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-04-12 00:31:35,417 INFO L87 2NestedWordAutomaton]: Mode: main mode - execution starts in main procedure [2018-04-12 00:31:35,425 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states. [2018-04-12 00:31:35,430 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2018-04-12 00:31:35,430 INFO L347 BasicCegarLoop]: Found error trace [2018-04-12 00:31:35,430 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-12 00:31:35,431 INFO L408 AbstractCegarLoop]: === Iteration 1 === [cstrncpyErr3RequiresViolation, cstrncpyErr5RequiresViolation, cstrncpyErr4RequiresViolation, cstrncpyErr2RequiresViolation, cstrncpyErr0RequiresViolation, cstrncpyErr1RequiresViolation, mainErr0EnsuresViolationMEMORY_LEAK]=== [2018-04-12 00:31:35,434 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-12 00:31:35,445 INFO L68 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2018-04-12 00:31:35,479 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-04-12 00:31:35,488 INFO L270 TraceCheckSpWp]: Computing forward predicates... [2018-04-12 00:31:35,505 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-12 00:31:35,505 INFO L314 TraceCheckSpWp]: Computing backward predicates... [2018-04-12 00:31:35,532 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-12 00:31:35,558 INFO L320 seRefinementStrategy]: Constructing automaton from 2 perfect and 0 imperfect interpolant sequences. [2018-04-12 00:31:35,558 INFO L335 seRefinementStrategy]: Number of different interpolants: perfect sequences [2, 2] imperfect sequences [] total 2 [2018-04-12 00:31:35,561 INFO L442 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-04-12 00:31:35,571 INFO L132 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-04-12 00:31:35,571 INFO L133 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-04-12 00:31:35,573 INFO L87 Difference]: Start difference. First operand 65 states. Second operand 2 states. [2018-04-12 00:31:35,591 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-04-12 00:31:35,591 INFO L93 Difference]: Finished difference Result 74 states and 78 transitions. [2018-04-12 00:31:35,591 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-04-12 00:31:35,593 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 26 [2018-04-12 00:31:35,593 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-04-12 00:31:35,601 INFO L225 Difference]: With dead ends: 74 [2018-04-12 00:31:35,601 INFO L226 Difference]: Without dead ends: 54 [2018-04-12 00:31:35,605 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-12 00:31:35,618 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2018-04-12 00:31:35,631 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 54. [2018-04-12 00:31:35,632 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 54 states. [2018-04-12 00:31:35,634 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 55 transitions. [2018-04-12 00:31:35,635 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 55 transitions. Word has length 26 [2018-04-12 00:31:35,636 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-04-12 00:31:35,636 INFO L459 AbstractCegarLoop]: Abstraction has 54 states and 55 transitions. [2018-04-12 00:31:35,636 INFO L460 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-04-12 00:31:35,636 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 55 transitions. [2018-04-12 00:31:35,637 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2018-04-12 00:31:35,637 INFO L347 BasicCegarLoop]: Found error trace [2018-04-12 00:31:35,637 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-12 00:31:35,637 INFO L408 AbstractCegarLoop]: === Iteration 2 === [cstrncpyErr3RequiresViolation, cstrncpyErr5RequiresViolation, cstrncpyErr4RequiresViolation, cstrncpyErr2RequiresViolation, cstrncpyErr0RequiresViolation, cstrncpyErr1RequiresViolation, mainErr0EnsuresViolationMEMORY_LEAK]=== [2018-04-12 00:31:35,637 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-12 00:31:35,643 INFO L68 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2018-04-12 00:31:35,662 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-04-12 00:31:35,674 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-04-12 00:31:35,726 INFO L421 BasicCegarLoop]: Counterexample might be feasible [2018-04-12 00:31:35,767 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 12.04 12:31:35 BasicIcfg [2018-04-12 00:31:35,767 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2018-04-12 00:31:35,768 INFO L168 Benchmark]: Toolchain (without parser) took 30008.36 ms. Allocated memory was 306.2 MB in the beginning and 1.1 GB in the end (delta: 832.0 MB). Free memory was 249.4 MB in the beginning and 984.8 MB in the end (delta: -735.5 MB). Peak memory consumption was 96.6 MB. Max. memory is 5.3 GB. [2018-04-12 00:31:35,769 INFO L168 Benchmark]: CDTParser took 0.21 ms. Allocated memory is still 306.2 MB. Free memory is still 267.4 MB. There was no memory consumed. Max. memory is 5.3 GB. [2018-04-12 00:31:35,769 INFO L168 Benchmark]: CACSL2BoogieTranslator took 192.54 ms. Allocated memory is still 306.2 MB. Free memory was 249.4 MB in the beginning and 239.4 MB in the end (delta: 10.0 MB). Peak memory consumption was 10.0 MB. Max. memory is 5.3 GB. [2018-04-12 00:31:35,769 INFO L168 Benchmark]: Boogie Preprocessor took 29.73 ms. Allocated memory is still 306.2 MB. Free memory was 239.4 MB in the beginning and 237.4 MB in the end (delta: 2.0 MB). Peak memory consumption was 2.0 MB. Max. memory is 5.3 GB. [2018-04-12 00:31:35,770 INFO L168 Benchmark]: RCFGBuilder took 309.93 ms. Allocated memory was 306.2 MB in the beginning and 469.8 MB in the end (delta: 163.6 MB). Free memory was 237.4 MB in the beginning and 435.9 MB in the end (delta: -198.5 MB). Peak memory consumption was 24.3 MB. Max. memory is 5.3 GB. [2018-04-12 00:31:35,770 INFO L168 Benchmark]: IcfgTransformer took 29068.84 ms. Allocated memory was 469.8 MB in the beginning and 1.1 GB in the end (delta: 668.5 MB). Free memory was 435.9 MB in the beginning and 1.1 GB in the end (delta: -654.0 MB). Peak memory consumption was 777.9 MB. Max. memory is 5.3 GB. [2018-04-12 00:31:35,770 INFO L168 Benchmark]: TraceAbstraction took 402.27 ms. Allocated memory is still 1.1 GB. Free memory was 1.1 GB in the beginning and 984.8 MB in the end (delta: 105.1 MB). Peak memory consumption was 105.1 MB. Max. memory is 5.3 GB. [2018-04-12 00:31:35,773 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.21 ms. Allocated memory is still 306.2 MB. Free memory is still 267.4 MB. There was no memory consumed. Max. memory is 5.3 GB. * CACSL2BoogieTranslator took 192.54 ms. Allocated memory is still 306.2 MB. Free memory was 249.4 MB in the beginning and 239.4 MB in the end (delta: 10.0 MB). Peak memory consumption was 10.0 MB. Max. memory is 5.3 GB. * Boogie Preprocessor took 29.73 ms. Allocated memory is still 306.2 MB. Free memory was 239.4 MB in the beginning and 237.4 MB in the end (delta: 2.0 MB). Peak memory consumption was 2.0 MB. Max. memory is 5.3 GB. * RCFGBuilder took 309.93 ms. Allocated memory was 306.2 MB in the beginning and 469.8 MB in the end (delta: 163.6 MB). Free memory was 237.4 MB in the beginning and 435.9 MB in the end (delta: -198.5 MB). Peak memory consumption was 24.3 MB. Max. memory is 5.3 GB. * IcfgTransformer took 29068.84 ms. Allocated memory was 469.8 MB in the beginning and 1.1 GB in the end (delta: 668.5 MB). Free memory was 435.9 MB in the beginning and 1.1 GB in the end (delta: -654.0 MB). Peak memory consumption was 777.9 MB. Max. memory is 5.3 GB. * TraceAbstraction took 402.27 ms. Allocated memory is still 1.1 GB. Free memory was 1.1 GB in the beginning and 984.8 MB in the end (delta: 105.1 MB). Peak memory consumption was 105.1 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) : 6241.54 RENAME_VARIABLES(MILLISECONDS) : 274.60 UNFREEZE(MILLISECONDS) : 0.00 CONJOIN(MILLISECONDS) : 6228.61 PROJECTAWAY(MILLISECONDS) : 11492.91 ADD_WEAK_EQUALITY(MILLISECONDS) : 8.03 DISJOIN(MILLISECONDS) : 359.42 RENAME_VARIABLES_DISJUNCTIVE(MILLISECONDS) : 289.15 ADD_EQUALITY(MILLISECONDS) : 11.32 DISJOIN_DISJUNCTIVE(MILLISECONDS) : 0.00 ADD_DISEQUALITY(MILLISECONDS) : 0.31 #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) : 16892.23 ADDNODE(MILLISECONDS) : 0.00 MEET(MILLISECONDS) : 6219.66 FILTERREDUNDANT(MILLISECONDS) : 0.00 REPORTWEQ(MILLISECONDS) : 7.86 JOIN(MILLISECONDS) : 352.13 RENAMEVARS(MILLISECONDS) : 267.74 FLATTENLABELS(MILLISECONDS) : 0.00 COPY(MILLISECONDS) : 0.00 ISSTRONGERTHAN(MILLISECONDS) : 9481.55 ISLABELSTRONGERTHAN(MILLISECONDS) : 1628.93 ISWEQGRAPHSTRONGERTHAN(MILLISECONDS) : 171.90 UNFREEZE(MILLISECONDS) : 101.56 REPORTCONTAINS(MILLISECONDS) : 0.78 PROJECTAWAY(MILLISECONDS) : 11370.22 MEETEDGELABELS(MILLISECONDS) : 1647.94 REPORTEQUALITY(MILLISECONDS) : 207.99 ADDALLNODES(MILLISECONDS) : 123.22 REPORTDISEQUALITY(MILLISECONDS) : 3.58 WEQGRAPHJOIN(MILLISECONDS) : 271.90 #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) : 5349.32 REPORT_EQUALITY(MILLISECONDS) : 1904.41 FILTERREDUNDANT(MILLISECONDS) : 14320.90 ADD_ALL_ELEMENTS(MILLISECONDS) : 4000.13 JOIN(MILLISECONDS) : 57.11 ALIGN_ELEMENTS(MILLISECONDS) : 8736.23 COPY(MILLISECONDS) : 0.00 REPORT_DISEQUALITY(MILLISECONDS) : 340.08 UNFREEZE(MILLISECONDS) : 0.00 OVERALL(MILLISECONDS) : 16641.02 REPORTCONTAINS(MILLISECONDS) : 29.16 IS_STRONGER_THAN_NO_CACHING(MILLISECONDS) : 11262.11 REMOVE(MILLISECONDS) : 0.00 IS_STRONGER_THAN_W_CACHING(MILLISECONDS) : 0.00 PROJECT_TO_ELEMENTS(MILLISECONDS) : 1390.95 #ADDNODE : 0 #MEET : 16443 #REPORT_EQUALITY : 251554 #FILTERREDUNDANT : 225171 #ADD_ALL_ELEMENTS : 236087 #JOIN : 104 #ALIGN_ELEMENTS : 109013 #COPY : 0 #REPORT_DISEQUALITY : 75669 #UNFREEZE : 0 #OVERALL : 1262544 #REPORTCONTAINS : 3621 #IS_STRONGER_THAN_NO_CACHING : 329925 #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=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] 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-12_00-31-35-786.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-12_00-31-35-786.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-12_00-31-35-786.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-12_00-31-35-786.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-12_00-31-35-786.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-12_00-31-35-786.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-12_00-31-35-786.csv Received shutdown request...