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-835382a-m [2018-04-05 18:36:46,149 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-04-05 18:36:46,150 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-04-05 18:36:46,164 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-04-05 18:36:46,165 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-04-05 18:36:46,166 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-04-05 18:36:46,167 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-04-05 18:36:46,168 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-04-05 18:36:46,170 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-04-05 18:36:46,171 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-04-05 18:36:46,171 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-04-05 18:36:46,172 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-04-05 18:36:46,173 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-04-05 18:36:46,174 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-04-05 18:36:46,175 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-04-05 18:36:46,177 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-04-05 18:36:46,179 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-04-05 18:36:46,180 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-04-05 18:36:46,182 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-04-05 18:36:46,183 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-04-05 18:36:46,185 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-04-05 18:36:46,185 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-04-05 18:36:46,185 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-04-05 18:36:46,186 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-04-05 18:36:46,187 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-04-05 18:36:46,189 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-04-05 18:36:46,189 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-04-05 18:36:46,189 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-04-05 18:36:46,190 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-04-05 18:36:46,190 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-04-05 18:36:46,191 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-04-05 18:36:46,191 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-05 18:36:46,216 INFO L110 SettingsManager]: Loading preferences was successful [2018-04-05 18:36:46,217 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-04-05 18:36:46,217 INFO L131 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2018-04-05 18:36:46,217 INFO L133 SettingsManager]: * ultimate.logging.details=de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation=DEBUG; [2018-04-05 18:36:46,218 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-04-05 18:36:46,218 INFO L133 SettingsManager]: * to procedures, called more than once=true [2018-04-05 18:36:46,218 INFO L131 SettingsManager]: Preferences of Abstract Interpretation differ from their defaults: [2018-04-05 18:36:46,218 INFO L133 SettingsManager]: * Abstract domain for RCFG-of-the-future=VPDomain [2018-04-05 18:36:46,218 INFO L133 SettingsManager]: * Use the RCFG-of-the-future interface=true [2018-04-05 18:36:46,219 INFO L131 SettingsManager]: Preferences of LTL2Aut differ from their defaults: [2018-04-05 18:36:46,219 INFO L133 SettingsManager]: * Property to check=[] a a: x > 42 [2018-04-05 18:36:46,219 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-04-05 18:36:46,219 INFO L133 SettingsManager]: * sizeof long=4 [2018-04-05 18:36:46,220 INFO L133 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2018-04-05 18:36:46,220 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-04-05 18:36:46,220 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-04-05 18:36:46,220 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-04-05 18:36:46,220 INFO L133 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2018-04-05 18:36:46,221 INFO L133 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2018-04-05 18:36:46,221 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-04-05 18:36:46,221 INFO L133 SettingsManager]: * sizeof long double=12 [2018-04-05 18:36:46,221 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-04-05 18:36:46,221 INFO L133 SettingsManager]: * Size of a code block=SingleStatement [2018-04-05 18:36:46,222 INFO L133 SettingsManager]: * Add additional assume for each assert=false [2018-04-05 18:36:46,222 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-04-05 18:36:46,222 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-04-05 18:36:46,222 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-04-05 18:36:46,222 INFO L133 SettingsManager]: * Interpolant automaton=TWOTRACK [2018-04-05 18:36:46,223 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-04-05 18:36:46,223 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-04-05 18:36:46,223 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-04-05 18:36:46,223 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-04-05 18:36:46,223 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-04-05 18:36:46,224 INFO L131 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2018-04-05 18:36:46,224 INFO L133 SettingsManager]: * TransformationType=HEAP_SEPARATOR [2018-04-05 18:36:46,225 INFO L131 SettingsManager]: Preferences of Boogie Printer differ from their defaults: [2018-04-05 18:36:46,225 INFO L133 SettingsManager]: * Dump path:=C:\Users\alex\AppData\Local\Temp\ [2018-04-05 18:36:46,259 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-04-05 18:36:46,272 INFO L266 ainManager$Toolchain]: [Toolchain 1]: Parser(s) successfully (re)initialized [2018-04-05 18:36:46,276 INFO L222 ainManager$Toolchain]: [Toolchain 1]: Toolchain data selected. [2018-04-05 18:36:46,278 INFO L271 PluginConnector]: Initializing CDTParser... [2018-04-05 18:36:46,278 INFO L276 PluginConnector]: CDTParser initialized [2018-04-05 18:36:46,279 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-05 18:36:46,586 INFO L225 CDTParser]: Created temporary CDT project at /storage/ultimate/releaseScripts/default/UAutomizer-linux/data/FLAG33b82e111 [2018-04-05 18:36:46,698 INFO L287 CDTParser]: IsIndexed: true [2018-04-05 18:36:46,698 INFO L288 CDTParser]: Found 1 translation units. [2018-04-05 18:36:46,699 INFO L168 CDTParser]: Scanning cstrncpy_unsafe_false-valid-deref.i [2018-04-05 18:36:46,700 INFO L210 ultiparseSymbolTable]: Include resolver: [2018-04-05 18:36:46,700 INFO L215 ultiparseSymbolTable]: [2018-04-05 18:36:46,700 INFO L218 ultiparseSymbolTable]: Function table: [2018-04-05 18:36:46,700 INFO L221 ultiparseSymbolTable]: Function definition of __U_MULTI_fcstrncpy_unsafe_false_valid_deref_i__ ('') in cstrncpy_unsafe_false-valid-deref.i [2018-04-05 18:36:46,700 INFO L221 ultiparseSymbolTable]: Function definition of null ('main') in cstrncpy_unsafe_false-valid-deref.i [2018-04-05 18:36:46,701 INFO L227 ultiparseSymbolTable]: Global variable table: [2018-04-05 18:36:46,701 INFO L233 ultiparseSymbolTable]: [2018-04-05 18:36:46,715 INFO L330 CDTParser]: Deleted temporary CDT project at /storage/ultimate/releaseScripts/default/UAutomizer-linux/data/FLAG33b82e111 [2018-04-05 18:36:46,720 INFO L304 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-04-05 18:36:46,722 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2018-04-05 18:36:46,723 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-04-05 18:36:46,723 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-04-05 18:36:46,730 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-04-05 18:36:46,731 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 05.04 06:36:46" (1/1) ... [2018-04-05 18:36:46,734 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4ae5ed9b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.04 06:36:46, skipping insertion in model container [2018-04-05 18:36:46,734 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 05.04 06:36:46" (1/1) ... [2018-04-05 18:36:46,749 INFO L167 Dispatcher]: Using SV-COMP mode [2018-04-05 18:36:46,762 INFO L167 Dispatcher]: Using SV-COMP mode [2018-04-05 18:36:46,902 INFO L175 PostProcessor]: Settings: Checked method=main [2018-04-05 18:36:46,931 INFO L175 PostProcessor]: Settings: Checked method=main [2018-04-05 18:36:46,937 INFO L100 SccComputation]: Graph consists of 0 InCaSumBalls and 9 non ball SCCs. Number of states in SCCs 9. [2018-04-05 18:36:46,947 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.04 06:36:46 WrapperNode [2018-04-05 18:36:46,947 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-04-05 18:36:46,948 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-04-05 18:36:46,948 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-04-05 18:36:46,948 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-04-05 18:36:46,961 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.04 06:36:46" (1/1) ... [2018-04-05 18:36:46,962 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.04 06:36:46" (1/1) ... [2018-04-05 18:36:46,971 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.04 06:36:46" (1/1) ... [2018-04-05 18:36:46,971 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.04 06:36:46" (1/1) ... [2018-04-05 18:36:46,975 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.04 06:36:46" (1/1) ... [2018-04-05 18:36:46,980 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.04 06:36:46" (1/1) ... [2018-04-05 18:36:46,982 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.04 06:36:46" (1/1) ... [2018-04-05 18:36:46,983 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-04-05 18:36:46,984 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-04-05 18:36:46,984 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-04-05 18:36:46,984 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-04-05 18:36:46,985 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.04 06:36:46" (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-05 18:36:47,043 INFO L136 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-04-05 18:36:47,044 INFO L136 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-04-05 18:36:47,044 INFO L136 BoogieDeclarations]: Found implementation of procedure cstrncpy [2018-04-05 18:36:47,044 INFO L136 BoogieDeclarations]: Found implementation of procedure main [2018-04-05 18:36:47,044 INFO L128 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2018-04-05 18:36:47,044 INFO L128 BoogieDeclarations]: Found specification of procedure cstrncpy [2018-04-05 18:36:47,044 INFO L128 BoogieDeclarations]: Found specification of procedure read~int [2018-04-05 18:36:47,045 INFO L128 BoogieDeclarations]: Found specification of procedure write~int [2018-04-05 18:36:47,045 INFO L128 BoogieDeclarations]: Found specification of procedure main [2018-04-05 18:36:47,045 INFO L128 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-04-05 18:36:47,045 INFO L128 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-04-05 18:36:47,045 INFO L128 BoogieDeclarations]: Found specification of procedure write~unchecked~int [2018-04-05 18:36:47,045 INFO L128 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2018-04-05 18:36:47,326 INFO L259 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-04-05 18:36:47,327 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 05.04 06:36:47 BoogieIcfgContainer [2018-04-05 18:36:47,327 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-04-05 18:36:47,328 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2018-04-05 18:36:47,328 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2018-04-05 18:36:47,329 INFO L276 PluginConnector]: IcfgTransformer initialized [2018-04-05 18:36:47,331 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 05.04 06:36:47" (1/1) ... [2018-04-05 18:36:47,338 INFO L139 apSepIcfgTransformer]: HeapSepIcfgTransformer: Starting heap partitioning [2018-04-05 18:36:47,338 INFO L140 apSepIcfgTransformer]: To be partitioned heap arrays found [#memory_int] [2018-04-05 18:36:47,351 INFO L299 apSepIcfgTransformer]: Heap separator: starting memloc-array-style preprocessing [2018-04-05 18:36:47,365 INFO L100 SccComputation]: Graph consists of 0 InCaSumBalls and 9 non ball SCCs. Number of states in SCCs 9. [2018-04-05 18:36:47,365 INFO L332 apSepIcfgTransformer]: finished MemlocArrayUpdater, created 4 location literals (each corresponds to one heap write) [2018-04-05 18:36:47,371 INFO L100 SccComputation]: Graph consists of 1 InCaSumBalls and 8 non ball SCCs. Number of states in SCCs 9. [2018-04-05 18:36:47,374 INFO L412 apSepIcfgTransformer]: finished preprocessing for the equality analysis [2018-04-05 18:36:47,375 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-05 18:36:47,376 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-05 18:36:47,421 INFO L101 FixpointEngine]: Starting fixpoint engine with domain VPDomain (maxUnwinding=3, maxParallelStates=2) [2018-04-05 18:38:18,513 INFO L314 AbstractInterpreter]: Visited 70 different actions 261 times. Merged at 44 different actions 157 times. Widened at 1 different actions 1 times. Found 17 fixpoints after 8 different actions. Largest state had 48 variables. [2018-04-05 18:38:18,516 INFO L424 apSepIcfgTransformer]: finished equality analysis [2018-04-05 18:38:18,521 INFO L195 HeapSepPreAnalysis]: Number of read from array group [#memory_int] : 3 [2018-04-05 18:38:18,522 INFO L434 apSepIcfgTransformer]: Finished pre analysis before partitioning [2018-04-05 18:38:18,522 INFO L435 apSepIcfgTransformer]: array groups: Set: [#memory_int] [2018-04-05 18:38:18,522 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-05 18:38:18,531 DEBUG L262 HeapPartitionManager]: merging partition blocks for array group[#memory_int] : [2018-04-05 18:38:18,531 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-05 18:38:18,532 DEBUG L265 HeapPartitionManager]: and [2018-04-05 18:38:18,532 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-05 18:38:18,532 DEBUG L267 HeapPartitionManager]: because of possible aliasing at dimension 0 [2018-04-05 18:38:18,532 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-05 18:38:18,532 DEBUG L262 HeapPartitionManager]: merging partition blocks for array group[#memory_int] : [2018-04-05 18:38:18,532 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-05 18:38:18,532 DEBUG L265 HeapPartitionManager]: and [2018-04-05 18:38:18,532 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-05 18:38:18,532 DEBUG L267 HeapPartitionManager]: because of possible aliasing at dimension 1 [2018-04-05 18:38:18,533 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-05 18:38:18,545 DEBUG L262 HeapPartitionManager]: merging partition blocks for array group[#memory_int] : [2018-04-05 18:38:18,546 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-05 18:38:18,546 DEBUG L265 HeapPartitionManager]: and [2018-04-05 18:38:18,546 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-05 18:38:18,546 DEBUG L267 HeapPartitionManager]: because of possible aliasing at dimension 0 [2018-04-05 18:38:18,546 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-05 18:38:18,547 DEBUG L373 HeapPartitionManager]: creating LocationBlock locs_65 [2018-04-05 18:38:18,547 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-05 18:38:18,547 DEBUG L323 HeapPartitionManager]: adding LocationBlock locs_65 [2018-04-05 18:38:18,547 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-05 18:38:18,547 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-05 18:38:18,547 DEBUG L323 HeapPartitionManager]: adding LocationBlock locs_65 [2018-04-05 18:38:18,548 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-05 18:38:18,548 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-05 18:38:18,548 DEBUG L373 HeapPartitionManager]: creating LocationBlock locs_65 [2018-04-05 18:38:18,548 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-05 18:38:18,548 DEBUG L323 HeapPartitionManager]: adding LocationBlock locs_65 [2018-04-05 18:38:18,548 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-05 18:38:18,549 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-05 18:38:18,549 DEBUG L323 HeapPartitionManager]: adding LocationBlock locs_65 [2018-04-05 18:38:18,549 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-05 18:38:18,549 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-05 18:38:18,549 INFO L330 HeapPartitionManager]: partitioning result: [2018-04-05 18:38:18,550 INFO L335 HeapPartitionManager]: location blocks for array group [#memory_int] [2018-04-05 18:38:18,550 INFO L344 HeapPartitionManager]: at dimension 0 [2018-04-05 18:38:18,550 INFO L345 HeapPartitionManager]: # array writes (possibly including 1 dummy write/NoStoreIndexInfo) : 2 [2018-04-05 18:38:18,550 INFO L346 HeapPartitionManager]: # location blocks :1 [2018-04-05 18:38:18,550 DEBUG L353 HeapPartitionManager]: location block contents: [2018-04-05 18:38:18,551 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-05 18:38:18,551 INFO L344 HeapPartitionManager]: at dimension 1 [2018-04-05 18:38:18,551 INFO L345 HeapPartitionManager]: # array writes (possibly including 1 dummy write/NoStoreIndexInfo) : 2 [2018-04-05 18:38:18,551 INFO L346 HeapPartitionManager]: # location blocks :1 [2018-04-05 18:38:18,551 DEBUG L353 HeapPartitionManager]: location block contents: [2018-04-05 18:38:18,551 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-05 18:38:18,552 INFO L131 ransitionTransformer]: executing heap partitioning transformation [2018-04-05 18:38:18,556 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,556 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-05 18:38:18,557 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,557 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,557 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,557 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-05 18:38:18,557 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,558 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,558 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,558 DEBUG L281 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-05 18:38:18,558 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,559 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,559 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,559 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-05 18:38:18,559 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,559 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,560 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,560 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{main_~s1~0.offset=v_main_~s1~0.offset_2, main_~s1~0.base=v_main_~s1~0.base_2} AuxVars[] AssignedVars[main_~s1~0.offset, main_~s1~0.base] [2018-04-05 18:38:18,560 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,560 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,560 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,561 DEBUG L281 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-05 18:38:18,561 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,561 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,561 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,561 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{main_~s2~0.offset=v_main_~s2~0.offset_2, main_~s2~0.base=v_main_~s2~0.base_2} AuxVars[] AssignedVars[main_~s2~0.base, main_~s2~0.offset] [2018-04-05 18:38:18,562 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,562 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,562 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,562 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-05 18:38:18,562 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,563 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,563 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,563 DEBUG L281 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-05 18:38:18,563 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,563 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,564 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,564 DEBUG L281 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-05 18:38:18,564 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,564 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,565 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,565 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{main_#t~nondet6=|v_main_#t~nondet6_2|} AuxVars[] AssignedVars[main_#t~nondet6] [2018-04-05 18:38:18,565 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,565 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,565 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,566 DEBUG L281 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|, 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|} AuxVars[] AssignedVars[cstrncpy_#in~s2.offset, cstrncpy_#in~n, cstrncpy_#in~s1.offset, cstrncpy_#in~s1.base, cstrncpy_#in~s2.base] [2018-04-05 18:38:18,566 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,566 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,566 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,567 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{main_#t~ret7.base=|v_main_#t~ret7.base_2|, main_#t~ret7.offset=|v_main_#t~ret7.offset_2|} AuxVars[] AssignedVars[main_#t~ret7.base, main_#t~ret7.offset] [2018-04-05 18:38:18,567 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,567 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,567 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,567 DEBUG L281 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-05 18:38:18,567 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,568 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,568 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,568 DEBUG L281 ransitionTransformer]: Formula: (= |v_main_#res_1| 0) InVars {} OutVars{main_#res=|v_main_#res_1|} AuxVars[] AssignedVars[main_#res] [2018-04-05 18:38:18,568 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,568 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,569 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,569 DEBUG L281 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-05 18:38:18,569 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,569 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,569 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,570 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-05 18:38:18,570 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,570 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,570 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,570 DEBUG L281 ransitionTransformer]: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-05 18:38:18,570 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,571 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,571 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,571 DEBUG L281 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-05 18:38:18,571 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,571 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,572 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,572 DEBUG L281 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-05 18:38:18,572 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,572 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,572 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,573 DEBUG L281 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-05 18:38:18,573 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,573 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,573 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,573 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{cstrncpy_~us~0.offset=v_cstrncpy_~us~0.offset_1, cstrncpy_~us~0.base=v_cstrncpy_~us~0.base_1} AuxVars[] AssignedVars[cstrncpy_~us~0.offset, cstrncpy_~us~0.base] [2018-04-05 18:38:18,573 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,574 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,574 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,574 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{cstrncpy_~n2~0=v_cstrncpy_~n2~0_1} AuxVars[] AssignedVars[cstrncpy_~n2~0] [2018-04-05 18:38:18,574 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,574 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,575 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,575 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-05 18:38:18,575 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,575 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,575 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,575 DEBUG L281 ransitionTransformer]: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-05 18:38:18,576 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,576 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,576 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,576 DEBUG L281 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-05 18:38:18,576 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,576 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,577 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,577 DEBUG L281 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-05 18:38:18,577 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,577 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,577 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,578 DEBUG L281 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-05 18:38:18,578 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,578 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,578 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,578 DEBUG L281 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-05 18:38:18,578 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,579 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,579 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,579 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-05 18:38:18,579 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,579 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,580 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,580 DEBUG L281 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-05 18:38:18,580 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,580 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,580 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,580 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{cstrncpy_#t~post0=|v_cstrncpy_#t~post0_3|} AuxVars[] AssignedVars[cstrncpy_#t~post0] [2018-04-05 18:38:18,581 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,581 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,581 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,581 DEBUG L281 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-05 18:38:18,581 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,582 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,582 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,582 DEBUG L281 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-05 18:38:18,582 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,582 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,592 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,593 DEBUG L281 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-05 18:38:18,593 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,593 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,593 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,594 DEBUG L281 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-05 18:38:18,594 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,594 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,597 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,597 DEBUG L281 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-05 18:38:18,597 DEBUG L288 ransitionTransformer]: formula has changed [2018-04-05 18:38:18,597 DEBUG L289 ransitionTransformer]: old formula: [2018-04-05 18:38:18,598 DEBUG L290 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-05 18:38:18,598 DEBUG L291 ransitionTransformer]: new formula: [2018-04-05 18:38:18,598 DEBUG L292 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-05 18:38:18,598 DEBUG L296 ransitionTransformer]: invars have changed [2018-04-05 18:38:18,598 DEBUG L297 ransitionTransformer]: old invars: [2018-04-05 18:38:18,598 DEBUG L298 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-05 18:38:18,599 DEBUG L299 ransitionTransformer]: new invars: [2018-04-05 18:38:18,599 DEBUG L300 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-05 18:38:18,599 DEBUG L304 ransitionTransformer]: outvars have changed [2018-04-05 18:38:18,599 DEBUG L305 ransitionTransformer]: old outvars: [2018-04-05 18:38:18,599 DEBUG L306 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-05 18:38:18,599 DEBUG L307 ransitionTransformer]: new outvars: [2018-04-05 18:38:18,600 DEBUG L308 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-05 18:38:18,600 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,600 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,600 DEBUG L281 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-05 18:38:18,600 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,601 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,601 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,601 DEBUG L281 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-05 18:38:18,601 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,601 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,603 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,603 DEBUG L281 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-05 18:38:18,603 DEBUG L288 ransitionTransformer]: formula has changed [2018-04-05 18:38:18,603 DEBUG L289 ransitionTransformer]: old formula: [2018-04-05 18:38:18,604 DEBUG L290 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-05 18:38:18,604 DEBUG L291 ransitionTransformer]: new formula: [2018-04-05 18:38:18,604 DEBUG L292 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-05 18:38:18,604 DEBUG L296 ransitionTransformer]: invars have changed [2018-04-05 18:38:18,604 DEBUG L297 ransitionTransformer]: old invars: [2018-04-05 18:38:18,604 DEBUG L298 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-05 18:38:18,605 DEBUG L299 ransitionTransformer]: new invars: [2018-04-05 18:38:18,605 DEBUG L300 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-05 18:38:18,605 DEBUG L304 ransitionTransformer]: outvars have changed [2018-04-05 18:38:18,605 DEBUG L305 ransitionTransformer]: old outvars: [2018-04-05 18:38:18,605 DEBUG L306 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-05 18:38:18,606 DEBUG L307 ransitionTransformer]: new outvars: [2018-04-05 18:38:18,606 DEBUG L308 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-05 18:38:18,606 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,606 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,606 DEBUG L281 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-05 18:38:18,606 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,607 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,607 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,607 DEBUG L281 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-05 18:38:18,607 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,607 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,608 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,608 DEBUG L281 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-05 18:38:18,608 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,608 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,608 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,609 DEBUG L281 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-05 18:38:18,609 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,609 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,609 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,609 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{cstrncpy_#t~post2.base=|v_cstrncpy_#t~post2.base_6|, cstrncpy_#t~post2.offset=|v_cstrncpy_#t~post2.offset_5|} AuxVars[] AssignedVars[cstrncpy_#t~post2.offset, cstrncpy_#t~post2.base] [2018-04-05 18:38:18,609 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,609 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,610 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,610 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{cstrncpy_#t~post2.base=|v_cstrncpy_#t~post2.base_7|, cstrncpy_#t~post2.offset=|v_cstrncpy_#t~post2.offset_6|} AuxVars[] AssignedVars[cstrncpy_#t~post2.offset, cstrncpy_#t~post2.base] [2018-04-05 18:38:18,610 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,610 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,610 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,611 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{cstrncpy_#t~mem3=|v_cstrncpy_#t~mem3_4|} AuxVars[] AssignedVars[cstrncpy_#t~mem3] [2018-04-05 18:38:18,611 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,611 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,611 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,611 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{cstrncpy_#t~mem3=|v_cstrncpy_#t~mem3_6|} AuxVars[] AssignedVars[cstrncpy_#t~mem3] [2018-04-05 18:38:18,611 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,611 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,612 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,612 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{cstrncpy_#t~post1.offset=|v_cstrncpy_#t~post1.offset_5|, cstrncpy_#t~post1.base=|v_cstrncpy_#t~post1.base_6|} AuxVars[] AssignedVars[cstrncpy_#t~post1.offset, cstrncpy_#t~post1.base] [2018-04-05 18:38:18,612 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,612 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,612 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,613 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{cstrncpy_#t~post1.offset=|v_cstrncpy_#t~post1.offset_6|, cstrncpy_#t~post1.base=|v_cstrncpy_#t~post1.base_7|} AuxVars[] AssignedVars[cstrncpy_#t~post1.offset, cstrncpy_#t~post1.base] [2018-04-05 18:38:18,613 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,613 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,613 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,613 DEBUG L281 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-05 18:38:18,613 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,614 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,614 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,614 DEBUG L281 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-05 18:38:18,614 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,614 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,615 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,615 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-05 18:38:18,615 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,615 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,615 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,615 DEBUG L281 ransitionTransformer]: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-05 18:38:18,615 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,616 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,616 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,616 DEBUG L281 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-05 18:38:18,616 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,616 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,617 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,617 DEBUG L281 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-05 18:38:18,617 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,617 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,617 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,617 DEBUG L281 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-05 18:38:18,618 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,618 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,618 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,618 DEBUG L281 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-05 18:38:18,618 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,618 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,619 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,619 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{cstrncpy_#t~post4=|v_cstrncpy_#t~post4_4|} AuxVars[] AssignedVars[cstrncpy_#t~post4] [2018-04-05 18:38:18,619 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,619 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,619 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,619 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{cstrncpy_#t~post4=|v_cstrncpy_#t~post4_6|} AuxVars[] AssignedVars[cstrncpy_#t~post4] [2018-04-05 18:38:18,620 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,620 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,620 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,620 DEBUG L281 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-05 18:38:18,620 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,620 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,621 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,621 DEBUG L281 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-05 18:38:18,621 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,621 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,622 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,622 DEBUG L281 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-05 18:38:18,622 DEBUG L288 ransitionTransformer]: formula has changed [2018-04-05 18:38:18,622 DEBUG L289 ransitionTransformer]: old formula: [2018-04-05 18:38:18,622 DEBUG L290 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-05 18:38:18,623 DEBUG L291 ransitionTransformer]: new formula: [2018-04-05 18:38:18,623 DEBUG L292 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-05 18:38:18,623 DEBUG L296 ransitionTransformer]: invars have changed [2018-04-05 18:38:18,623 DEBUG L297 ransitionTransformer]: old invars: [2018-04-05 18:38:18,623 DEBUG L298 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-05 18:38:18,623 DEBUG L299 ransitionTransformer]: new invars: [2018-04-05 18:38:18,624 DEBUG L300 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-05 18:38:18,624 DEBUG L304 ransitionTransformer]: outvars have changed [2018-04-05 18:38:18,624 DEBUG L305 ransitionTransformer]: old outvars: [2018-04-05 18:38:18,624 DEBUG L306 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-05 18:38:18,624 DEBUG L307 ransitionTransformer]: new outvars: [2018-04-05 18:38:18,624 DEBUG L308 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-05 18:38:18,624 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,625 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,625 DEBUG L281 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-05 18:38:18,625 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,625 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,625 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,626 DEBUG L281 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-05 18:38:18,626 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,626 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,626 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,626 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{cstrncpy_#t~post5.base=|v_cstrncpy_#t~post5.base_6|, cstrncpy_#t~post5.offset=|v_cstrncpy_#t~post5.offset_5|} AuxVars[] AssignedVars[cstrncpy_#t~post5.offset, cstrncpy_#t~post5.base] [2018-04-05 18:38:18,627 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,627 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,627 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,627 DEBUG L281 ransitionTransformer]: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] [2018-04-05 18:38:18,627 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,627 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,628 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,628 DEBUG L281 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|} AuxVars[] AssignedVars[ULTIMATE.start_#t~ret8] [2018-04-05 18:38:18,628 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,628 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,628 DEBUG L280 ransitionTransformer]: transformed transition [2018-04-05 18:38:18,629 DEBUG L281 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|, main_#t~ret7.offset=|v_main_#t~ret7.offset_3|} AuxVars[] AssignedVars[main_#t~ret7.base, main_#t~ret7.offset] [2018-04-05 18:38:18,629 DEBUG L284 ransitionTransformer]: transformula unchanged [2018-04-05 18:38:18,629 DEBUG L310 ransitionTransformer]: [2018-04-05 18:38:18,629 INFO L100 SccComputation]: Graph consists of 0 InCaSumBalls and 9 non ball SCCs. Number of states in SCCs 9. [2018-04-05 18:38:18,631 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 05.04 06:38:18 BasicIcfg [2018-04-05 18:38:18,631 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2018-04-05 18:38:18,632 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-04-05 18:38:18,632 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-04-05 18:38:18,635 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-04-05 18:38:18,635 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 05.04 06:36:46" (1/4) ... [2018-04-05 18:38:18,636 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7a614896 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 05.04 06:38:18, skipping insertion in model container [2018-04-05 18:38:18,636 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.04 06:36:46" (2/4) ... [2018-04-05 18:38:18,636 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7a614896 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 05.04 06:38:18, skipping insertion in model container [2018-04-05 18:38:18,637 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 05.04 06:36:47" (3/4) ... [2018-04-05 18:38:18,637 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7a614896 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 05.04 06:38:18, skipping insertion in model container [2018-04-05 18:38:18,637 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 05.04 06:38:18" (4/4) ... [2018-04-05 18:38:18,638 INFO L107 eAbstractionObserver]: Analyzing ICFG memPartitionedIcfg [2018-04-05 18:38:18,647 INFO L131 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-04-05 18:38:18,654 INFO L143 ceAbstractionStarter]: Appying trace abstraction to program that has 7 error locations. [2018-04-05 18:38:18,688 INFO L128 ementStrategyFactory]: Using default assertion order modulation [2018-04-05 18:38:18,689 INFO L369 AbstractCegarLoop]: Interprodecural is true [2018-04-05 18:38:18,689 INFO L370 AbstractCegarLoop]: Hoare is true [2018-04-05 18:38:18,689 INFO L371 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-04-05 18:38:18,689 INFO L372 AbstractCegarLoop]: Backedges is TWOTRACK [2018-04-05 18:38:18,689 INFO L373 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-04-05 18:38:18,689 INFO L374 AbstractCegarLoop]: Difference is false [2018-04-05 18:38:18,690 INFO L375 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-04-05 18:38:18,690 INFO L380 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-04-05 18:38:18,690 INFO L87 2NestedWordAutomaton]: Mode: main mode - execution starts in main procedure [2018-04-05 18:38:18,699 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states. [2018-04-05 18:38:18,704 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2018-04-05 18:38:18,704 INFO L347 BasicCegarLoop]: Found error trace [2018-04-05 18:38:18,704 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-05 18:38:18,705 INFO L408 AbstractCegarLoop]: === Iteration 1 === [cstrncpyErr3RequiresViolation, cstrncpyErr5RequiresViolation, cstrncpyErr4RequiresViolation, cstrncpyErr2RequiresViolation, cstrncpyErr0RequiresViolation, cstrncpyErr1RequiresViolation, mainErr0EnsuresViolationMEMORY_LEAK]=== [2018-04-05 18:38:18,708 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-05 18:38:18,719 INFO L68 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2018-04-05 18:38:18,755 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-04-05 18:38:18,761 INFO L270 TraceCheckSpWp]: Computing forward predicates... [2018-04-05 18:38:18,774 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-05 18:38:18,775 INFO L314 TraceCheckSpWp]: Computing backward predicates... [2018-04-05 18:38:18,808 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-05 18:38:18,832 INFO L320 seRefinementStrategy]: Constructing automaton from 2 perfect and 0 imperfect interpolant sequences. [2018-04-05 18:38:18,832 INFO L335 seRefinementStrategy]: Number of different interpolants: perfect sequences [2, 2] imperfect sequences [] total 2 [2018-04-05 18:38:18,834 INFO L442 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-04-05 18:38:18,841 INFO L132 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-04-05 18:38:18,842 INFO L133 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-04-05 18:38:18,843 INFO L87 Difference]: Start difference. First operand 65 states. Second operand 2 states. [2018-04-05 18:38:18,860 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-04-05 18:38:18,860 INFO L93 Difference]: Finished difference Result 74 states and 78 transitions. [2018-04-05 18:38:18,861 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-04-05 18:38:18,862 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 26 [2018-04-05 18:38:18,862 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-04-05 18:38:18,869 INFO L225 Difference]: With dead ends: 74 [2018-04-05 18:38:18,869 INFO L226 Difference]: Without dead ends: 54 [2018-04-05 18:38:18,872 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-05 18:38:18,887 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2018-04-05 18:38:18,900 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 54. [2018-04-05 18:38:18,901 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 54 states. [2018-04-05 18:38:18,903 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 55 transitions. [2018-04-05 18:38:18,904 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 55 transitions. Word has length 26 [2018-04-05 18:38:18,904 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-04-05 18:38:18,904 INFO L459 AbstractCegarLoop]: Abstraction has 54 states and 55 transitions. [2018-04-05 18:38:18,904 INFO L460 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-04-05 18:38:18,904 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 55 transitions. [2018-04-05 18:38:18,905 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2018-04-05 18:38:18,905 INFO L347 BasicCegarLoop]: Found error trace [2018-04-05 18:38:18,906 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-05 18:38:18,906 INFO L408 AbstractCegarLoop]: === Iteration 2 === [cstrncpyErr3RequiresViolation, cstrncpyErr5RequiresViolation, cstrncpyErr4RequiresViolation, cstrncpyErr2RequiresViolation, cstrncpyErr0RequiresViolation, cstrncpyErr1RequiresViolation, mainErr0EnsuresViolationMEMORY_LEAK]=== [2018-04-05 18:38:18,906 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-05 18:38:18,916 INFO L68 tionRefinementEngine]: Using refinement strategy FixedRefinementStrategy [2018-04-05 18:38:18,936 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-04-05 18:38:18,950 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2018-04-05 18:38:18,989 INFO L421 BasicCegarLoop]: Counterexample might be feasible [2018-04-05 18:38:19,025 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 05.04 06:38:19 BasicIcfg [2018-04-05 18:38:19,026 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2018-04-05 18:38:19,026 INFO L168 Benchmark]: Toolchain (without parser) took 92305.82 ms. Allocated memory was 306.2 MB in the beginning and 821.6 MB in the end (delta: 515.4 MB). Free memory was 246.2 MB in the beginning and 679.9 MB in the end (delta: -433.7 MB). Peak memory consumption was 81.7 MB. Max. memory is 5.3 GB. [2018-04-05 18:38:19,027 INFO L168 Benchmark]: CDTParser took 0.19 ms. Allocated memory is still 306.2 MB. Free memory is still 266.2 MB. There was no memory consumed. Max. memory is 5.3 GB. [2018-04-05 18:38:19,027 INFO L168 Benchmark]: CACSL2BoogieTranslator took 224.13 ms. Allocated memory is still 306.2 MB. Free memory was 246.2 MB in the beginning and 236.0 MB in the end (delta: 10.2 MB). Peak memory consumption was 10.2 MB. Max. memory is 5.3 GB. [2018-04-05 18:38:19,027 INFO L168 Benchmark]: Boogie Preprocessor took 35.84 ms. Allocated memory is still 306.2 MB. Free memory was 236.0 MB in the beginning and 235.0 MB in the end (delta: 996.4 kB). Peak memory consumption was 996.4 kB. Max. memory is 5.3 GB. [2018-04-05 18:38:19,027 INFO L168 Benchmark]: RCFGBuilder took 343.66 ms. Allocated memory was 306.2 MB in the beginning and 467.1 MB in the end (delta: 161.0 MB). Free memory was 235.0 MB in the beginning and 433.2 MB in the end (delta: -198.1 MB). Peak memory consumption was 24.7 MB. Max. memory is 5.3 GB. [2018-04-05 18:38:19,028 INFO L168 Benchmark]: IcfgTransformer took 91303.17 ms. Allocated memory was 467.1 MB in the beginning and 821.6 MB in the end (delta: 354.4 MB). Free memory was 433.2 MB in the beginning and 753.3 MB in the end (delta: -320.1 MB). Peak memory consumption was 518.8 MB. Max. memory is 5.3 GB. [2018-04-05 18:38:19,028 INFO L168 Benchmark]: TraceAbstraction took 393.96 ms. Allocated memory is still 821.6 MB. Free memory was 753.3 MB in the beginning and 679.9 MB in the end (delta: 73.4 MB). Peak memory consumption was 73.4 MB. Max. memory is 5.3 GB. [2018-04-05 18:38:19,030 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.19 ms. Allocated memory is still 306.2 MB. Free memory is still 266.2 MB. There was no memory consumed. Max. memory is 5.3 GB. * CACSL2BoogieTranslator took 224.13 ms. Allocated memory is still 306.2 MB. Free memory was 246.2 MB in the beginning and 236.0 MB in the end (delta: 10.2 MB). Peak memory consumption was 10.2 MB. Max. memory is 5.3 GB. * Boogie Preprocessor took 35.84 ms. Allocated memory is still 306.2 MB. Free memory was 236.0 MB in the beginning and 235.0 MB in the end (delta: 996.4 kB). Peak memory consumption was 996.4 kB. Max. memory is 5.3 GB. * RCFGBuilder took 343.66 ms. Allocated memory was 306.2 MB in the beginning and 467.1 MB in the end (delta: 161.0 MB). Free memory was 235.0 MB in the beginning and 433.2 MB in the end (delta: -198.1 MB). Peak memory consumption was 24.7 MB. Max. memory is 5.3 GB. * IcfgTransformer took 91303.17 ms. Allocated memory was 467.1 MB in the beginning and 821.6 MB in the end (delta: 354.4 MB). Free memory was 433.2 MB in the beginning and 753.3 MB in the end (delta: -320.1 MB). Peak memory consumption was 518.8 MB. Max. memory is 5.3 GB. * TraceAbstraction took 393.96 ms. Allocated memory is still 821.6 MB. Free memory was 753.3 MB in the beginning and 679.9 MB in the end (delta: 73.4 MB). Peak memory consumption was 73.4 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 : 920 LocStat_NO_SUPPORTING_DISEQUALITIES : 194 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) : 10142.36 RENAME_VARIABLES(MILLISECONDS) : 413.25 UNFREEZE(MILLISECONDS) : 0.00 CONJOIN(MILLISECONDS) : 10125.18 PROJECTAWAY(MILLISECONDS) : 30323.45 ADD_WEAK_EQUALITY(MILLISECONDS) : 8.02 DISJOIN(MILLISECONDS) : 335.98 RENAME_VARIABLES_DISJUNCTIVE(MILLISECONDS) : 434.79 ADD_EQUALITY(MILLISECONDS) : 10.62 DISJOIN_DISJUNCTIVE(MILLISECONDS) : 0.00 ADD_DISEQUALITY(MILLISECONDS) : 0.34 #CONJOIN_DISJUNCTIVE : 462 #RENAME_VARIABLES : 951 #UNFREEZE : 0 #CONJOIN : 586 #PROJECTAWAY : 594 #ADD_WEAK_EQUALITY : 9 #DISJOIN : 112 #RENAME_VARIABLES_DISJUNCTIVE : 950 #ADD_EQUALITY : 84 #DISJOIN_DISJUNCTIVE : 0 #ADD_DISEQUALITY : 5 - StatisticsResult: WeqCcManagerStatistics FREEZE(MILLISECONDS) : 65587.76 ADDNODE(MILLISECONDS) : 0.00 MEET(MILLISECONDS) : 10114.31 FILTERREDUNDANT(MILLISECONDS) : 0.00 REPORTWEQ(MILLISECONDS) : 7.85 JOIN(MILLISECONDS) : 329.13 RENAMEVARS(MILLISECONDS) : 403.16 FLATTENLABELS(MILLISECONDS) : 0.00 COPY(MILLISECONDS) : 0.00 ISSTRONGERTHAN(MILLISECONDS) : 48460.83 ISLABELSTRONGERTHAN(MILLISECONDS) : 5962.82 ISWEQGRAPHSTRONGERTHAN(MILLISECONDS) : 471.01 UNFREEZE(MILLISECONDS) : 182.43 REPORTCONTAINS(MILLISECONDS) : 0.86 PROJECTAWAY(MILLISECONDS) : 30166.83 MEETEDGELABELS(MILLISECONDS) : 2642.57 REPORTEQUALITY(MILLISECONDS) : 331.89 ADDALLNODES(MILLISECONDS) : 165.49 REPORTDISEQUALITY(MILLISECONDS) : 3.63 WEQGRAPHJOIN(MILLISECONDS) : 248.38 #FREEZE : 6939 #ADDNODE : 0 #MEET : 406 #FILTERREDUNDANT : 0 #REPORTWEQ : 9 #JOIN : 112 #RENAMEVARS : 951 #FLATTENLABELS : 0 #COPY : 0 #ISSTRONGERTHAN : 2238 #ISLABELSTRONGERTHAN : 481790 #ISWEQGRAPHSTRONGERTHAN : 899 #UNFREEZE : 3268 #REPORTCONTAINS : 47 #PROJECTAWAY : 1911 #MEETEDGELABELS : 2678 #REPORTEQUALITY : 6425 #ADDALLNODES : 406 #REPORTDISEQUALITY : 1075 #WEQGRAPHJOIN : 112 - StatisticsResult: CcManagerStatistics ADDNODE(MILLISECONDS) : 0.00 MEET(MILLISECONDS) : 14652.80 REPORT_EQUALITY(MILLISECONDS) : 5059.65 FILTERREDUNDANT(MILLISECONDS) : 49010.20 ADD_ALL_ELEMENTS(MILLISECONDS) : 11129.85 JOIN(MILLISECONDS) : 55.50 ALIGN_ELEMENTS(MILLISECONDS) : 26033.60 COPY(MILLISECONDS) : 0.00 REPORT_DISEQUALITY(MILLISECONDS) : 771.48 UNFREEZE(MILLISECONDS) : 0.00 OVERALL(MILLISECONDS) : 50865.03 REPORTCONTAINS(MILLISECONDS) : 53.30 IS_STRONGER_THAN_NO_CACHING(MILLISECONDS) : 34718.41 REMOVE(MILLISECONDS) : 0.00 IS_STRONGER_THAN_W_CACHING(MILLISECONDS) : 0.00 PROJECT_TO_ELEMENTS(MILLISECONDS) : 3307.27 #ADDNODE : 0 #MEET : 42334 #REPORT_EQUALITY : 712767 #FILTERREDUNDANT : 989040 #ADD_ALL_ELEMENTS : 751231 #JOIN : 112 #ALIGN_ELEMENTS : 352973 #COPY : 0 #REPORT_DISEQUALITY : 191890 #UNFREEZE : 0 #OVERALL : 4430849 #REPORTCONTAINS : 6439 #IS_STRONGER_THAN_NO_CACHING : 1344617 #REMOVE : 0 #IS_STRONGER_THAN_W_CACHING : 0 #PROJECT_TO_ELEMENTS : 39446 * 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, s1={7:0}, s2={0:-1}] [L4] char *dst = s1; VAL [\old(n)=1, dst={7:0}, n=1, s1={7:0}, s1={7:0}, s2={0:-1}, s2={0:-1}] [L5] const char *src = s2; VAL [\old(n)=1, dst={7:0}, n=1, s1={7:0}, s1={7:0}, s2={0:-1}, s2={0:-1}, src={0:-1}] [L6] char *us; VAL [\old(n)=1, dst={7:0}, n=1, s1={7:0}, s1={7:0}, s2={0:-1}, s2={0:-1}, src={0:-1}] [L7] int n2; VAL [\old(n)=1, dst={7:0}, n=1, s1={7:0}, s1={7:0}, s2={0:-1}, s2={0:-1}, src={0:-1}] [L8] COND TRUE n > 0 VAL [\old(n)=1, dst={7:0}, n=1, s1={7:0}, s1={7:0}, s2={0:-1}, s2={0:-1}, src={0:-1}] [L9] n-- VAL [\old(n)=1, dst={7:0}, n=1, n--=1, s1={7:0}, s1={7:0}, s2={0:-1}, s2={0:-1}, src={0:-1}] [L9] n-- VAL [\old(n)=1, dst={7:0}, n=0, n--=1, s1={7:0}, s1={7:0}, s2={0:-1}, s2={0:-1}, src={0:-1}] [L10] dst++ VAL [\old(n)=1, dst={7:0}, dst++={7:0}, n=0, s1={7:0}, s1={7:0}, s2={0:-1}, s2={0:-1}, src={0:-1}] [L10] dst++ VAL [\old(n)=1, dst={7:1}, dst++={7:0}, n=0, s1={7:0}, s1={7:0}, s2={0:-1}, s2={0:-1}, src={0:-1}] [L10] src++ VAL [\old(n)=1, dst={7:1}, dst++={7:0}, n=0, s1={7:0}, s1={7:0}, 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=0, s1={7:0}, s1={7:0}, 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-05_18-38-19-042.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-05_18-38-19-042.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-05_18-38-19-042.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-05_18-38-19-042.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-05_18-38-19-042.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-05_18-38-19-042.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-05_18-38-19-042.csv Received shutdown request...