./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/list-properties/simple_built_from_end.i --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for memory safety (deref-memtrack) Using default analysis Version 8bd4bc60 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx12G -Xms1G -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerMemDerefMemtrack.xml -i ../sv-benchmarks/c/list-properties/simple_built_from_end.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 41b5142f2d6582efd6d9a128e4dfef83faaab097 ................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................ Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx12G -Xms1G -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerMemDerefMemtrack.xml -i ../sv-benchmarks/c/list-properties/simple_built_from_end.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 41b5142f2d6582efd6d9a128e4dfef83faaab097 ......................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................... Execution finished normally Writing output log to file Ultimate.log Result: UNKNOWN: Overapproximated counterexample --- Real Ultimate output --- This is Ultimate 0.1.25-8bd4bc6 [2020-07-29 01:10:38,212 INFO L177 SettingsManager]: Resetting all preferences to default values... [2020-07-29 01:10:38,215 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2020-07-29 01:10:38,234 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2020-07-29 01:10:38,235 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2020-07-29 01:10:38,237 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2020-07-29 01:10:38,240 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2020-07-29 01:10:38,250 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2020-07-29 01:10:38,252 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2020-07-29 01:10:38,255 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2020-07-29 01:10:38,257 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2020-07-29 01:10:38,259 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2020-07-29 01:10:38,260 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2020-07-29 01:10:38,264 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2020-07-29 01:10:38,266 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2020-07-29 01:10:38,268 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2020-07-29 01:10:38,271 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2020-07-29 01:10:38,273 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2020-07-29 01:10:38,275 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2020-07-29 01:10:38,280 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2020-07-29 01:10:38,285 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2020-07-29 01:10:38,289 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2020-07-29 01:10:38,292 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2020-07-29 01:10:38,293 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2020-07-29 01:10:38,296 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2020-07-29 01:10:38,296 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2020-07-29 01:10:38,296 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2020-07-29 01:10:38,298 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2020-07-29 01:10:38,299 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2020-07-29 01:10:38,300 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2020-07-29 01:10:38,300 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2020-07-29 01:10:38,302 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2020-07-29 01:10:38,303 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2020-07-29 01:10:38,303 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2020-07-29 01:10:38,306 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2020-07-29 01:10:38,306 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2020-07-29 01:10:38,307 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2020-07-29 01:10:38,307 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2020-07-29 01:10:38,308 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2020-07-29 01:10:38,309 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2020-07-29 01:10:38,310 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2020-07-29 01:10:38,311 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Default.epf [2020-07-29 01:10:38,330 INFO L113 SettingsManager]: Loading preferences was successful [2020-07-29 01:10:38,330 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2020-07-29 01:10:38,332 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2020-07-29 01:10:38,332 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2020-07-29 01:10:38,333 INFO L138 SettingsManager]: * Use SBE=true [2020-07-29 01:10:38,333 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2020-07-29 01:10:38,333 INFO L138 SettingsManager]: * sizeof long=4 [2020-07-29 01:10:38,334 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2020-07-29 01:10:38,334 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2020-07-29 01:10:38,334 INFO L138 SettingsManager]: * sizeof POINTER=4 [2020-07-29 01:10:38,335 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2020-07-29 01:10:38,335 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2020-07-29 01:10:38,335 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2020-07-29 01:10:38,335 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2020-07-29 01:10:38,336 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2020-07-29 01:10:38,336 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2020-07-29 01:10:38,336 INFO L138 SettingsManager]: * sizeof long double=12 [2020-07-29 01:10:38,337 INFO L138 SettingsManager]: * Use constant arrays=true [2020-07-29 01:10:38,337 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2020-07-29 01:10:38,338 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2020-07-29 01:10:38,338 INFO L138 SettingsManager]: * To the following directory=./dump/ [2020-07-29 01:10:38,338 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2020-07-29 01:10:38,338 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-29 01:10:38,339 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2020-07-29 01:10:38,339 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2020-07-29 01:10:38,339 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2020-07-29 01:10:38,340 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2020-07-29 01:10:38,340 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2020-07-29 01:10:38,340 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 41b5142f2d6582efd6d9a128e4dfef83faaab097 [2020-07-29 01:10:38,659 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2020-07-29 01:10:38,672 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2020-07-29 01:10:38,676 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2020-07-29 01:10:38,678 INFO L271 PluginConnector]: Initializing CDTParser... [2020-07-29 01:10:38,679 INFO L275 PluginConnector]: CDTParser initialized [2020-07-29 01:10:38,680 INFO L429 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/list-properties/simple_built_from_end.i [2020-07-29 01:10:38,748 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4e49819e0/03686189bd104e18ac96e558845a7170/FLAG837814795 [2020-07-29 01:10:39,315 INFO L306 CDTParser]: Found 1 translation units. [2020-07-29 01:10:39,316 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/list-properties/simple_built_from_end.i [2020-07-29 01:10:39,333 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4e49819e0/03686189bd104e18ac96e558845a7170/FLAG837814795 [2020-07-29 01:10:39,598 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4e49819e0/03686189bd104e18ac96e558845a7170 [2020-07-29 01:10:39,602 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2020-07-29 01:10:39,605 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2020-07-29 01:10:39,606 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2020-07-29 01:10:39,607 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2020-07-29 01:10:39,610 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2020-07-29 01:10:39,612 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 29.07 01:10:39" (1/1) ... [2020-07-29 01:10:39,616 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@77fcb3cc and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:10:39, skipping insertion in model container [2020-07-29 01:10:39,616 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 29.07 01:10:39" (1/1) ... [2020-07-29 01:10:39,624 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2020-07-29 01:10:39,682 INFO L178 MainTranslator]: Built tables and reachable declarations [2020-07-29 01:10:40,099 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-29 01:10:40,112 INFO L203 MainTranslator]: Completed pre-run [2020-07-29 01:10:40,160 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-29 01:10:40,217 INFO L208 MainTranslator]: Completed translation [2020-07-29 01:10:40,218 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:10:40 WrapperNode [2020-07-29 01:10:40,218 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2020-07-29 01:10:40,219 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2020-07-29 01:10:40,219 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2020-07-29 01:10:40,219 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2020-07-29 01:10:40,234 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:10:40" (1/1) ... [2020-07-29 01:10:40,234 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:10:40" (1/1) ... [2020-07-29 01:10:40,250 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:10:40" (1/1) ... [2020-07-29 01:10:40,250 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:10:40" (1/1) ... [2020-07-29 01:10:40,272 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:10:40" (1/1) ... [2020-07-29 01:10:40,279 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:10:40" (1/1) ... [2020-07-29 01:10:40,286 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:10:40" (1/1) ... [2020-07-29 01:10:40,299 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2020-07-29 01:10:40,299 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2020-07-29 01:10:40,300 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2020-07-29 01:10:40,300 INFO L275 PluginConnector]: RCFGBuilder initialized [2020-07-29 01:10:40,301 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:10:40" (1/1) ... No working directory specified, using /storage/repos/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 [2020-07-29 01:10:40,372 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2020-07-29 01:10:40,372 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2020-07-29 01:10:40,372 INFO L138 BoogieDeclarations]: Found implementation of procedure __bswap_32 [2020-07-29 01:10:40,373 INFO L138 BoogieDeclarations]: Found implementation of procedure __bswap_64 [2020-07-29 01:10:40,373 INFO L138 BoogieDeclarations]: Found implementation of procedure __uint16_identity [2020-07-29 01:10:40,373 INFO L138 BoogieDeclarations]: Found implementation of procedure __uint32_identity [2020-07-29 01:10:40,373 INFO L138 BoogieDeclarations]: Found implementation of procedure __uint64_identity [2020-07-29 01:10:40,374 INFO L138 BoogieDeclarations]: Found implementation of procedure myexit [2020-07-29 01:10:40,374 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2020-07-29 01:10:40,374 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_error [2020-07-29 01:10:40,374 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2020-07-29 01:10:40,375 INFO L130 BoogieDeclarations]: Found specification of procedure __ctype_get_mb_cur_max [2020-07-29 01:10:40,375 INFO L130 BoogieDeclarations]: Found specification of procedure atof [2020-07-29 01:10:40,375 INFO L130 BoogieDeclarations]: Found specification of procedure atoi [2020-07-29 01:10:40,375 INFO L130 BoogieDeclarations]: Found specification of procedure atol [2020-07-29 01:10:40,375 INFO L130 BoogieDeclarations]: Found specification of procedure atoll [2020-07-29 01:10:40,376 INFO L130 BoogieDeclarations]: Found specification of procedure strtod [2020-07-29 01:10:40,376 INFO L130 BoogieDeclarations]: Found specification of procedure strtof [2020-07-29 01:10:40,376 INFO L130 BoogieDeclarations]: Found specification of procedure strtold [2020-07-29 01:10:40,376 INFO L130 BoogieDeclarations]: Found specification of procedure strtol [2020-07-29 01:10:40,377 INFO L130 BoogieDeclarations]: Found specification of procedure strtoul [2020-07-29 01:10:40,377 INFO L130 BoogieDeclarations]: Found specification of procedure strtoq [2020-07-29 01:10:40,377 INFO L130 BoogieDeclarations]: Found specification of procedure strtouq [2020-07-29 01:10:40,377 INFO L130 BoogieDeclarations]: Found specification of procedure strtoll [2020-07-29 01:10:40,378 INFO L130 BoogieDeclarations]: Found specification of procedure strtoull [2020-07-29 01:10:40,378 INFO L130 BoogieDeclarations]: Found specification of procedure l64a [2020-07-29 01:10:40,378 INFO L130 BoogieDeclarations]: Found specification of procedure a64l [2020-07-29 01:10:40,378 INFO L130 BoogieDeclarations]: Found specification of procedure __bswap_32 [2020-07-29 01:10:40,379 INFO L130 BoogieDeclarations]: Found specification of procedure __bswap_64 [2020-07-29 01:10:40,379 INFO L130 BoogieDeclarations]: Found specification of procedure __uint16_identity [2020-07-29 01:10:40,379 INFO L130 BoogieDeclarations]: Found specification of procedure __uint32_identity [2020-07-29 01:10:40,379 INFO L130 BoogieDeclarations]: Found specification of procedure __uint64_identity [2020-07-29 01:10:40,379 INFO L130 BoogieDeclarations]: Found specification of procedure select [2020-07-29 01:10:40,380 INFO L130 BoogieDeclarations]: Found specification of procedure pselect [2020-07-29 01:10:40,380 INFO L130 BoogieDeclarations]: Found specification of procedure gnu_dev_major [2020-07-29 01:10:40,380 INFO L130 BoogieDeclarations]: Found specification of procedure gnu_dev_minor [2020-07-29 01:10:40,380 INFO L130 BoogieDeclarations]: Found specification of procedure gnu_dev_makedev [2020-07-29 01:10:40,380 INFO L130 BoogieDeclarations]: Found specification of procedure random [2020-07-29 01:10:40,381 INFO L130 BoogieDeclarations]: Found specification of procedure srandom [2020-07-29 01:10:40,381 INFO L130 BoogieDeclarations]: Found specification of procedure initstate [2020-07-29 01:10:40,381 INFO L130 BoogieDeclarations]: Found specification of procedure setstate [2020-07-29 01:10:40,381 INFO L130 BoogieDeclarations]: Found specification of procedure random_r [2020-07-29 01:10:40,381 INFO L130 BoogieDeclarations]: Found specification of procedure srandom_r [2020-07-29 01:10:40,382 INFO L130 BoogieDeclarations]: Found specification of procedure initstate_r [2020-07-29 01:10:40,382 INFO L130 BoogieDeclarations]: Found specification of procedure setstate_r [2020-07-29 01:10:40,382 INFO L130 BoogieDeclarations]: Found specification of procedure rand [2020-07-29 01:10:40,382 INFO L130 BoogieDeclarations]: Found specification of procedure srand [2020-07-29 01:10:40,382 INFO L130 BoogieDeclarations]: Found specification of procedure rand_r [2020-07-29 01:10:40,383 INFO L130 BoogieDeclarations]: Found specification of procedure drand48 [2020-07-29 01:10:40,383 INFO L130 BoogieDeclarations]: Found specification of procedure erand48 [2020-07-29 01:10:40,383 INFO L130 BoogieDeclarations]: Found specification of procedure lrand48 [2020-07-29 01:10:40,383 INFO L130 BoogieDeclarations]: Found specification of procedure nrand48 [2020-07-29 01:10:40,383 INFO L130 BoogieDeclarations]: Found specification of procedure mrand48 [2020-07-29 01:10:40,384 INFO L130 BoogieDeclarations]: Found specification of procedure jrand48 [2020-07-29 01:10:40,384 INFO L130 BoogieDeclarations]: Found specification of procedure srand48 [2020-07-29 01:10:40,384 INFO L130 BoogieDeclarations]: Found specification of procedure seed48 [2020-07-29 01:10:40,384 INFO L130 BoogieDeclarations]: Found specification of procedure lcong48 [2020-07-29 01:10:40,384 INFO L130 BoogieDeclarations]: Found specification of procedure drand48_r [2020-07-29 01:10:40,385 INFO L130 BoogieDeclarations]: Found specification of procedure erand48_r [2020-07-29 01:10:40,385 INFO L130 BoogieDeclarations]: Found specification of procedure lrand48_r [2020-07-29 01:10:40,385 INFO L130 BoogieDeclarations]: Found specification of procedure nrand48_r [2020-07-29 01:10:40,385 INFO L130 BoogieDeclarations]: Found specification of procedure mrand48_r [2020-07-29 01:10:40,385 INFO L130 BoogieDeclarations]: Found specification of procedure jrand48_r [2020-07-29 01:10:40,386 INFO L130 BoogieDeclarations]: Found specification of procedure srand48_r [2020-07-29 01:10:40,386 INFO L130 BoogieDeclarations]: Found specification of procedure seed48_r [2020-07-29 01:10:40,386 INFO L130 BoogieDeclarations]: Found specification of procedure lcong48_r [2020-07-29 01:10:40,386 INFO L130 BoogieDeclarations]: Found specification of procedure malloc [2020-07-29 01:10:40,386 INFO L130 BoogieDeclarations]: Found specification of procedure calloc [2020-07-29 01:10:40,387 INFO L130 BoogieDeclarations]: Found specification of procedure realloc [2020-07-29 01:10:40,387 INFO L130 BoogieDeclarations]: Found specification of procedure free [2020-07-29 01:10:40,387 INFO L130 BoogieDeclarations]: Found specification of procedure alloca [2020-07-29 01:10:40,387 INFO L130 BoogieDeclarations]: Found specification of procedure valloc [2020-07-29 01:10:40,388 INFO L130 BoogieDeclarations]: Found specification of procedure posix_memalign [2020-07-29 01:10:40,388 INFO L130 BoogieDeclarations]: Found specification of procedure aligned_alloc [2020-07-29 01:10:40,388 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2020-07-29 01:10:40,388 INFO L130 BoogieDeclarations]: Found specification of procedure atexit [2020-07-29 01:10:40,388 INFO L130 BoogieDeclarations]: Found specification of procedure at_quick_exit [2020-07-29 01:10:40,389 INFO L130 BoogieDeclarations]: Found specification of procedure on_exit [2020-07-29 01:10:40,389 INFO L130 BoogieDeclarations]: Found specification of procedure exit [2020-07-29 01:10:40,389 INFO L130 BoogieDeclarations]: Found specification of procedure quick_exit [2020-07-29 01:10:40,389 INFO L130 BoogieDeclarations]: Found specification of procedure _Exit [2020-07-29 01:10:40,389 INFO L130 BoogieDeclarations]: Found specification of procedure getenv [2020-07-29 01:10:40,390 INFO L130 BoogieDeclarations]: Found specification of procedure putenv [2020-07-29 01:10:40,390 INFO L130 BoogieDeclarations]: Found specification of procedure setenv [2020-07-29 01:10:40,390 INFO L130 BoogieDeclarations]: Found specification of procedure unsetenv [2020-07-29 01:10:40,390 INFO L130 BoogieDeclarations]: Found specification of procedure clearenv [2020-07-29 01:10:40,390 INFO L130 BoogieDeclarations]: Found specification of procedure mktemp [2020-07-29 01:10:40,391 INFO L130 BoogieDeclarations]: Found specification of procedure mkstemp [2020-07-29 01:10:40,391 INFO L130 BoogieDeclarations]: Found specification of procedure mkstemps [2020-07-29 01:10:40,391 INFO L130 BoogieDeclarations]: Found specification of procedure mkdtemp [2020-07-29 01:10:40,391 INFO L130 BoogieDeclarations]: Found specification of procedure system [2020-07-29 01:10:40,391 INFO L130 BoogieDeclarations]: Found specification of procedure realpath [2020-07-29 01:10:40,392 INFO L130 BoogieDeclarations]: Found specification of procedure bsearch [2020-07-29 01:10:40,392 INFO L130 BoogieDeclarations]: Found specification of procedure qsort [2020-07-29 01:10:40,392 INFO L130 BoogieDeclarations]: Found specification of procedure abs [2020-07-29 01:10:40,392 INFO L130 BoogieDeclarations]: Found specification of procedure labs [2020-07-29 01:10:40,392 INFO L130 BoogieDeclarations]: Found specification of procedure llabs [2020-07-29 01:10:40,393 INFO L130 BoogieDeclarations]: Found specification of procedure div [2020-07-29 01:10:40,393 INFO L130 BoogieDeclarations]: Found specification of procedure ldiv [2020-07-29 01:10:40,393 INFO L130 BoogieDeclarations]: Found specification of procedure lldiv [2020-07-29 01:10:40,393 INFO L130 BoogieDeclarations]: Found specification of procedure ecvt [2020-07-29 01:10:40,393 INFO L130 BoogieDeclarations]: Found specification of procedure fcvt [2020-07-29 01:10:40,394 INFO L130 BoogieDeclarations]: Found specification of procedure gcvt [2020-07-29 01:10:40,394 INFO L130 BoogieDeclarations]: Found specification of procedure qecvt [2020-07-29 01:10:40,394 INFO L130 BoogieDeclarations]: Found specification of procedure qfcvt [2020-07-29 01:10:40,394 INFO L130 BoogieDeclarations]: Found specification of procedure qgcvt [2020-07-29 01:10:40,394 INFO L130 BoogieDeclarations]: Found specification of procedure ecvt_r [2020-07-29 01:10:40,395 INFO L130 BoogieDeclarations]: Found specification of procedure fcvt_r [2020-07-29 01:10:40,395 INFO L130 BoogieDeclarations]: Found specification of procedure qecvt_r [2020-07-29 01:10:40,395 INFO L130 BoogieDeclarations]: Found specification of procedure qfcvt_r [2020-07-29 01:10:40,395 INFO L130 BoogieDeclarations]: Found specification of procedure mblen [2020-07-29 01:10:40,395 INFO L130 BoogieDeclarations]: Found specification of procedure mbtowc [2020-07-29 01:10:40,395 INFO L130 BoogieDeclarations]: Found specification of procedure wctomb [2020-07-29 01:10:40,396 INFO L130 BoogieDeclarations]: Found specification of procedure mbstowcs [2020-07-29 01:10:40,396 INFO L130 BoogieDeclarations]: Found specification of procedure wcstombs [2020-07-29 01:10:40,396 INFO L130 BoogieDeclarations]: Found specification of procedure rpmatch [2020-07-29 01:10:40,396 INFO L130 BoogieDeclarations]: Found specification of procedure getsubopt [2020-07-29 01:10:40,396 INFO L130 BoogieDeclarations]: Found specification of procedure getloadavg [2020-07-29 01:10:40,397 INFO L130 BoogieDeclarations]: Found specification of procedure myexit [2020-07-29 01:10:40,397 INFO L130 BoogieDeclarations]: Found specification of procedure main [2020-07-29 01:10:40,397 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2020-07-29 01:10:40,397 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2020-07-29 01:10:40,397 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2020-07-29 01:10:40,398 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2020-07-29 01:10:40,398 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2020-07-29 01:10:40,398 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2020-07-29 01:10:40,398 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2020-07-29 01:10:40,399 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2020-07-29 01:10:40,753 INFO L728 $ProcedureCfgBuilder]: dead code at ProgramPoint myexitFINAL: assume true; [2020-07-29 01:10:40,995 INFO L290 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2020-07-29 01:10:40,996 INFO L295 CfgBuilder]: Removed 2 assume(true) statements. [2020-07-29 01:10:40,999 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 29.07 01:10:40 BoogieIcfgContainer [2020-07-29 01:10:41,000 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2020-07-29 01:10:41,001 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2020-07-29 01:10:41,001 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2020-07-29 01:10:41,004 INFO L275 PluginConnector]: TraceAbstraction initialized [2020-07-29 01:10:41,005 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 29.07 01:10:39" (1/3) ... [2020-07-29 01:10:41,005 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@20f308f2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 29.07 01:10:41, skipping insertion in model container [2020-07-29 01:10:41,006 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:10:40" (2/3) ... [2020-07-29 01:10:41,006 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@20f308f2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 29.07 01:10:41, skipping insertion in model container [2020-07-29 01:10:41,006 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 29.07 01:10:40" (3/3) ... [2020-07-29 01:10:41,008 INFO L109 eAbstractionObserver]: Analyzing ICFG simple_built_from_end.i [2020-07-29 01:10:41,018 INFO L157 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2020-07-29 01:10:41,025 INFO L169 ceAbstractionStarter]: Appying trace abstraction to program that has 10 error locations. [2020-07-29 01:10:41,039 INFO L251 AbstractCegarLoop]: Starting to check reachability of 10 error locations. [2020-07-29 01:10:41,057 INFO L375 AbstractCegarLoop]: Interprodecural is true [2020-07-29 01:10:41,057 INFO L376 AbstractCegarLoop]: Hoare is false [2020-07-29 01:10:41,057 INFO L377 AbstractCegarLoop]: Compute interpolants for FPandBP [2020-07-29 01:10:41,058 INFO L378 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2020-07-29 01:10:41,058 INFO L379 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2020-07-29 01:10:41,058 INFO L380 AbstractCegarLoop]: Difference is false [2020-07-29 01:10:41,058 INFO L381 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2020-07-29 01:10:41,058 INFO L385 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2020-07-29 01:10:41,071 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states. [2020-07-29 01:10:41,080 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2020-07-29 01:10:41,080 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:10:41,082 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:10:41,082 INFO L427 AbstractCegarLoop]: === Iteration 1 === [mainErr6ASSERT_VIOLATIONMEMORY_LEAK, mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr8REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr9ENSURES_VIOLATIONMEMORY_LEAK, mainErr0REQUIRES_VIOLATION, mainErr1REQUIRES_VIOLATION, mainErr7REQUIRES_VIOLATION]=== [2020-07-29 01:10:41,088 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:10:41,088 INFO L82 PathProgramCache]: Analyzing trace with hash 870255052, now seen corresponding path program 1 times [2020-07-29 01:10:41,098 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 01:10:41,098 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [476547108] [2020-07-29 01:10:41,098 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 01:10:41,222 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:41,296 INFO L375 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2020-07-29 01:10:41,299 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:41,312 INFO L280 TraceCheckUtils]: 0: Hoare triple {43#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {38#true} is VALID [2020-07-29 01:10:41,313 INFO L280 TraceCheckUtils]: 1: Hoare triple {38#true} assume true; {38#true} is VALID [2020-07-29 01:10:41,313 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {38#true} {38#true} #80#return; {38#true} is VALID [2020-07-29 01:10:41,321 INFO L263 TraceCheckUtils]: 0: Hoare triple {38#true} call ULTIMATE.init(); {43#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-29 01:10:41,321 INFO L280 TraceCheckUtils]: 1: Hoare triple {43#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {38#true} is VALID [2020-07-29 01:10:41,322 INFO L280 TraceCheckUtils]: 2: Hoare triple {38#true} assume true; {38#true} is VALID [2020-07-29 01:10:41,322 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {38#true} {38#true} #80#return; {38#true} is VALID [2020-07-29 01:10:41,323 INFO L263 TraceCheckUtils]: 4: Hoare triple {38#true} call #t~ret6 := main(); {38#true} is VALID [2020-07-29 01:10:41,324 INFO L280 TraceCheckUtils]: 5: Hoare triple {38#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0, 0; {38#true} is VALID [2020-07-29 01:10:41,325 INFO L280 TraceCheckUtils]: 6: Hoare triple {38#true} assume !true; {39#false} is VALID [2020-07-29 01:10:41,326 INFO L280 TraceCheckUtils]: 7: Hoare triple {39#false} assume !!(~p~0.base != 0 || ~p~0.offset != 0); {39#false} is VALID [2020-07-29 01:10:41,326 INFO L280 TraceCheckUtils]: 8: Hoare triple {39#false} assume !(1 == #valid[~p~0.base]); {39#false} is VALID [2020-07-29 01:10:41,328 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:41,328 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [476547108] [2020-07-29 01:10:41,330 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-29 01:10:41,330 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2020-07-29 01:10:41,331 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1031620496] [2020-07-29 01:10:41,343 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 9 [2020-07-29 01:10:41,346 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:10:41,351 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2020-07-29 01:10:41,376 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 9 edges. 9 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:41,376 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2020-07-29 01:10:41,377 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-29 01:10:41,391 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2020-07-29 01:10:41,392 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2020-07-29 01:10:41,395 INFO L87 Difference]: Start difference. First operand 35 states. Second operand 3 states. [2020-07-29 01:10:41,710 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:41,712 INFO L93 Difference]: Finished difference Result 49 states and 53 transitions. [2020-07-29 01:10:41,712 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2020-07-29 01:10:41,713 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 9 [2020-07-29 01:10:41,713 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:10:41,715 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2020-07-29 01:10:41,744 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 60 transitions. [2020-07-29 01:10:41,745 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2020-07-29 01:10:41,750 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 60 transitions. [2020-07-29 01:10:41,750 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 60 transitions. [2020-07-29 01:10:41,847 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:41,861 INFO L225 Difference]: With dead ends: 49 [2020-07-29 01:10:41,862 INFO L226 Difference]: Without dead ends: 42 [2020-07-29 01:10:41,864 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2020-07-29 01:10:41,888 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states. [2020-07-29 01:10:41,911 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 36. [2020-07-29 01:10:41,912 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:10:41,913 INFO L82 GeneralOperation]: Start isEquivalent. First operand 42 states. Second operand 36 states. [2020-07-29 01:10:41,913 INFO L74 IsIncluded]: Start isIncluded. First operand 42 states. Second operand 36 states. [2020-07-29 01:10:41,914 INFO L87 Difference]: Start difference. First operand 42 states. Second operand 36 states. [2020-07-29 01:10:41,919 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:41,920 INFO L93 Difference]: Finished difference Result 42 states and 44 transitions. [2020-07-29 01:10:41,920 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 44 transitions. [2020-07-29 01:10:41,921 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:41,921 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:41,922 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand 42 states. [2020-07-29 01:10:41,922 INFO L87 Difference]: Start difference. First operand 36 states. Second operand 42 states. [2020-07-29 01:10:41,927 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:41,928 INFO L93 Difference]: Finished difference Result 42 states and 44 transitions. [2020-07-29 01:10:41,928 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 44 transitions. [2020-07-29 01:10:41,929 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:41,929 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:41,930 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:10:41,930 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:10:41,931 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 36 states. [2020-07-29 01:10:41,934 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 43 transitions. [2020-07-29 01:10:41,936 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 43 transitions. Word has length 9 [2020-07-29 01:10:41,936 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:10:41,936 INFO L479 AbstractCegarLoop]: Abstraction has 36 states and 43 transitions. [2020-07-29 01:10:41,937 INFO L480 AbstractCegarLoop]: Interpolant automaton has 3 states. [2020-07-29 01:10:41,937 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 43 transitions. [2020-07-29 01:10:41,938 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2020-07-29 01:10:41,938 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:10:41,938 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:10:41,939 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2020-07-29 01:10:41,939 INFO L427 AbstractCegarLoop]: === Iteration 2 === [mainErr6ASSERT_VIOLATIONMEMORY_LEAK, mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr8REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr9ENSURES_VIOLATIONMEMORY_LEAK, mainErr0REQUIRES_VIOLATION, mainErr1REQUIRES_VIOLATION, mainErr7REQUIRES_VIOLATION]=== [2020-07-29 01:10:41,940 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:10:41,940 INFO L82 PathProgramCache]: Analyzing trace with hash 1207451266, now seen corresponding path program 1 times [2020-07-29 01:10:41,940 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 01:10:41,941 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1153591548] [2020-07-29 01:10:41,941 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 01:10:41,960 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:42,019 INFO L375 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2020-07-29 01:10:42,022 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:42,046 INFO L280 TraceCheckUtils]: 0: Hoare triple {221#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {215#true} is VALID [2020-07-29 01:10:42,046 INFO L280 TraceCheckUtils]: 1: Hoare triple {215#true} assume true; {215#true} is VALID [2020-07-29 01:10:42,046 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {215#true} {215#true} #80#return; {215#true} is VALID [2020-07-29 01:10:42,048 INFO L263 TraceCheckUtils]: 0: Hoare triple {215#true} call ULTIMATE.init(); {221#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-29 01:10:42,048 INFO L280 TraceCheckUtils]: 1: Hoare triple {221#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {215#true} is VALID [2020-07-29 01:10:42,049 INFO L280 TraceCheckUtils]: 2: Hoare triple {215#true} assume true; {215#true} is VALID [2020-07-29 01:10:42,049 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {215#true} {215#true} #80#return; {215#true} is VALID [2020-07-29 01:10:42,050 INFO L263 TraceCheckUtils]: 4: Hoare triple {215#true} call #t~ret6 := main(); {215#true} is VALID [2020-07-29 01:10:42,051 INFO L280 TraceCheckUtils]: 5: Hoare triple {215#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0, 0; {220#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} is VALID [2020-07-29 01:10:42,053 INFO L280 TraceCheckUtils]: 6: Hoare triple {220#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {220#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} is VALID [2020-07-29 01:10:42,054 INFO L280 TraceCheckUtils]: 7: Hoare triple {220#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} assume !(0 != #t~nondet2);havoc #t~nondet2; {220#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} is VALID [2020-07-29 01:10:42,055 INFO L280 TraceCheckUtils]: 8: Hoare triple {220#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} assume !!(~p~0.base != 0 || ~p~0.offset != 0); {216#false} is VALID [2020-07-29 01:10:42,055 INFO L280 TraceCheckUtils]: 9: Hoare triple {216#false} assume !(1 == #valid[~p~0.base]); {216#false} is VALID [2020-07-29 01:10:42,057 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:42,057 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1153591548] [2020-07-29 01:10:42,058 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-29 01:10:42,058 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2020-07-29 01:10:42,058 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [995468510] [2020-07-29 01:10:42,061 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 10 [2020-07-29 01:10:42,061 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:10:42,061 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2020-07-29 01:10:42,079 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 10 edges. 10 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:42,079 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-07-29 01:10:42,080 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-29 01:10:42,080 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-07-29 01:10:42,080 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-29 01:10:42,081 INFO L87 Difference]: Start difference. First operand 36 states and 43 transitions. Second operand 4 states. [2020-07-29 01:10:42,275 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:42,275 INFO L93 Difference]: Finished difference Result 40 states and 41 transitions. [2020-07-29 01:10:42,276 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2020-07-29 01:10:42,276 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 10 [2020-07-29 01:10:42,277 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:10:42,277 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-29 01:10:42,280 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 42 transitions. [2020-07-29 01:10:42,281 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-29 01:10:42,284 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 42 transitions. [2020-07-29 01:10:42,284 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 42 transitions. [2020-07-29 01:10:42,350 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:42,354 INFO L225 Difference]: With dead ends: 40 [2020-07-29 01:10:42,354 INFO L226 Difference]: Without dead ends: 39 [2020-07-29 01:10:42,355 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2020-07-29 01:10:42,356 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2020-07-29 01:10:42,360 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 31. [2020-07-29 01:10:42,361 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:10:42,361 INFO L82 GeneralOperation]: Start isEquivalent. First operand 39 states. Second operand 31 states. [2020-07-29 01:10:42,362 INFO L74 IsIncluded]: Start isIncluded. First operand 39 states. Second operand 31 states. [2020-07-29 01:10:42,362 INFO L87 Difference]: Start difference. First operand 39 states. Second operand 31 states. [2020-07-29 01:10:42,370 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:42,374 INFO L93 Difference]: Finished difference Result 39 states and 40 transitions. [2020-07-29 01:10:42,374 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 40 transitions. [2020-07-29 01:10:42,375 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:42,375 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:42,375 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand 39 states. [2020-07-29 01:10:42,376 INFO L87 Difference]: Start difference. First operand 31 states. Second operand 39 states. [2020-07-29 01:10:42,380 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:42,380 INFO L93 Difference]: Finished difference Result 39 states and 40 transitions. [2020-07-29 01:10:42,383 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 40 transitions. [2020-07-29 01:10:42,384 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:42,384 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:42,385 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:10:42,385 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:10:42,385 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2020-07-29 01:10:42,389 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 32 transitions. [2020-07-29 01:10:42,390 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 32 transitions. Word has length 10 [2020-07-29 01:10:42,390 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:10:42,390 INFO L479 AbstractCegarLoop]: Abstraction has 31 states and 32 transitions. [2020-07-29 01:10:42,390 INFO L480 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-07-29 01:10:42,390 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 32 transitions. [2020-07-29 01:10:42,391 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2020-07-29 01:10:42,391 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:10:42,392 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:10:42,392 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2020-07-29 01:10:42,394 INFO L427 AbstractCegarLoop]: === Iteration 3 === [mainErr6ASSERT_VIOLATIONMEMORY_LEAK, mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr8REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr9ENSURES_VIOLATIONMEMORY_LEAK, mainErr0REQUIRES_VIOLATION, mainErr1REQUIRES_VIOLATION, mainErr7REQUIRES_VIOLATION]=== [2020-07-29 01:10:42,395 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:10:42,396 INFO L82 PathProgramCache]: Analyzing trace with hash 1207452581, now seen corresponding path program 1 times [2020-07-29 01:10:42,396 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 01:10:42,396 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2016689013] [2020-07-29 01:10:42,396 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 01:10:42,436 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:42,486 INFO L375 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2020-07-29 01:10:42,488 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:42,494 INFO L280 TraceCheckUtils]: 0: Hoare triple {381#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {375#true} is VALID [2020-07-29 01:10:42,495 INFO L280 TraceCheckUtils]: 1: Hoare triple {375#true} assume true; {375#true} is VALID [2020-07-29 01:10:42,495 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {375#true} {375#true} #80#return; {375#true} is VALID [2020-07-29 01:10:42,497 INFO L263 TraceCheckUtils]: 0: Hoare triple {375#true} call ULTIMATE.init(); {381#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-29 01:10:42,497 INFO L280 TraceCheckUtils]: 1: Hoare triple {381#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {375#true} is VALID [2020-07-29 01:10:42,497 INFO L280 TraceCheckUtils]: 2: Hoare triple {375#true} assume true; {375#true} is VALID [2020-07-29 01:10:42,498 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {375#true} {375#true} #80#return; {375#true} is VALID [2020-07-29 01:10:42,498 INFO L263 TraceCheckUtils]: 4: Hoare triple {375#true} call #t~ret6 := main(); {375#true} is VALID [2020-07-29 01:10:42,498 INFO L280 TraceCheckUtils]: 5: Hoare triple {375#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0, 0; {375#true} is VALID [2020-07-29 01:10:42,499 INFO L280 TraceCheckUtils]: 6: Hoare triple {375#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {375#true} is VALID [2020-07-29 01:10:42,500 INFO L280 TraceCheckUtils]: 7: Hoare triple {375#true} assume !!(0 != #t~nondet2);havoc #t~nondet2;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(8);~t~0.base, ~t~0.offset := #t~malloc3.base, #t~malloc3.offset; {380#(= 1 (select |#valid| main_~t~0.base))} is VALID [2020-07-29 01:10:42,501 INFO L280 TraceCheckUtils]: 8: Hoare triple {380#(= 1 (select |#valid| main_~t~0.base))} assume !(~t~0.base == 0 && ~t~0.offset == 0); {380#(= 1 (select |#valid| main_~t~0.base))} is VALID [2020-07-29 01:10:42,502 INFO L280 TraceCheckUtils]: 9: Hoare triple {380#(= 1 (select |#valid| main_~t~0.base))} assume !(1 == #valid[~t~0.base]); {376#false} is VALID [2020-07-29 01:10:42,503 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:42,503 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2016689013] [2020-07-29 01:10:42,503 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-29 01:10:42,504 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2020-07-29 01:10:42,504 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [433561529] [2020-07-29 01:10:42,504 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 10 [2020-07-29 01:10:42,505 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:10:42,505 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2020-07-29 01:10:42,519 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 10 edges. 10 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:42,519 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-07-29 01:10:42,519 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-29 01:10:42,520 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-07-29 01:10:42,520 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-29 01:10:42,520 INFO L87 Difference]: Start difference. First operand 31 states and 32 transitions. Second operand 4 states. [2020-07-29 01:10:42,667 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:42,667 INFO L93 Difference]: Finished difference Result 29 states and 30 transitions. [2020-07-29 01:10:42,667 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2020-07-29 01:10:42,667 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 10 [2020-07-29 01:10:42,668 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:10:42,668 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-29 01:10:42,671 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 32 transitions. [2020-07-29 01:10:42,671 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-29 01:10:42,675 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 32 transitions. [2020-07-29 01:10:42,675 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 32 transitions. [2020-07-29 01:10:42,747 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:42,749 INFO L225 Difference]: With dead ends: 29 [2020-07-29 01:10:42,750 INFO L226 Difference]: Without dead ends: 29 [2020-07-29 01:10:42,750 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-29 01:10:42,751 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2020-07-29 01:10:42,759 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2020-07-29 01:10:42,760 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:10:42,760 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand 29 states. [2020-07-29 01:10:42,761 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 29 states. [2020-07-29 01:10:42,761 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 29 states. [2020-07-29 01:10:42,765 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:42,766 INFO L93 Difference]: Finished difference Result 29 states and 30 transitions. [2020-07-29 01:10:42,766 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 30 transitions. [2020-07-29 01:10:42,768 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:42,769 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:42,769 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 29 states. [2020-07-29 01:10:42,770 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 29 states. [2020-07-29 01:10:42,776 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:42,779 INFO L93 Difference]: Finished difference Result 29 states and 30 transitions. [2020-07-29 01:10:42,779 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 30 transitions. [2020-07-29 01:10:42,780 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:42,781 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:42,781 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:10:42,781 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:10:42,785 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2020-07-29 01:10:42,791 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 30 transitions. [2020-07-29 01:10:42,791 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 30 transitions. Word has length 10 [2020-07-29 01:10:42,792 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:10:42,792 INFO L479 AbstractCegarLoop]: Abstraction has 29 states and 30 transitions. [2020-07-29 01:10:42,792 INFO L480 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-07-29 01:10:42,793 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 30 transitions. [2020-07-29 01:10:42,793 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2020-07-29 01:10:42,793 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:10:42,793 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:10:42,794 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2020-07-29 01:10:42,794 INFO L427 AbstractCegarLoop]: === Iteration 4 === [mainErr6ASSERT_VIOLATIONMEMORY_LEAK, mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr8REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr9ENSURES_VIOLATIONMEMORY_LEAK, mainErr0REQUIRES_VIOLATION, mainErr1REQUIRES_VIOLATION, mainErr7REQUIRES_VIOLATION]=== [2020-07-29 01:10:42,796 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:10:42,797 INFO L82 PathProgramCache]: Analyzing trace with hash 1207452582, now seen corresponding path program 1 times [2020-07-29 01:10:42,797 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 01:10:42,798 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [370197462] [2020-07-29 01:10:42,798 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 01:10:42,817 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:42,873 INFO L375 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2020-07-29 01:10:42,875 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:42,889 INFO L280 TraceCheckUtils]: 0: Hoare triple {506#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {500#true} is VALID [2020-07-29 01:10:42,890 INFO L280 TraceCheckUtils]: 1: Hoare triple {500#true} assume true; {500#true} is VALID [2020-07-29 01:10:42,890 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {500#true} {500#true} #80#return; {500#true} is VALID [2020-07-29 01:10:42,892 INFO L263 TraceCheckUtils]: 0: Hoare triple {500#true} call ULTIMATE.init(); {506#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-29 01:10:42,892 INFO L280 TraceCheckUtils]: 1: Hoare triple {506#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {500#true} is VALID [2020-07-29 01:10:42,893 INFO L280 TraceCheckUtils]: 2: Hoare triple {500#true} assume true; {500#true} is VALID [2020-07-29 01:10:42,893 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {500#true} {500#true} #80#return; {500#true} is VALID [2020-07-29 01:10:42,893 INFO L263 TraceCheckUtils]: 4: Hoare triple {500#true} call #t~ret6 := main(); {500#true} is VALID [2020-07-29 01:10:42,894 INFO L280 TraceCheckUtils]: 5: Hoare triple {500#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0, 0; {500#true} is VALID [2020-07-29 01:10:42,894 INFO L280 TraceCheckUtils]: 6: Hoare triple {500#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {500#true} is VALID [2020-07-29 01:10:42,896 INFO L280 TraceCheckUtils]: 7: Hoare triple {500#true} assume !!(0 != #t~nondet2);havoc #t~nondet2;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(8);~t~0.base, ~t~0.offset := #t~malloc3.base, #t~malloc3.offset; {505#(and (= 8 (select |#length| main_~t~0.base)) (= 0 main_~t~0.offset))} is VALID [2020-07-29 01:10:42,897 INFO L280 TraceCheckUtils]: 8: Hoare triple {505#(and (= 8 (select |#length| main_~t~0.base)) (= 0 main_~t~0.offset))} assume !(~t~0.base == 0 && ~t~0.offset == 0); {505#(and (= 8 (select |#length| main_~t~0.base)) (= 0 main_~t~0.offset))} is VALID [2020-07-29 01:10:42,902 INFO L280 TraceCheckUtils]: 9: Hoare triple {505#(and (= 8 (select |#length| main_~t~0.base)) (= 0 main_~t~0.offset))} assume !(4 + ~t~0.offset <= #length[~t~0.base] && 0 <= ~t~0.offset); {501#false} is VALID [2020-07-29 01:10:42,903 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:42,903 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [370197462] [2020-07-29 01:10:42,904 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-29 01:10:42,904 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2020-07-29 01:10:42,907 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1389721147] [2020-07-29 01:10:42,907 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 10 [2020-07-29 01:10:42,908 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:10:42,908 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2020-07-29 01:10:42,924 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 10 edges. 10 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:42,925 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-07-29 01:10:42,925 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-29 01:10:42,925 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-07-29 01:10:42,926 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-29 01:10:42,926 INFO L87 Difference]: Start difference. First operand 29 states and 30 transitions. Second operand 4 states. [2020-07-29 01:10:43,074 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:43,074 INFO L93 Difference]: Finished difference Result 27 states and 28 transitions. [2020-07-29 01:10:43,074 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2020-07-29 01:10:43,074 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 10 [2020-07-29 01:10:43,074 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:10:43,075 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-29 01:10:43,076 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 30 transitions. [2020-07-29 01:10:43,077 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-29 01:10:43,078 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 30 transitions. [2020-07-29 01:10:43,078 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 30 transitions. [2020-07-29 01:10:43,134 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:43,135 INFO L225 Difference]: With dead ends: 27 [2020-07-29 01:10:43,135 INFO L226 Difference]: Without dead ends: 27 [2020-07-29 01:10:43,135 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-29 01:10:43,136 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2020-07-29 01:10:43,138 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2020-07-29 01:10:43,138 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:10:43,138 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand 27 states. [2020-07-29 01:10:43,138 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand 27 states. [2020-07-29 01:10:43,138 INFO L87 Difference]: Start difference. First operand 27 states. Second operand 27 states. [2020-07-29 01:10:43,141 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:43,141 INFO L93 Difference]: Finished difference Result 27 states and 28 transitions. [2020-07-29 01:10:43,141 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 28 transitions. [2020-07-29 01:10:43,142 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:43,143 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:43,143 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand 27 states. [2020-07-29 01:10:43,143 INFO L87 Difference]: Start difference. First operand 27 states. Second operand 27 states. [2020-07-29 01:10:43,147 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:43,147 INFO L93 Difference]: Finished difference Result 27 states and 28 transitions. [2020-07-29 01:10:43,147 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 28 transitions. [2020-07-29 01:10:43,148 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:43,148 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:43,148 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:10:43,148 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:10:43,148 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2020-07-29 01:10:43,150 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 28 transitions. [2020-07-29 01:10:43,150 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 28 transitions. Word has length 10 [2020-07-29 01:10:43,151 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:10:43,151 INFO L479 AbstractCegarLoop]: Abstraction has 27 states and 28 transitions. [2020-07-29 01:10:43,151 INFO L480 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-07-29 01:10:43,151 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 28 transitions. [2020-07-29 01:10:43,152 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2020-07-29 01:10:43,152 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:10:43,152 INFO L422 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:10:43,152 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2020-07-29 01:10:43,153 INFO L427 AbstractCegarLoop]: === Iteration 5 === [mainErr6ASSERT_VIOLATIONMEMORY_LEAK, mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr8REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr9ENSURES_VIOLATIONMEMORY_LEAK, mainErr0REQUIRES_VIOLATION, mainErr1REQUIRES_VIOLATION, mainErr7REQUIRES_VIOLATION]=== [2020-07-29 01:10:43,153 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:10:43,153 INFO L82 PathProgramCache]: Analyzing trace with hash -821123348, now seen corresponding path program 1 times [2020-07-29 01:10:43,154 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 01:10:43,154 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [170052558] [2020-07-29 01:10:43,154 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 01:10:43,204 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:43,270 INFO L375 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2020-07-29 01:10:43,272 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:43,281 INFO L280 TraceCheckUtils]: 0: Hoare triple {624#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {617#true} is VALID [2020-07-29 01:10:43,281 INFO L280 TraceCheckUtils]: 1: Hoare triple {617#true} assume true; {617#true} is VALID [2020-07-29 01:10:43,281 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {617#true} {617#true} #80#return; {617#true} is VALID [2020-07-29 01:10:43,283 INFO L263 TraceCheckUtils]: 0: Hoare triple {617#true} call ULTIMATE.init(); {624#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-29 01:10:43,283 INFO L280 TraceCheckUtils]: 1: Hoare triple {624#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {617#true} is VALID [2020-07-29 01:10:43,283 INFO L280 TraceCheckUtils]: 2: Hoare triple {617#true} assume true; {617#true} is VALID [2020-07-29 01:10:43,284 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {617#true} {617#true} #80#return; {617#true} is VALID [2020-07-29 01:10:43,284 INFO L263 TraceCheckUtils]: 4: Hoare triple {617#true} call #t~ret6 := main(); {617#true} is VALID [2020-07-29 01:10:43,284 INFO L280 TraceCheckUtils]: 5: Hoare triple {617#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0, 0; {617#true} is VALID [2020-07-29 01:10:43,285 INFO L280 TraceCheckUtils]: 6: Hoare triple {617#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {617#true} is VALID [2020-07-29 01:10:43,285 INFO L280 TraceCheckUtils]: 7: Hoare triple {617#true} assume !!(0 != #t~nondet2);havoc #t~nondet2;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(8);~t~0.base, ~t~0.offset := #t~malloc3.base, #t~malloc3.offset; {617#true} is VALID [2020-07-29 01:10:43,285 INFO L280 TraceCheckUtils]: 8: Hoare triple {617#true} assume !(~t~0.base == 0 && ~t~0.offset == 0); {617#true} is VALID [2020-07-29 01:10:43,286 INFO L280 TraceCheckUtils]: 9: Hoare triple {617#true} SUMMARY for call write~int(1, ~t~0.base, ~t~0.offset, 4); srcloc: L525-3 {622#(= 1 (select |#valid| main_~t~0.base))} is VALID [2020-07-29 01:10:43,287 INFO L280 TraceCheckUtils]: 10: Hoare triple {622#(= 1 (select |#valid| main_~t~0.base))} SUMMARY for call write~$Pointer$(~p~0.base, ~p~0.offset, ~t~0.base, 4 + ~t~0.offset, 4); srcloc: L526 {622#(= 1 (select |#valid| main_~t~0.base))} is VALID [2020-07-29 01:10:43,288 INFO L280 TraceCheckUtils]: 11: Hoare triple {622#(= 1 (select |#valid| main_~t~0.base))} ~p~0.base, ~p~0.offset := ~t~0.base, ~t~0.offset; {623#(= 1 (select |#valid| main_~p~0.base))} is VALID [2020-07-29 01:10:43,289 INFO L280 TraceCheckUtils]: 12: Hoare triple {623#(= 1 (select |#valid| main_~p~0.base))} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {623#(= 1 (select |#valid| main_~p~0.base))} is VALID [2020-07-29 01:10:43,289 INFO L280 TraceCheckUtils]: 13: Hoare triple {623#(= 1 (select |#valid| main_~p~0.base))} assume !(0 != #t~nondet2);havoc #t~nondet2; {623#(= 1 (select |#valid| main_~p~0.base))} is VALID [2020-07-29 01:10:43,290 INFO L280 TraceCheckUtils]: 14: Hoare triple {623#(= 1 (select |#valid| main_~p~0.base))} assume !!(~p~0.base != 0 || ~p~0.offset != 0); {623#(= 1 (select |#valid| main_~p~0.base))} is VALID [2020-07-29 01:10:43,291 INFO L280 TraceCheckUtils]: 15: Hoare triple {623#(= 1 (select |#valid| main_~p~0.base))} assume !(1 == #valid[~p~0.base]); {618#false} is VALID [2020-07-29 01:10:43,292 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:43,292 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [170052558] [2020-07-29 01:10:43,293 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-29 01:10:43,293 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2020-07-29 01:10:43,293 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1580279443] [2020-07-29 01:10:43,294 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 16 [2020-07-29 01:10:43,294 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:10:43,294 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2020-07-29 01:10:43,317 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:43,317 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2020-07-29 01:10:43,317 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-29 01:10:43,318 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2020-07-29 01:10:43,318 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2020-07-29 01:10:43,318 INFO L87 Difference]: Start difference. First operand 27 states and 28 transitions. Second operand 5 states. [2020-07-29 01:10:43,526 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:43,526 INFO L93 Difference]: Finished difference Result 35 states and 36 transitions. [2020-07-29 01:10:43,526 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2020-07-29 01:10:43,527 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 16 [2020-07-29 01:10:43,527 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:10:43,527 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-29 01:10:43,529 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 38 transitions. [2020-07-29 01:10:43,529 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-29 01:10:43,531 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 38 transitions. [2020-07-29 01:10:43,531 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 38 transitions. [2020-07-29 01:10:43,585 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:43,586 INFO L225 Difference]: With dead ends: 35 [2020-07-29 01:10:43,586 INFO L226 Difference]: Without dead ends: 35 [2020-07-29 01:10:43,587 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2020-07-29 01:10:43,587 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2020-07-29 01:10:43,590 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 28. [2020-07-29 01:10:43,590 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:10:43,590 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand 28 states. [2020-07-29 01:10:43,591 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand 28 states. [2020-07-29 01:10:43,591 INFO L87 Difference]: Start difference. First operand 35 states. Second operand 28 states. [2020-07-29 01:10:43,593 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:43,593 INFO L93 Difference]: Finished difference Result 35 states and 36 transitions. [2020-07-29 01:10:43,593 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 36 transitions. [2020-07-29 01:10:43,594 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:43,594 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:43,594 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand 35 states. [2020-07-29 01:10:43,594 INFO L87 Difference]: Start difference. First operand 28 states. Second operand 35 states. [2020-07-29 01:10:43,596 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:43,596 INFO L93 Difference]: Finished difference Result 35 states and 36 transitions. [2020-07-29 01:10:43,596 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 36 transitions. [2020-07-29 01:10:43,597 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:43,597 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:43,597 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:10:43,597 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:10:43,598 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 28 states. [2020-07-29 01:10:43,599 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 31 transitions. [2020-07-29 01:10:43,599 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 31 transitions. Word has length 16 [2020-07-29 01:10:43,599 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:10:43,600 INFO L479 AbstractCegarLoop]: Abstraction has 28 states and 31 transitions. [2020-07-29 01:10:43,600 INFO L480 AbstractCegarLoop]: Interpolant automaton has 5 states. [2020-07-29 01:10:43,600 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 31 transitions. [2020-07-29 01:10:43,600 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2020-07-29 01:10:43,600 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:10:43,601 INFO L422 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:10:43,601 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2020-07-29 01:10:43,601 INFO L427 AbstractCegarLoop]: === Iteration 6 === [mainErr6ASSERT_VIOLATIONMEMORY_LEAK, mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr8REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr9ENSURES_VIOLATIONMEMORY_LEAK, mainErr0REQUIRES_VIOLATION, mainErr1REQUIRES_VIOLATION, mainErr7REQUIRES_VIOLATION]=== [2020-07-29 01:10:43,601 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:10:43,602 INFO L82 PathProgramCache]: Analyzing trace with hash -821123347, now seen corresponding path program 1 times [2020-07-29 01:10:43,602 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 01:10:43,602 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [952336186] [2020-07-29 01:10:43,602 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 01:10:43,620 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:43,715 INFO L375 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2020-07-29 01:10:43,716 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:43,725 INFO L280 TraceCheckUtils]: 0: Hoare triple {770#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {763#true} is VALID [2020-07-29 01:10:43,726 INFO L280 TraceCheckUtils]: 1: Hoare triple {763#true} assume true; {763#true} is VALID [2020-07-29 01:10:43,726 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {763#true} {763#true} #80#return; {763#true} is VALID [2020-07-29 01:10:43,737 INFO L263 TraceCheckUtils]: 0: Hoare triple {763#true} call ULTIMATE.init(); {770#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-29 01:10:43,737 INFO L280 TraceCheckUtils]: 1: Hoare triple {770#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {763#true} is VALID [2020-07-29 01:10:43,737 INFO L280 TraceCheckUtils]: 2: Hoare triple {763#true} assume true; {763#true} is VALID [2020-07-29 01:10:43,738 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {763#true} {763#true} #80#return; {763#true} is VALID [2020-07-29 01:10:43,738 INFO L263 TraceCheckUtils]: 4: Hoare triple {763#true} call #t~ret6 := main(); {763#true} is VALID [2020-07-29 01:10:43,738 INFO L280 TraceCheckUtils]: 5: Hoare triple {763#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0, 0; {763#true} is VALID [2020-07-29 01:10:43,738 INFO L280 TraceCheckUtils]: 6: Hoare triple {763#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {763#true} is VALID [2020-07-29 01:10:43,741 INFO L280 TraceCheckUtils]: 7: Hoare triple {763#true} assume !!(0 != #t~nondet2);havoc #t~nondet2;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(8);~t~0.base, ~t~0.offset := #t~malloc3.base, #t~malloc3.offset; {768#(and (= 8 (select |#length| main_~t~0.base)) (= 0 main_~t~0.offset))} is VALID [2020-07-29 01:10:43,741 INFO L280 TraceCheckUtils]: 8: Hoare triple {768#(and (= 8 (select |#length| main_~t~0.base)) (= 0 main_~t~0.offset))} assume !(~t~0.base == 0 && ~t~0.offset == 0); {768#(and (= 8 (select |#length| main_~t~0.base)) (= 0 main_~t~0.offset))} is VALID [2020-07-29 01:10:43,742 INFO L280 TraceCheckUtils]: 9: Hoare triple {768#(and (= 8 (select |#length| main_~t~0.base)) (= 0 main_~t~0.offset))} SUMMARY for call write~int(1, ~t~0.base, ~t~0.offset, 4); srcloc: L525-3 {768#(and (= 8 (select |#length| main_~t~0.base)) (= 0 main_~t~0.offset))} is VALID [2020-07-29 01:10:43,744 INFO L280 TraceCheckUtils]: 10: Hoare triple {768#(and (= 8 (select |#length| main_~t~0.base)) (= 0 main_~t~0.offset))} SUMMARY for call write~$Pointer$(~p~0.base, ~p~0.offset, ~t~0.base, 4 + ~t~0.offset, 4); srcloc: L526 {768#(and (= 8 (select |#length| main_~t~0.base)) (= 0 main_~t~0.offset))} is VALID [2020-07-29 01:10:43,745 INFO L280 TraceCheckUtils]: 11: Hoare triple {768#(and (= 8 (select |#length| main_~t~0.base)) (= 0 main_~t~0.offset))} ~p~0.base, ~p~0.offset := ~t~0.base, ~t~0.offset; {769#(and (= 8 (select |#length| main_~p~0.base)) (= 0 main_~p~0.offset))} is VALID [2020-07-29 01:10:43,746 INFO L280 TraceCheckUtils]: 12: Hoare triple {769#(and (= 8 (select |#length| main_~p~0.base)) (= 0 main_~p~0.offset))} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {769#(and (= 8 (select |#length| main_~p~0.base)) (= 0 main_~p~0.offset))} is VALID [2020-07-29 01:10:43,747 INFO L280 TraceCheckUtils]: 13: Hoare triple {769#(and (= 8 (select |#length| main_~p~0.base)) (= 0 main_~p~0.offset))} assume !(0 != #t~nondet2);havoc #t~nondet2; {769#(and (= 8 (select |#length| main_~p~0.base)) (= 0 main_~p~0.offset))} is VALID [2020-07-29 01:10:43,748 INFO L280 TraceCheckUtils]: 14: Hoare triple {769#(and (= 8 (select |#length| main_~p~0.base)) (= 0 main_~p~0.offset))} assume !!(~p~0.base != 0 || ~p~0.offset != 0); {769#(and (= 8 (select |#length| main_~p~0.base)) (= 0 main_~p~0.offset))} is VALID [2020-07-29 01:10:43,749 INFO L280 TraceCheckUtils]: 15: Hoare triple {769#(and (= 8 (select |#length| main_~p~0.base)) (= 0 main_~p~0.offset))} assume !(4 + ~p~0.offset <= #length[~p~0.base] && 0 <= ~p~0.offset); {764#false} is VALID [2020-07-29 01:10:43,750 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:43,750 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [952336186] [2020-07-29 01:10:43,750 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-29 01:10:43,751 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2020-07-29 01:10:43,752 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1098429027] [2020-07-29 01:10:43,752 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 16 [2020-07-29 01:10:43,753 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:10:43,753 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2020-07-29 01:10:43,770 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:43,770 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2020-07-29 01:10:43,770 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-29 01:10:43,770 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2020-07-29 01:10:43,771 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2020-07-29 01:10:43,771 INFO L87 Difference]: Start difference. First operand 28 states and 31 transitions. Second operand 5 states. [2020-07-29 01:10:44,017 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:44,017 INFO L93 Difference]: Finished difference Result 39 states and 40 transitions. [2020-07-29 01:10:44,017 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2020-07-29 01:10:44,018 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 16 [2020-07-29 01:10:44,018 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:10:44,018 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-29 01:10:44,020 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 42 transitions. [2020-07-29 01:10:44,020 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-29 01:10:44,022 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 42 transitions. [2020-07-29 01:10:44,022 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 42 transitions. [2020-07-29 01:10:44,078 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:44,079 INFO L225 Difference]: With dead ends: 39 [2020-07-29 01:10:44,080 INFO L226 Difference]: Without dead ends: 39 [2020-07-29 01:10:44,080 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2020-07-29 01:10:44,081 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2020-07-29 01:10:44,084 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 30. [2020-07-29 01:10:44,084 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:10:44,085 INFO L82 GeneralOperation]: Start isEquivalent. First operand 39 states. Second operand 30 states. [2020-07-29 01:10:44,085 INFO L74 IsIncluded]: Start isIncluded. First operand 39 states. Second operand 30 states. [2020-07-29 01:10:44,085 INFO L87 Difference]: Start difference. First operand 39 states. Second operand 30 states. [2020-07-29 01:10:44,087 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:44,087 INFO L93 Difference]: Finished difference Result 39 states and 40 transitions. [2020-07-29 01:10:44,087 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 40 transitions. [2020-07-29 01:10:44,088 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:44,088 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:44,088 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand 39 states. [2020-07-29 01:10:44,088 INFO L87 Difference]: Start difference. First operand 30 states. Second operand 39 states. [2020-07-29 01:10:44,090 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:44,091 INFO L93 Difference]: Finished difference Result 39 states and 40 transitions. [2020-07-29 01:10:44,091 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 40 transitions. [2020-07-29 01:10:44,091 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:44,091 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:44,092 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:10:44,092 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:10:44,092 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2020-07-29 01:10:44,093 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 33 transitions. [2020-07-29 01:10:44,094 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 33 transitions. Word has length 16 [2020-07-29 01:10:44,094 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:10:44,094 INFO L479 AbstractCegarLoop]: Abstraction has 30 states and 33 transitions. [2020-07-29 01:10:44,094 INFO L480 AbstractCegarLoop]: Interpolant automaton has 5 states. [2020-07-29 01:10:44,095 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 33 transitions. [2020-07-29 01:10:44,095 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2020-07-29 01:10:44,095 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:10:44,095 INFO L422 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:10:44,096 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2020-07-29 01:10:44,096 INFO L427 AbstractCegarLoop]: === Iteration 7 === [mainErr6ASSERT_VIOLATIONMEMORY_LEAK, mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr8REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr9ENSURES_VIOLATIONMEMORY_LEAK, mainErr0REQUIRES_VIOLATION, mainErr1REQUIRES_VIOLATION, mainErr7REQUIRES_VIOLATION]=== [2020-07-29 01:10:44,096 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:10:44,097 INFO L82 PathProgramCache]: Analyzing trace with hash -821123391, now seen corresponding path program 1 times [2020-07-29 01:10:44,097 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 01:10:44,097 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1395783127] [2020-07-29 01:10:44,097 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 01:10:44,117 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:44,182 INFO L375 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2020-07-29 01:10:44,183 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:44,190 INFO L280 TraceCheckUtils]: 0: Hoare triple {930#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {923#true} is VALID [2020-07-29 01:10:44,190 INFO L280 TraceCheckUtils]: 1: Hoare triple {923#true} assume true; {923#true} is VALID [2020-07-29 01:10:44,190 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {923#true} {923#true} #80#return; {923#true} is VALID [2020-07-29 01:10:44,192 INFO L263 TraceCheckUtils]: 0: Hoare triple {923#true} call ULTIMATE.init(); {930#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-29 01:10:44,192 INFO L280 TraceCheckUtils]: 1: Hoare triple {930#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {923#true} is VALID [2020-07-29 01:10:44,192 INFO L280 TraceCheckUtils]: 2: Hoare triple {923#true} assume true; {923#true} is VALID [2020-07-29 01:10:44,192 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {923#true} {923#true} #80#return; {923#true} is VALID [2020-07-29 01:10:44,193 INFO L263 TraceCheckUtils]: 4: Hoare triple {923#true} call #t~ret6 := main(); {923#true} is VALID [2020-07-29 01:10:44,193 INFO L280 TraceCheckUtils]: 5: Hoare triple {923#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0, 0; {923#true} is VALID [2020-07-29 01:10:44,193 INFO L280 TraceCheckUtils]: 6: Hoare triple {923#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {923#true} is VALID [2020-07-29 01:10:44,194 INFO L280 TraceCheckUtils]: 7: Hoare triple {923#true} assume !!(0 != #t~nondet2);havoc #t~nondet2;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(8);~t~0.base, ~t~0.offset := #t~malloc3.base, #t~malloc3.offset; {928#(not (= 0 main_~t~0.base))} is VALID [2020-07-29 01:10:44,195 INFO L280 TraceCheckUtils]: 8: Hoare triple {928#(not (= 0 main_~t~0.base))} assume !(~t~0.base == 0 && ~t~0.offset == 0); {928#(not (= 0 main_~t~0.base))} is VALID [2020-07-29 01:10:44,196 INFO L280 TraceCheckUtils]: 9: Hoare triple {928#(not (= 0 main_~t~0.base))} SUMMARY for call write~int(1, ~t~0.base, ~t~0.offset, 4); srcloc: L525-3 {928#(not (= 0 main_~t~0.base))} is VALID [2020-07-29 01:10:44,198 INFO L280 TraceCheckUtils]: 10: Hoare triple {928#(not (= 0 main_~t~0.base))} SUMMARY for call write~$Pointer$(~p~0.base, ~p~0.offset, ~t~0.base, 4 + ~t~0.offset, 4); srcloc: L526 {928#(not (= 0 main_~t~0.base))} is VALID [2020-07-29 01:10:44,199 INFO L280 TraceCheckUtils]: 11: Hoare triple {928#(not (= 0 main_~t~0.base))} ~p~0.base, ~p~0.offset := ~t~0.base, ~t~0.offset; {929#(not (= 0 main_~p~0.base))} is VALID [2020-07-29 01:10:44,200 INFO L280 TraceCheckUtils]: 12: Hoare triple {929#(not (= 0 main_~p~0.base))} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {929#(not (= 0 main_~p~0.base))} is VALID [2020-07-29 01:10:44,201 INFO L280 TraceCheckUtils]: 13: Hoare triple {929#(not (= 0 main_~p~0.base))} assume !(0 != #t~nondet2);havoc #t~nondet2; {929#(not (= 0 main_~p~0.base))} is VALID [2020-07-29 01:10:44,202 INFO L280 TraceCheckUtils]: 14: Hoare triple {929#(not (= 0 main_~p~0.base))} assume !(~p~0.base != 0 || ~p~0.offset != 0); {924#false} is VALID [2020-07-29 01:10:44,202 INFO L280 TraceCheckUtils]: 15: Hoare triple {924#false} assume !(#valid == old(#valid)); {924#false} is VALID [2020-07-29 01:10:44,203 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:44,203 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1395783127] [2020-07-29 01:10:44,203 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-29 01:10:44,204 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2020-07-29 01:10:44,204 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1397966864] [2020-07-29 01:10:44,204 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 16 [2020-07-29 01:10:44,204 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:10:44,204 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2020-07-29 01:10:44,222 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:44,223 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2020-07-29 01:10:44,223 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-29 01:10:44,223 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2020-07-29 01:10:44,224 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2020-07-29 01:10:44,224 INFO L87 Difference]: Start difference. First operand 30 states and 33 transitions. Second operand 5 states. [2020-07-29 01:10:44,425 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:44,425 INFO L93 Difference]: Finished difference Result 37 states and 38 transitions. [2020-07-29 01:10:44,425 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2020-07-29 01:10:44,425 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 16 [2020-07-29 01:10:44,426 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:10:44,426 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-29 01:10:44,428 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 39 transitions. [2020-07-29 01:10:44,428 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-29 01:10:44,429 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 39 transitions. [2020-07-29 01:10:44,430 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 39 transitions. [2020-07-29 01:10:44,488 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:44,489 INFO L225 Difference]: With dead ends: 37 [2020-07-29 01:10:44,489 INFO L226 Difference]: Without dead ends: 37 [2020-07-29 01:10:44,490 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 4 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2020-07-29 01:10:44,492 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2020-07-29 01:10:44,495 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 30. [2020-07-29 01:10:44,495 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:10:44,495 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand 30 states. [2020-07-29 01:10:44,495 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand 30 states. [2020-07-29 01:10:44,495 INFO L87 Difference]: Start difference. First operand 37 states. Second operand 30 states. [2020-07-29 01:10:44,499 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:44,500 INFO L93 Difference]: Finished difference Result 37 states and 38 transitions. [2020-07-29 01:10:44,500 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 38 transitions. [2020-07-29 01:10:44,500 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:44,500 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:44,501 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand 37 states. [2020-07-29 01:10:44,501 INFO L87 Difference]: Start difference. First operand 30 states. Second operand 37 states. [2020-07-29 01:10:44,505 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:44,506 INFO L93 Difference]: Finished difference Result 37 states and 38 transitions. [2020-07-29 01:10:44,506 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 38 transitions. [2020-07-29 01:10:44,506 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:44,506 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:44,506 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:10:44,507 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:10:44,507 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2020-07-29 01:10:44,508 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 32 transitions. [2020-07-29 01:10:44,509 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 32 transitions. Word has length 16 [2020-07-29 01:10:44,511 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:10:44,511 INFO L479 AbstractCegarLoop]: Abstraction has 30 states and 32 transitions. [2020-07-29 01:10:44,511 INFO L480 AbstractCegarLoop]: Interpolant automaton has 5 states. [2020-07-29 01:10:44,511 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 32 transitions. [2020-07-29 01:10:44,511 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2020-07-29 01:10:44,512 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:10:44,512 INFO L422 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:10:44,512 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2020-07-29 01:10:44,512 INFO L427 AbstractCegarLoop]: === Iteration 8 === [mainErr6ASSERT_VIOLATIONMEMORY_LEAK, mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr8REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr9ENSURES_VIOLATIONMEMORY_LEAK, mainErr0REQUIRES_VIOLATION, mainErr1REQUIRES_VIOLATION, mainErr7REQUIRES_VIOLATION]=== [2020-07-29 01:10:44,513 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:10:44,513 INFO L82 PathProgramCache]: Analyzing trace with hash 1174445805, now seen corresponding path program 1 times [2020-07-29 01:10:44,513 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 01:10:44,514 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1579468712] [2020-07-29 01:10:44,514 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 01:10:44,555 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:44,642 INFO L375 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2020-07-29 01:10:44,643 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:44,651 INFO L280 TraceCheckUtils]: 0: Hoare triple {1085#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {1077#true} is VALID [2020-07-29 01:10:44,652 INFO L280 TraceCheckUtils]: 1: Hoare triple {1077#true} assume true; {1077#true} is VALID [2020-07-29 01:10:44,652 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {1077#true} {1077#true} #80#return; {1077#true} is VALID [2020-07-29 01:10:44,653 INFO L263 TraceCheckUtils]: 0: Hoare triple {1077#true} call ULTIMATE.init(); {1085#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-29 01:10:44,653 INFO L280 TraceCheckUtils]: 1: Hoare triple {1085#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {1077#true} is VALID [2020-07-29 01:10:44,654 INFO L280 TraceCheckUtils]: 2: Hoare triple {1077#true} assume true; {1077#true} is VALID [2020-07-29 01:10:44,654 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {1077#true} {1077#true} #80#return; {1077#true} is VALID [2020-07-29 01:10:44,654 INFO L263 TraceCheckUtils]: 4: Hoare triple {1077#true} call #t~ret6 := main(); {1077#true} is VALID [2020-07-29 01:10:44,654 INFO L280 TraceCheckUtils]: 5: Hoare triple {1077#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0, 0; {1077#true} is VALID [2020-07-29 01:10:44,655 INFO L280 TraceCheckUtils]: 6: Hoare triple {1077#true} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {1077#true} is VALID [2020-07-29 01:10:44,655 INFO L280 TraceCheckUtils]: 7: Hoare triple {1077#true} assume !!(0 != #t~nondet2);havoc #t~nondet2;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(8);~t~0.base, ~t~0.offset := #t~malloc3.base, #t~malloc3.offset; {1077#true} is VALID [2020-07-29 01:10:44,656 INFO L280 TraceCheckUtils]: 8: Hoare triple {1077#true} assume !(~t~0.base == 0 && ~t~0.offset == 0); {1077#true} is VALID [2020-07-29 01:10:44,672 INFO L280 TraceCheckUtils]: 9: Hoare triple {1077#true} SUMMARY for call write~int(1, ~t~0.base, ~t~0.offset, 4); srcloc: L525-3 {1082#(= 1 (select (select |#memory_int| main_~t~0.base) main_~t~0.offset))} is VALID [2020-07-29 01:10:44,677 INFO L280 TraceCheckUtils]: 10: Hoare triple {1082#(= 1 (select (select |#memory_int| main_~t~0.base) main_~t~0.offset))} SUMMARY for call write~$Pointer$(~p~0.base, ~p~0.offset, ~t~0.base, 4 + ~t~0.offset, 4); srcloc: L526 {1082#(= 1 (select (select |#memory_int| main_~t~0.base) main_~t~0.offset))} is VALID [2020-07-29 01:10:44,678 INFO L280 TraceCheckUtils]: 11: Hoare triple {1082#(= 1 (select (select |#memory_int| main_~t~0.base) main_~t~0.offset))} ~p~0.base, ~p~0.offset := ~t~0.base, ~t~0.offset; {1083#(= 1 (select (select |#memory_int| main_~p~0.base) main_~p~0.offset))} is VALID [2020-07-29 01:10:44,678 INFO L280 TraceCheckUtils]: 12: Hoare triple {1083#(= 1 (select (select |#memory_int| main_~p~0.base) main_~p~0.offset))} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {1083#(= 1 (select (select |#memory_int| main_~p~0.base) main_~p~0.offset))} is VALID [2020-07-29 01:10:44,679 INFO L280 TraceCheckUtils]: 13: Hoare triple {1083#(= 1 (select (select |#memory_int| main_~p~0.base) main_~p~0.offset))} assume !(0 != #t~nondet2);havoc #t~nondet2; {1083#(= 1 (select (select |#memory_int| main_~p~0.base) main_~p~0.offset))} is VALID [2020-07-29 01:10:44,679 INFO L280 TraceCheckUtils]: 14: Hoare triple {1083#(= 1 (select (select |#memory_int| main_~p~0.base) main_~p~0.offset))} assume !!(~p~0.base != 0 || ~p~0.offset != 0); {1083#(= 1 (select (select |#memory_int| main_~p~0.base) main_~p~0.offset))} is VALID [2020-07-29 01:10:44,682 INFO L280 TraceCheckUtils]: 15: Hoare triple {1083#(= 1 (select (select |#memory_int| main_~p~0.base) main_~p~0.offset))} SUMMARY for call #t~mem4 := read~int(~p~0.base, ~p~0.offset, 4); srcloc: L531 {1084#(= 1 |main_#t~mem4|)} is VALID [2020-07-29 01:10:44,682 INFO L280 TraceCheckUtils]: 16: Hoare triple {1084#(= 1 |main_#t~mem4|)} assume 1 != #t~mem4;havoc #t~mem4; {1078#false} is VALID [2020-07-29 01:10:44,682 INFO L280 TraceCheckUtils]: 17: Hoare triple {1078#false} assume !false; {1078#false} is VALID [2020-07-29 01:10:44,683 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:44,684 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1579468712] [2020-07-29 01:10:44,684 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-29 01:10:44,684 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2020-07-29 01:10:44,684 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1029455193] [2020-07-29 01:10:44,685 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 18 [2020-07-29 01:10:44,685 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:10:44,685 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2020-07-29 01:10:44,708 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:44,708 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2020-07-29 01:10:44,709 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-29 01:10:44,709 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2020-07-29 01:10:44,709 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2020-07-29 01:10:44,709 INFO L87 Difference]: Start difference. First operand 30 states and 32 transitions. Second operand 6 states. [2020-07-29 01:10:44,971 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:44,971 INFO L93 Difference]: Finished difference Result 34 states and 35 transitions. [2020-07-29 01:10:44,971 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2020-07-29 01:10:44,972 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 18 [2020-07-29 01:10:44,972 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:10:44,972 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-29 01:10:44,974 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 36 transitions. [2020-07-29 01:10:44,974 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-29 01:10:44,977 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 36 transitions. [2020-07-29 01:10:44,977 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 36 transitions. [2020-07-29 01:10:45,023 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:45,024 INFO L225 Difference]: With dead ends: 34 [2020-07-29 01:10:45,024 INFO L226 Difference]: Without dead ends: 34 [2020-07-29 01:10:45,027 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=19, Invalid=37, Unknown=0, NotChecked=0, Total=56 [2020-07-29 01:10:45,028 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2020-07-29 01:10:45,030 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 30. [2020-07-29 01:10:45,030 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:10:45,030 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand 30 states. [2020-07-29 01:10:45,030 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand 30 states. [2020-07-29 01:10:45,030 INFO L87 Difference]: Start difference. First operand 34 states. Second operand 30 states. [2020-07-29 01:10:45,032 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:45,032 INFO L93 Difference]: Finished difference Result 34 states and 35 transitions. [2020-07-29 01:10:45,032 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 35 transitions. [2020-07-29 01:10:45,032 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:45,032 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:45,033 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand 34 states. [2020-07-29 01:10:45,033 INFO L87 Difference]: Start difference. First operand 30 states. Second operand 34 states. [2020-07-29 01:10:45,034 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:45,034 INFO L93 Difference]: Finished difference Result 34 states and 35 transitions. [2020-07-29 01:10:45,034 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 35 transitions. [2020-07-29 01:10:45,035 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:45,035 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:45,035 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:10:45,035 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:10:45,035 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2020-07-29 01:10:45,036 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 31 transitions. [2020-07-29 01:10:45,036 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 31 transitions. Word has length 18 [2020-07-29 01:10:45,037 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:10:45,037 INFO L479 AbstractCegarLoop]: Abstraction has 30 states and 31 transitions. [2020-07-29 01:10:45,037 INFO L480 AbstractCegarLoop]: Interpolant automaton has 6 states. [2020-07-29 01:10:45,037 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 31 transitions. [2020-07-29 01:10:45,037 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2020-07-29 01:10:45,037 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:10:45,038 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:10:45,038 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2020-07-29 01:10:45,038 INFO L427 AbstractCegarLoop]: === Iteration 9 === [mainErr6ASSERT_VIOLATIONMEMORY_LEAK, mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr8REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr9ENSURES_VIOLATIONMEMORY_LEAK, mainErr0REQUIRES_VIOLATION, mainErr1REQUIRES_VIOLATION, mainErr7REQUIRES_VIOLATION]=== [2020-07-29 01:10:45,038 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:10:45,038 INFO L82 PathProgramCache]: Analyzing trace with hash 1116213141, now seen corresponding path program 1 times [2020-07-29 01:10:45,039 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 01:10:45,039 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [345700223] [2020-07-29 01:10:45,039 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 01:10:45,053 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:45,144 INFO L375 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2020-07-29 01:10:45,146 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:45,158 INFO L280 TraceCheckUtils]: 0: Hoare triple {1234#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {1225#true} is VALID [2020-07-29 01:10:45,159 INFO L280 TraceCheckUtils]: 1: Hoare triple {1225#true} assume true; {1225#true} is VALID [2020-07-29 01:10:45,159 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {1225#true} {1225#true} #80#return; {1225#true} is VALID [2020-07-29 01:10:45,159 INFO L263 TraceCheckUtils]: 0: Hoare triple {1225#true} call ULTIMATE.init(); {1234#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-29 01:10:45,160 INFO L280 TraceCheckUtils]: 1: Hoare triple {1234#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {1225#true} is VALID [2020-07-29 01:10:45,160 INFO L280 TraceCheckUtils]: 2: Hoare triple {1225#true} assume true; {1225#true} is VALID [2020-07-29 01:10:45,160 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {1225#true} {1225#true} #80#return; {1225#true} is VALID [2020-07-29 01:10:45,160 INFO L263 TraceCheckUtils]: 4: Hoare triple {1225#true} call #t~ret6 := main(); {1225#true} is VALID [2020-07-29 01:10:45,161 INFO L280 TraceCheckUtils]: 5: Hoare triple {1225#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0, 0; {1230#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} is VALID [2020-07-29 01:10:45,161 INFO L280 TraceCheckUtils]: 6: Hoare triple {1230#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {1230#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} is VALID [2020-07-29 01:10:45,162 INFO L280 TraceCheckUtils]: 7: Hoare triple {1230#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} assume !!(0 != #t~nondet2);havoc #t~nondet2;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(8);~t~0.base, ~t~0.offset := #t~malloc3.base, #t~malloc3.offset; {1230#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} is VALID [2020-07-29 01:10:45,163 INFO L280 TraceCheckUtils]: 8: Hoare triple {1230#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} assume !(~t~0.base == 0 && ~t~0.offset == 0); {1230#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} is VALID [2020-07-29 01:10:45,163 INFO L280 TraceCheckUtils]: 9: Hoare triple {1230#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} SUMMARY for call write~int(1, ~t~0.base, ~t~0.offset, 4); srcloc: L525-3 {1230#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} is VALID [2020-07-29 01:10:45,164 INFO L280 TraceCheckUtils]: 10: Hoare triple {1230#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} SUMMARY for call write~$Pointer$(~p~0.base, ~p~0.offset, ~t~0.base, 4 + ~t~0.offset, 4); srcloc: L526 {1231#(and (= 0 (select (select |#memory_$Pointer$.offset| main_~t~0.base) (+ main_~t~0.offset 4))) (= 0 (select (select |#memory_$Pointer$.base| main_~t~0.base) (+ main_~t~0.offset 4))))} is VALID [2020-07-29 01:10:45,166 INFO L280 TraceCheckUtils]: 11: Hoare triple {1231#(and (= 0 (select (select |#memory_$Pointer$.offset| main_~t~0.base) (+ main_~t~0.offset 4))) (= 0 (select (select |#memory_$Pointer$.base| main_~t~0.base) (+ main_~t~0.offset 4))))} ~p~0.base, ~p~0.offset := ~t~0.base, ~t~0.offset; {1232#(and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~p~0.offset 4))) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~p~0.offset 4))))} is VALID [2020-07-29 01:10:45,167 INFO L280 TraceCheckUtils]: 12: Hoare triple {1232#(and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~p~0.offset 4))) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~p~0.offset 4))))} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {1232#(and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~p~0.offset 4))) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~p~0.offset 4))))} is VALID [2020-07-29 01:10:45,168 INFO L280 TraceCheckUtils]: 13: Hoare triple {1232#(and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~p~0.offset 4))) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~p~0.offset 4))))} assume !(0 != #t~nondet2);havoc #t~nondet2; {1232#(and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~p~0.offset 4))) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~p~0.offset 4))))} is VALID [2020-07-29 01:10:45,168 INFO L280 TraceCheckUtils]: 14: Hoare triple {1232#(and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~p~0.offset 4))) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~p~0.offset 4))))} assume !!(~p~0.base != 0 || ~p~0.offset != 0); {1232#(and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~p~0.offset 4))) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~p~0.offset 4))))} is VALID [2020-07-29 01:10:45,169 INFO L280 TraceCheckUtils]: 15: Hoare triple {1232#(and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~p~0.offset 4))) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~p~0.offset 4))))} SUMMARY for call #t~mem4 := read~int(~p~0.base, ~p~0.offset, 4); srcloc: L531 {1232#(and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~p~0.offset 4))) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~p~0.offset 4))))} is VALID [2020-07-29 01:10:45,170 INFO L280 TraceCheckUtils]: 16: Hoare triple {1232#(and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~p~0.offset 4))) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~p~0.offset 4))))} assume !(1 != #t~mem4);havoc #t~mem4; {1232#(and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~p~0.offset 4))) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~p~0.offset 4))))} is VALID [2020-07-29 01:10:45,171 INFO L280 TraceCheckUtils]: 17: Hoare triple {1232#(and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~p~0.offset 4))) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~p~0.offset 4))))} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~p~0.base, 4 + ~p~0.offset, 4); srcloc: L531-3 {1233#(and (= 0 |main_#t~mem5.offset|) (= 0 |main_#t~mem5.base|))} is VALID [2020-07-29 01:10:45,171 INFO L280 TraceCheckUtils]: 18: Hoare triple {1233#(and (= 0 |main_#t~mem5.offset|) (= 0 |main_#t~mem5.base|))} ~p~0.base, ~p~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset; {1230#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} is VALID [2020-07-29 01:10:45,172 INFO L280 TraceCheckUtils]: 19: Hoare triple {1230#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} assume !!(~p~0.base != 0 || ~p~0.offset != 0); {1226#false} is VALID [2020-07-29 01:10:45,173 INFO L280 TraceCheckUtils]: 20: Hoare triple {1226#false} assume !(1 == #valid[~p~0.base]); {1226#false} is VALID [2020-07-29 01:10:45,174 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 1 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:45,175 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [345700223] [2020-07-29 01:10:45,175 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [448071624] [2020-07-29 01:10:45,175 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-29 01:10:45,266 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:45,268 INFO L263 TraceCheckSpWp]: Trace formula consists of 97 conjuncts, 22 conjunts are in the unsatisfiable core [2020-07-29 01:10:45,282 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:45,287 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2020-07-29 01:10:45,509 INFO L384 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2020-07-29 01:10:45,510 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 01:10:45,528 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 01:10:45,532 INFO L384 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2020-07-29 01:10:45,532 INFO L544 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2020-07-29 01:10:45,540 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 01:10:45,540 INFO L544 ElimStorePlain]: Start of recursive call 1: 2 dim-2 vars, End of recursive call: and 1 xjuncts. [2020-07-29 01:10:45,541 INFO L244 ElimStorePlain]: Needed 3 recursive calls to eliminate 2 variables, input treesize:33, output treesize:25 [2020-07-29 01:10:46,271 INFO L173 IndexEqualityManager]: detected equality via solver [2020-07-29 01:10:46,273 INFO L384 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 19 treesize of output 7 [2020-07-29 01:10:46,274 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 01:10:46,303 INFO L624 ElimStorePlain]: treesize reduction 3, result has 91.2 percent of original size [2020-07-29 01:10:46,308 INFO L173 IndexEqualityManager]: detected equality via solver [2020-07-29 01:10:46,310 INFO L350 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 01:10:46,311 INFO L384 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 19 treesize of output 10 [2020-07-29 01:10:46,312 INFO L544 ElimStorePlain]: Start of recursive call 3: End of recursive call: and 1 xjuncts. [2020-07-29 01:10:46,321 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 01:10:46,348 INFO L544 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 2 dim-2 vars, End of recursive call: and 1 xjuncts. [2020-07-29 01:10:46,349 INFO L244 ElimStorePlain]: Needed 3 recursive calls to eliminate 5 variables, input treesize:49, output treesize:7 [2020-07-29 01:10:46,352 WARN L406 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2020-07-29 01:10:46,353 WARN L407 uantifierElimination]: Input elimination task: ∃ [|#memory_$Pointer$.offset|, main_~p~0.base, main_~p~0.offset, |#memory_$Pointer$.base|, main_~t~0.offset]. (let ((.cse0 (select |#memory_$Pointer$.base| main_~p~0.base)) (.cse3 (+ main_~p~0.offset 4)) (.cse2 (select |#memory_$Pointer$.offset| main_~p~0.base)) (.cse1 (+ main_~t~0.offset 4))) (and (= 0 (select .cse0 .cse1)) (= (select .cse2 .cse3) |main_#t~mem5.offset|) (<= 0 main_~p~0.offset) (= (select .cse0 .cse3) |main_#t~mem5.base|) (<= main_~p~0.offset main_~t~0.offset) (<= main_~t~0.offset 0) (<= 0 main_~t~0.offset) (= 0 (select .cse2 .cse1)))) [2020-07-29 01:10:46,353 WARN L408 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= 0 |main_#t~mem5.offset|) (= 0 |main_#t~mem5.base|)) [2020-07-29 01:10:46,358 INFO L263 TraceCheckUtils]: 0: Hoare triple {1225#true} call ULTIMATE.init(); {1225#true} is VALID [2020-07-29 01:10:46,358 INFO L280 TraceCheckUtils]: 1: Hoare triple {1225#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {1225#true} is VALID [2020-07-29 01:10:46,359 INFO L280 TraceCheckUtils]: 2: Hoare triple {1225#true} assume true; {1225#true} is VALID [2020-07-29 01:10:46,359 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {1225#true} {1225#true} #80#return; {1225#true} is VALID [2020-07-29 01:10:46,359 INFO L263 TraceCheckUtils]: 4: Hoare triple {1225#true} call #t~ret6 := main(); {1225#true} is VALID [2020-07-29 01:10:46,360 INFO L280 TraceCheckUtils]: 5: Hoare triple {1225#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0, 0; {1230#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} is VALID [2020-07-29 01:10:46,361 INFO L280 TraceCheckUtils]: 6: Hoare triple {1230#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {1230#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} is VALID [2020-07-29 01:10:46,362 INFO L280 TraceCheckUtils]: 7: Hoare triple {1230#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} assume !!(0 != #t~nondet2);havoc #t~nondet2;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(8);~t~0.base, ~t~0.offset := #t~malloc3.base, #t~malloc3.offset; {1259#(and (= 0 main_~p~0.offset) (<= main_~t~0.offset 0) (= 0 main_~p~0.base))} is VALID [2020-07-29 01:10:46,363 INFO L280 TraceCheckUtils]: 8: Hoare triple {1259#(and (= 0 main_~p~0.offset) (<= main_~t~0.offset 0) (= 0 main_~p~0.base))} assume !(~t~0.base == 0 && ~t~0.offset == 0); {1259#(and (= 0 main_~p~0.offset) (<= main_~t~0.offset 0) (= 0 main_~p~0.base))} is VALID [2020-07-29 01:10:46,365 INFO L280 TraceCheckUtils]: 9: Hoare triple {1259#(and (= 0 main_~p~0.offset) (<= main_~t~0.offset 0) (= 0 main_~p~0.base))} SUMMARY for call write~int(1, ~t~0.base, ~t~0.offset, 4); srcloc: L525-3 {1266#(and (= 0 main_~p~0.offset) (<= main_~t~0.offset 0) (= 0 main_~p~0.base) (<= 0 main_~t~0.offset))} is VALID [2020-07-29 01:10:46,367 INFO L280 TraceCheckUtils]: 10: Hoare triple {1266#(and (= 0 main_~p~0.offset) (<= main_~t~0.offset 0) (= 0 main_~p~0.base) (<= 0 main_~t~0.offset))} SUMMARY for call write~$Pointer$(~p~0.base, ~p~0.offset, ~t~0.base, 4 + ~t~0.offset, 4); srcloc: L526 {1270#(and (= 0 (select (select |#memory_$Pointer$.offset| main_~t~0.base) (+ main_~t~0.offset 4))) (= 0 (select (select |#memory_$Pointer$.base| main_~t~0.base) (+ main_~t~0.offset 4))) (<= main_~t~0.offset 0) (<= 0 main_~t~0.offset))} is VALID [2020-07-29 01:10:46,369 INFO L280 TraceCheckUtils]: 11: Hoare triple {1270#(and (= 0 (select (select |#memory_$Pointer$.offset| main_~t~0.base) (+ main_~t~0.offset 4))) (= 0 (select (select |#memory_$Pointer$.base| main_~t~0.base) (+ main_~t~0.offset 4))) (<= main_~t~0.offset 0) (<= 0 main_~t~0.offset))} ~p~0.base, ~p~0.offset := ~t~0.base, ~t~0.offset; {1274#(exists ((main_~t~0.offset Int)) (and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~t~0.offset 4))) (<= main_~p~0.offset main_~t~0.offset) (<= main_~t~0.offset 0) (<= 0 main_~t~0.offset) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~t~0.offset 4)))))} is VALID [2020-07-29 01:10:46,370 INFO L280 TraceCheckUtils]: 12: Hoare triple {1274#(exists ((main_~t~0.offset Int)) (and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~t~0.offset 4))) (<= main_~p~0.offset main_~t~0.offset) (<= main_~t~0.offset 0) (<= 0 main_~t~0.offset) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~t~0.offset 4)))))} assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {1274#(exists ((main_~t~0.offset Int)) (and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~t~0.offset 4))) (<= main_~p~0.offset main_~t~0.offset) (<= main_~t~0.offset 0) (<= 0 main_~t~0.offset) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~t~0.offset 4)))))} is VALID [2020-07-29 01:10:46,371 INFO L280 TraceCheckUtils]: 13: Hoare triple {1274#(exists ((main_~t~0.offset Int)) (and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~t~0.offset 4))) (<= main_~p~0.offset main_~t~0.offset) (<= main_~t~0.offset 0) (<= 0 main_~t~0.offset) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~t~0.offset 4)))))} assume !(0 != #t~nondet2);havoc #t~nondet2; {1274#(exists ((main_~t~0.offset Int)) (and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~t~0.offset 4))) (<= main_~p~0.offset main_~t~0.offset) (<= main_~t~0.offset 0) (<= 0 main_~t~0.offset) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~t~0.offset 4)))))} is VALID [2020-07-29 01:10:46,372 INFO L280 TraceCheckUtils]: 14: Hoare triple {1274#(exists ((main_~t~0.offset Int)) (and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~t~0.offset 4))) (<= main_~p~0.offset main_~t~0.offset) (<= main_~t~0.offset 0) (<= 0 main_~t~0.offset) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~t~0.offset 4)))))} assume !!(~p~0.base != 0 || ~p~0.offset != 0); {1274#(exists ((main_~t~0.offset Int)) (and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~t~0.offset 4))) (<= main_~p~0.offset main_~t~0.offset) (<= main_~t~0.offset 0) (<= 0 main_~t~0.offset) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~t~0.offset 4)))))} is VALID [2020-07-29 01:10:46,373 INFO L280 TraceCheckUtils]: 15: Hoare triple {1274#(exists ((main_~t~0.offset Int)) (and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~t~0.offset 4))) (<= main_~p~0.offset main_~t~0.offset) (<= main_~t~0.offset 0) (<= 0 main_~t~0.offset) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~t~0.offset 4)))))} SUMMARY for call #t~mem4 := read~int(~p~0.base, ~p~0.offset, 4); srcloc: L531 {1287#(and (<= 0 main_~p~0.offset) (exists ((main_~t~0.offset Int)) (and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~t~0.offset 4))) (<= main_~p~0.offset main_~t~0.offset) (<= main_~t~0.offset 0) (<= 0 main_~t~0.offset) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~t~0.offset 4))))))} is VALID [2020-07-29 01:10:46,374 INFO L280 TraceCheckUtils]: 16: Hoare triple {1287#(and (<= 0 main_~p~0.offset) (exists ((main_~t~0.offset Int)) (and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~t~0.offset 4))) (<= main_~p~0.offset main_~t~0.offset) (<= main_~t~0.offset 0) (<= 0 main_~t~0.offset) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~t~0.offset 4))))))} assume !(1 != #t~mem4);havoc #t~mem4; {1287#(and (<= 0 main_~p~0.offset) (exists ((main_~t~0.offset Int)) (and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~t~0.offset 4))) (<= main_~p~0.offset main_~t~0.offset) (<= main_~t~0.offset 0) (<= 0 main_~t~0.offset) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~t~0.offset 4))))))} is VALID [2020-07-29 01:10:46,376 INFO L280 TraceCheckUtils]: 17: Hoare triple {1287#(and (<= 0 main_~p~0.offset) (exists ((main_~t~0.offset Int)) (and (= 0 (select (select |#memory_$Pointer$.base| main_~p~0.base) (+ main_~t~0.offset 4))) (<= main_~p~0.offset main_~t~0.offset) (<= main_~t~0.offset 0) (<= 0 main_~t~0.offset) (= 0 (select (select |#memory_$Pointer$.offset| main_~p~0.base) (+ main_~t~0.offset 4))))))} SUMMARY for call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~p~0.base, 4 + ~p~0.offset, 4); srcloc: L531-3 {1233#(and (= 0 |main_#t~mem5.offset|) (= 0 |main_#t~mem5.base|))} is VALID [2020-07-29 01:10:46,377 INFO L280 TraceCheckUtils]: 18: Hoare triple {1233#(and (= 0 |main_#t~mem5.offset|) (= 0 |main_#t~mem5.base|))} ~p~0.base, ~p~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset; {1230#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} is VALID [2020-07-29 01:10:46,378 INFO L280 TraceCheckUtils]: 19: Hoare triple {1230#(and (= 0 main_~p~0.offset) (= 0 main_~p~0.base))} assume !!(~p~0.base != 0 || ~p~0.offset != 0); {1226#false} is VALID [2020-07-29 01:10:46,378 INFO L280 TraceCheckUtils]: 20: Hoare triple {1226#false} assume !(1 == #valid[~p~0.base]); {1226#false} is VALID [2020-07-29 01:10:46,381 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 1 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:46,382 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2020-07-29 01:10:46,382 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 9] total 12 [2020-07-29 01:10:46,382 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1814364886] [2020-07-29 01:10:46,383 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 21 [2020-07-29 01:10:46,383 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:10:46,383 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2020-07-29 01:10:46,436 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:46,436 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2020-07-29 01:10:46,436 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-29 01:10:46,437 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2020-07-29 01:10:46,437 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=105, Unknown=0, NotChecked=0, Total=132 [2020-07-29 01:10:46,437 INFO L87 Difference]: Start difference. First operand 30 states and 31 transitions. Second operand 12 states. [2020-07-29 01:10:47,142 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:47,143 INFO L93 Difference]: Finished difference Result 46 states and 47 transitions. [2020-07-29 01:10:47,143 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2020-07-29 01:10:47,143 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 21 [2020-07-29 01:10:47,143 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:10:47,144 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2020-07-29 01:10:47,145 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 44 transitions. [2020-07-29 01:10:47,146 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2020-07-29 01:10:47,147 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 44 transitions. [2020-07-29 01:10:47,147 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 44 transitions. [2020-07-29 01:10:47,211 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:47,212 INFO L225 Difference]: With dead ends: 46 [2020-07-29 01:10:47,213 INFO L226 Difference]: Without dead ends: 46 [2020-07-29 01:10:47,213 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 33 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 21 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=54, Invalid=186, Unknown=0, NotChecked=0, Total=240 [2020-07-29 01:10:47,214 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states. [2020-07-29 01:10:47,217 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 42. [2020-07-29 01:10:47,217 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:10:47,217 INFO L82 GeneralOperation]: Start isEquivalent. First operand 46 states. Second operand 42 states. [2020-07-29 01:10:47,217 INFO L74 IsIncluded]: Start isIncluded. First operand 46 states. Second operand 42 states. [2020-07-29 01:10:47,217 INFO L87 Difference]: Start difference. First operand 46 states. Second operand 42 states. [2020-07-29 01:10:47,221 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:47,221 INFO L93 Difference]: Finished difference Result 46 states and 47 transitions. [2020-07-29 01:10:47,222 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 47 transitions. [2020-07-29 01:10:47,222 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:47,222 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:47,222 INFO L74 IsIncluded]: Start isIncluded. First operand 42 states. Second operand 46 states. [2020-07-29 01:10:47,223 INFO L87 Difference]: Start difference. First operand 42 states. Second operand 46 states. [2020-07-29 01:10:47,232 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:47,233 INFO L93 Difference]: Finished difference Result 46 states and 47 transitions. [2020-07-29 01:10:47,233 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 47 transitions. [2020-07-29 01:10:47,233 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:47,234 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:47,234 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:10:47,234 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:10:47,234 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 42 states. [2020-07-29 01:10:47,236 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 44 transitions. [2020-07-29 01:10:47,237 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 44 transitions. Word has length 21 [2020-07-29 01:10:47,237 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:10:47,239 INFO L479 AbstractCegarLoop]: Abstraction has 42 states and 44 transitions. [2020-07-29 01:10:47,239 INFO L480 AbstractCegarLoop]: Interpolant automaton has 12 states. [2020-07-29 01:10:47,239 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 44 transitions. [2020-07-29 01:10:47,240 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2020-07-29 01:10:47,240 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:10:47,240 INFO L422 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:10:47,455 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2020-07-29 01:10:47,456 INFO L427 AbstractCegarLoop]: === Iteration 10 === [mainErr6ASSERT_VIOLATIONMEMORY_LEAK, mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr8REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr9ENSURES_VIOLATIONMEMORY_LEAK, mainErr0REQUIRES_VIOLATION, mainErr1REQUIRES_VIOLATION, mainErr7REQUIRES_VIOLATION]=== [2020-07-29 01:10:47,457 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:10:47,457 INFO L82 PathProgramCache]: Analyzing trace with hash 1116213098, now seen corresponding path program 1 times [2020-07-29 01:10:47,457 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 01:10:47,458 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [449899367] [2020-07-29 01:10:47,458 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 01:10:47,492 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 01:10:47,492 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 01:10:47,507 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 01:10:47,507 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 01:10:47,532 INFO L174 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2020-07-29 01:10:47,533 INFO L520 BasicCegarLoop]: Counterexample might be feasible [2020-07-29 01:10:47,533 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2020-07-29 01:10:47,549 WARN L417 cessorBacktranslator]: Generated EnsuresSpecification ensures #valid == old(#valid); is not ensure(true) [2020-07-29 01:10:47,564 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 29.07 01:10:47 BoogieIcfgContainer [2020-07-29 01:10:47,565 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2020-07-29 01:10:47,565 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2020-07-29 01:10:47,566 INFO L271 PluginConnector]: Initializing Witness Printer... [2020-07-29 01:10:47,566 INFO L275 PluginConnector]: Witness Printer initialized [2020-07-29 01:10:47,567 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 29.07 01:10:40" (3/4) ... [2020-07-29 01:10:47,571 INFO L140 WitnessPrinter]: No result that supports witness generation found [2020-07-29 01:10:47,571 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2020-07-29 01:10:47,573 INFO L168 Benchmark]: Toolchain (without parser) took 7969.40 ms. Allocated memory was 1.0 GB in the beginning and 1.3 GB in the end (delta: 319.8 MB). Free memory was 962.9 MB in the beginning and 1.2 GB in the end (delta: -247.8 MB). Peak memory consumption was 72.0 MB. Max. memory is 11.5 GB. [2020-07-29 01:10:47,574 INFO L168 Benchmark]: CDTParser took 0.31 ms. Allocated memory is still 1.0 GB. Free memory is still 987.1 MB. There was no memory consumed. Max. memory is 11.5 GB. [2020-07-29 01:10:47,575 INFO L168 Benchmark]: CACSL2BoogieTranslator took 612.30 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 131.1 MB). Free memory was 957.5 MB in the beginning and 1.1 GB in the end (delta: -155.9 MB). Peak memory consumption was 20.7 MB. Max. memory is 11.5 GB. [2020-07-29 01:10:47,575 INFO L168 Benchmark]: Boogie Preprocessor took 80.14 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 8.5 MB). Peak memory consumption was 8.5 MB. Max. memory is 11.5 GB. [2020-07-29 01:10:47,576 INFO L168 Benchmark]: RCFGBuilder took 700.34 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 52.0 MB). Peak memory consumption was 52.0 MB. Max. memory is 11.5 GB. [2020-07-29 01:10:47,577 INFO L168 Benchmark]: TraceAbstraction took 6564.02 ms. Allocated memory was 1.2 GB in the beginning and 1.3 GB in the end (delta: 188.7 MB). Free memory was 1.1 GB in the beginning and 1.2 GB in the end (delta: -157.8 MB). Peak memory consumption was 31.0 MB. Max. memory is 11.5 GB. [2020-07-29 01:10:47,577 INFO L168 Benchmark]: Witness Printer took 5.62 ms. Allocated memory is still 1.3 GB. Free memory is still 1.2 GB. There was no memory consumed. Max. memory is 11.5 GB. [2020-07-29 01:10:47,581 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.31 ms. Allocated memory is still 1.0 GB. Free memory is still 987.1 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 612.30 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 131.1 MB). Free memory was 957.5 MB in the beginning and 1.1 GB in the end (delta: -155.9 MB). Peak memory consumption was 20.7 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 80.14 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 8.5 MB). Peak memory consumption was 8.5 MB. Max. memory is 11.5 GB. * RCFGBuilder took 700.34 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 52.0 MB). Peak memory consumption was 52.0 MB. Max. memory is 11.5 GB. * TraceAbstraction took 6564.02 ms. Allocated memory was 1.2 GB in the beginning and 1.3 GB in the end (delta: 188.7 MB). Free memory was 1.1 GB in the beginning and 1.2 GB in the end (delta: -157.8 MB). Peak memory consumption was 31.0 MB. Max. memory is 11.5 GB. * Witness Printer took 5.62 ms. Allocated memory is still 1.3 GB. Free memory is still 1.2 GB. There was no memory consumed. Max. memory is 11.5 GB. * Results from de.uni_freiburg.informatik.ultimate.boogie.preprocessor: - GenericResult: Unfinished Backtranslation Generated EnsuresSpecification ensures #valid == old(#valid); is not ensure(true) * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - UnprovableResult [Line: 520]: Unable to prove that all allocated memory was freed Unable to prove that all allocated memory was freed Reason: overapproximation of memtrack at line 520. Possible FailurePath: [L521] List t; [L522] List p = 0; VAL [p={0:0}] [L523] COND TRUE __VERIFIER_nondet_int() [L524] t = (List) malloc(sizeof(struct node)) VAL [malloc(sizeof(struct node))={-1:0}, p={0:0}, t={-1:0}] [L525] COND FALSE !(t == 0) VAL [malloc(sizeof(struct node))={-1:0}, p={0:0}, t={-1:0}] [L526] t->h = 1 VAL [malloc(sizeof(struct node))={-1:0}, p={0:0}, t={-1:0}] [L527] t->n = p VAL [malloc(sizeof(struct node))={-1:0}, p={0:0}, t={-1:0}] [L528] p = t VAL [malloc(sizeof(struct node))={-1:0}, p={-1:0}, t={-1:0}] [L523] COND FALSE !(__VERIFIER_nondet_int()) [L530] COND TRUE p!=0 VAL [malloc(sizeof(struct node))={-1:0}, p={-1:0}, t={-1:0}] [L531] EXPR p->h VAL [malloc(sizeof(struct node))={-1:0}, p={-1:0}, p->h=1, t={-1:0}] [L531] COND FALSE !(p->h != 1) [L534] EXPR p->n VAL [malloc(sizeof(struct node))={-1:0}, p={-1:0}, p->n={0:0}, t={-1:0}] [L534] p = p->n [L530] COND FALSE !(p!=0) VAL [malloc(sizeof(struct node))={-1:0}, p={0:0}, t={-1:0}] - StatisticsResult: Ultimate Automizer benchmark data CFG has 9 procedures, 51 locations, 10 error locations. Started 1 CEGAR loops. VerificationResult: UNSAFE, OverallTime: 6.4s, OverallIterations: 10, TraceHistogramMax: 2, AutomataDifference: 3.1s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 171 SDtfs, 228 SDslu, 201 SDs, 0 SdLazy, 545 SolverSat, 32 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 0.8s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 84 GetRequests, 44 SyntacticMatches, 0 SemanticMatches, 40 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 21 ImplicationChecksByTransitivity, 0.6s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=42occurred in iteration=9, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.2s AutomataMinimizationTime, 9 MinimizatonAttempts, 45 StatesRemovedByMinimization, 7 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 2.0s InterpolantComputationTime, 168 NumberOfCodeBlocks, 168 NumberOfCodeBlocksAsserted, 11 NumberOfCheckSat, 137 ConstructedInterpolants, 6 QuantifiedInterpolants, 14223 SizeOfPredicates, 11 NumberOfNonLiveVariables, 97 ConjunctsInSsa, 22 ConjunctsInUnsatCore, 10 InterpolantComputations, 8 PerfectInterpolantSequences, 10/16 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate could not prove your program: unable to determine feasibility of some traces Received shutdown request... ### Bit-precise run ### This is Ultimate 0.1.25-8bd4bc6 [2020-07-29 01:10:49,715 INFO L177 SettingsManager]: Resetting all preferences to default values... [2020-07-29 01:10:49,718 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2020-07-29 01:10:49,737 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2020-07-29 01:10:49,738 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2020-07-29 01:10:49,740 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2020-07-29 01:10:49,742 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2020-07-29 01:10:49,753 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2020-07-29 01:10:49,758 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2020-07-29 01:10:49,762 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2020-07-29 01:10:49,764 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2020-07-29 01:10:49,766 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2020-07-29 01:10:49,767 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2020-07-29 01:10:49,769 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2020-07-29 01:10:49,771 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2020-07-29 01:10:49,772 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2020-07-29 01:10:49,775 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2020-07-29 01:10:49,776 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2020-07-29 01:10:49,779 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2020-07-29 01:10:49,784 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2020-07-29 01:10:49,790 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2020-07-29 01:10:49,794 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2020-07-29 01:10:49,797 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2020-07-29 01:10:49,798 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2020-07-29 01:10:49,801 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2020-07-29 01:10:49,801 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2020-07-29 01:10:49,801 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2020-07-29 01:10:49,804 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2020-07-29 01:10:49,804 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2020-07-29 01:10:49,805 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2020-07-29 01:10:49,806 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2020-07-29 01:10:49,807 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2020-07-29 01:10:49,808 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2020-07-29 01:10:49,810 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2020-07-29 01:10:49,811 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2020-07-29 01:10:49,812 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2020-07-29 01:10:49,813 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2020-07-29 01:10:49,813 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2020-07-29 01:10:49,813 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2020-07-29 01:10:49,814 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2020-07-29 01:10:49,816 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2020-07-29 01:10:49,817 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Bitvector.epf [2020-07-29 01:10:49,850 INFO L113 SettingsManager]: Loading preferences was successful [2020-07-29 01:10:49,850 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2020-07-29 01:10:49,853 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2020-07-29 01:10:49,853 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2020-07-29 01:10:49,854 INFO L138 SettingsManager]: * Use SBE=true [2020-07-29 01:10:49,854 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2020-07-29 01:10:49,854 INFO L138 SettingsManager]: * sizeof long=4 [2020-07-29 01:10:49,854 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2020-07-29 01:10:49,855 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2020-07-29 01:10:49,855 INFO L138 SettingsManager]: * sizeof POINTER=4 [2020-07-29 01:10:49,856 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2020-07-29 01:10:49,856 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2020-07-29 01:10:49,856 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2020-07-29 01:10:49,857 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2020-07-29 01:10:49,857 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2020-07-29 01:10:49,857 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2020-07-29 01:10:49,857 INFO L138 SettingsManager]: * Use bitvectors instead of ints=true [2020-07-29 01:10:49,858 INFO L138 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2020-07-29 01:10:49,858 INFO L138 SettingsManager]: * sizeof long double=12 [2020-07-29 01:10:49,859 INFO L138 SettingsManager]: * Use constant arrays=true [2020-07-29 01:10:49,860 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2020-07-29 01:10:49,861 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2020-07-29 01:10:49,861 INFO L138 SettingsManager]: * To the following directory=./dump/ [2020-07-29 01:10:49,864 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2020-07-29 01:10:49,864 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-29 01:10:49,864 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2020-07-29 01:10:49,865 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2020-07-29 01:10:49,865 INFO L138 SettingsManager]: * Trace refinement strategy=WOLF [2020-07-29 01:10:49,865 INFO L138 SettingsManager]: * Command for external solver=cvc4 --incremental --rewrite-divk --print-success --lang smt [2020-07-29 01:10:49,865 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2020-07-29 01:10:49,865 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2020-07-29 01:10:49,866 INFO L138 SettingsManager]: * Logic for external solver=AUFBV Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 41b5142f2d6582efd6d9a128e4dfef83faaab097 [2020-07-29 01:10:50,198 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2020-07-29 01:10:50,211 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2020-07-29 01:10:50,215 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2020-07-29 01:10:50,217 INFO L271 PluginConnector]: Initializing CDTParser... [2020-07-29 01:10:50,218 INFO L275 PluginConnector]: CDTParser initialized [2020-07-29 01:10:50,218 INFO L429 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/list-properties/simple_built_from_end.i [2020-07-29 01:10:50,285 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/93cbcab60/4f893987e50840f784fe9fe7275cc2a9/FLAG0a14eebd0 [2020-07-29 01:10:50,833 INFO L306 CDTParser]: Found 1 translation units. [2020-07-29 01:10:50,834 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/list-properties/simple_built_from_end.i [2020-07-29 01:10:50,848 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/93cbcab60/4f893987e50840f784fe9fe7275cc2a9/FLAG0a14eebd0 [2020-07-29 01:10:51,165 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/93cbcab60/4f893987e50840f784fe9fe7275cc2a9 [2020-07-29 01:10:51,169 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2020-07-29 01:10:51,173 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2020-07-29 01:10:51,174 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2020-07-29 01:10:51,174 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2020-07-29 01:10:51,178 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2020-07-29 01:10:51,180 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 29.07 01:10:51" (1/1) ... [2020-07-29 01:10:51,183 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4d874a55 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:10:51, skipping insertion in model container [2020-07-29 01:10:51,183 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 29.07 01:10:51" (1/1) ... [2020-07-29 01:10:51,193 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2020-07-29 01:10:51,251 INFO L178 MainTranslator]: Built tables and reachable declarations [2020-07-29 01:10:51,767 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-29 01:10:51,783 INFO L203 MainTranslator]: Completed pre-run [2020-07-29 01:10:51,826 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-29 01:10:51,901 INFO L208 MainTranslator]: Completed translation [2020-07-29 01:10:51,901 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:10:51 WrapperNode [2020-07-29 01:10:51,902 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2020-07-29 01:10:51,903 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2020-07-29 01:10:51,903 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2020-07-29 01:10:51,904 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2020-07-29 01:10:51,916 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:10:51" (1/1) ... [2020-07-29 01:10:51,916 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:10:51" (1/1) ... [2020-07-29 01:10:51,936 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:10:51" (1/1) ... [2020-07-29 01:10:51,936 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:10:51" (1/1) ... [2020-07-29 01:10:51,959 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:10:51" (1/1) ... [2020-07-29 01:10:51,965 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:10:51" (1/1) ... [2020-07-29 01:10:51,970 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:10:51" (1/1) ... [2020-07-29 01:10:51,984 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2020-07-29 01:10:51,985 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2020-07-29 01:10:51,985 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2020-07-29 01:10:51,985 INFO L275 PluginConnector]: RCFGBuilder initialized [2020-07-29 01:10:51,986 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:10:51" (1/1) ... No working directory specified, using /storage/repos/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 [2020-07-29 01:10:52,078 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2020-07-29 01:10:52,079 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2020-07-29 01:10:52,079 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.setCurrentRoundingMode [2020-07-29 01:10:52,080 INFO L138 BoogieDeclarations]: Found implementation of procedure __bswap_32 [2020-07-29 01:10:52,080 INFO L138 BoogieDeclarations]: Found implementation of procedure __bswap_64 [2020-07-29 01:10:52,081 INFO L138 BoogieDeclarations]: Found implementation of procedure __uint16_identity [2020-07-29 01:10:52,081 INFO L138 BoogieDeclarations]: Found implementation of procedure __uint32_identity [2020-07-29 01:10:52,082 INFO L138 BoogieDeclarations]: Found implementation of procedure __uint64_identity [2020-07-29 01:10:52,082 INFO L138 BoogieDeclarations]: Found implementation of procedure myexit [2020-07-29 01:10:52,082 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2020-07-29 01:10:52,083 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_error [2020-07-29 01:10:52,083 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2020-07-29 01:10:52,083 INFO L130 BoogieDeclarations]: Found specification of procedure __ctype_get_mb_cur_max [2020-07-29 01:10:52,084 INFO L130 BoogieDeclarations]: Found specification of procedure atof [2020-07-29 01:10:52,085 INFO L130 BoogieDeclarations]: Found specification of procedure atoi [2020-07-29 01:10:52,085 INFO L130 BoogieDeclarations]: Found specification of procedure atol [2020-07-29 01:10:52,085 INFO L130 BoogieDeclarations]: Found specification of procedure atoll [2020-07-29 01:10:52,085 INFO L130 BoogieDeclarations]: Found specification of procedure strtod [2020-07-29 01:10:52,086 INFO L130 BoogieDeclarations]: Found specification of procedure strtof [2020-07-29 01:10:52,086 INFO L130 BoogieDeclarations]: Found specification of procedure strtold [2020-07-29 01:10:52,086 INFO L130 BoogieDeclarations]: Found specification of procedure strtol [2020-07-29 01:10:52,086 INFO L130 BoogieDeclarations]: Found specification of procedure strtoul [2020-07-29 01:10:52,087 INFO L130 BoogieDeclarations]: Found specification of procedure strtoq [2020-07-29 01:10:52,088 INFO L130 BoogieDeclarations]: Found specification of procedure strtouq [2020-07-29 01:10:52,088 INFO L130 BoogieDeclarations]: Found specification of procedure strtoll [2020-07-29 01:10:52,088 INFO L130 BoogieDeclarations]: Found specification of procedure strtoull [2020-07-29 01:10:52,089 INFO L130 BoogieDeclarations]: Found specification of procedure l64a [2020-07-29 01:10:52,089 INFO L130 BoogieDeclarations]: Found specification of procedure a64l [2020-07-29 01:10:52,089 INFO L130 BoogieDeclarations]: Found specification of procedure __bswap_32 [2020-07-29 01:10:52,089 INFO L130 BoogieDeclarations]: Found specification of procedure __bswap_64 [2020-07-29 01:10:52,089 INFO L130 BoogieDeclarations]: Found specification of procedure __uint16_identity [2020-07-29 01:10:52,090 INFO L130 BoogieDeclarations]: Found specification of procedure __uint32_identity [2020-07-29 01:10:52,090 INFO L130 BoogieDeclarations]: Found specification of procedure __uint64_identity [2020-07-29 01:10:52,090 INFO L130 BoogieDeclarations]: Found specification of procedure select [2020-07-29 01:10:52,090 INFO L130 BoogieDeclarations]: Found specification of procedure pselect [2020-07-29 01:10:52,091 INFO L130 BoogieDeclarations]: Found specification of procedure gnu_dev_major [2020-07-29 01:10:52,091 INFO L130 BoogieDeclarations]: Found specification of procedure gnu_dev_minor [2020-07-29 01:10:52,091 INFO L130 BoogieDeclarations]: Found specification of procedure gnu_dev_makedev [2020-07-29 01:10:52,091 INFO L130 BoogieDeclarations]: Found specification of procedure random [2020-07-29 01:10:52,093 INFO L130 BoogieDeclarations]: Found specification of procedure srandom [2020-07-29 01:10:52,093 INFO L130 BoogieDeclarations]: Found specification of procedure initstate [2020-07-29 01:10:52,093 INFO L130 BoogieDeclarations]: Found specification of procedure setstate [2020-07-29 01:10:52,094 INFO L130 BoogieDeclarations]: Found specification of procedure random_r [2020-07-29 01:10:52,094 INFO L130 BoogieDeclarations]: Found specification of procedure srandom_r [2020-07-29 01:10:52,094 INFO L130 BoogieDeclarations]: Found specification of procedure initstate_r [2020-07-29 01:10:52,094 INFO L130 BoogieDeclarations]: Found specification of procedure setstate_r [2020-07-29 01:10:52,094 INFO L130 BoogieDeclarations]: Found specification of procedure rand [2020-07-29 01:10:52,094 INFO L130 BoogieDeclarations]: Found specification of procedure srand [2020-07-29 01:10:52,094 INFO L130 BoogieDeclarations]: Found specification of procedure rand_r [2020-07-29 01:10:52,095 INFO L130 BoogieDeclarations]: Found specification of procedure drand48 [2020-07-29 01:10:52,095 INFO L130 BoogieDeclarations]: Found specification of procedure erand48 [2020-07-29 01:10:52,095 INFO L130 BoogieDeclarations]: Found specification of procedure lrand48 [2020-07-29 01:10:52,095 INFO L130 BoogieDeclarations]: Found specification of procedure nrand48 [2020-07-29 01:10:52,095 INFO L130 BoogieDeclarations]: Found specification of procedure mrand48 [2020-07-29 01:10:52,095 INFO L130 BoogieDeclarations]: Found specification of procedure jrand48 [2020-07-29 01:10:52,095 INFO L130 BoogieDeclarations]: Found specification of procedure srand48 [2020-07-29 01:10:52,096 INFO L130 BoogieDeclarations]: Found specification of procedure seed48 [2020-07-29 01:10:52,096 INFO L130 BoogieDeclarations]: Found specification of procedure lcong48 [2020-07-29 01:10:52,096 INFO L130 BoogieDeclarations]: Found specification of procedure drand48_r [2020-07-29 01:10:52,096 INFO L130 BoogieDeclarations]: Found specification of procedure erand48_r [2020-07-29 01:10:52,096 INFO L130 BoogieDeclarations]: Found specification of procedure lrand48_r [2020-07-29 01:10:52,096 INFO L130 BoogieDeclarations]: Found specification of procedure nrand48_r [2020-07-29 01:10:52,096 INFO L130 BoogieDeclarations]: Found specification of procedure mrand48_r [2020-07-29 01:10:52,097 INFO L130 BoogieDeclarations]: Found specification of procedure jrand48_r [2020-07-29 01:10:52,097 INFO L130 BoogieDeclarations]: Found specification of procedure srand48_r [2020-07-29 01:10:52,097 INFO L130 BoogieDeclarations]: Found specification of procedure seed48_r [2020-07-29 01:10:52,097 INFO L130 BoogieDeclarations]: Found specification of procedure lcong48_r [2020-07-29 01:10:52,097 INFO L130 BoogieDeclarations]: Found specification of procedure malloc [2020-07-29 01:10:52,097 INFO L130 BoogieDeclarations]: Found specification of procedure calloc [2020-07-29 01:10:52,097 INFO L130 BoogieDeclarations]: Found specification of procedure realloc [2020-07-29 01:10:52,098 INFO L130 BoogieDeclarations]: Found specification of procedure free [2020-07-29 01:10:52,098 INFO L130 BoogieDeclarations]: Found specification of procedure alloca [2020-07-29 01:10:52,098 INFO L130 BoogieDeclarations]: Found specification of procedure valloc [2020-07-29 01:10:52,098 INFO L130 BoogieDeclarations]: Found specification of procedure posix_memalign [2020-07-29 01:10:52,098 INFO L130 BoogieDeclarations]: Found specification of procedure aligned_alloc [2020-07-29 01:10:52,098 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2020-07-29 01:10:52,098 INFO L130 BoogieDeclarations]: Found specification of procedure atexit [2020-07-29 01:10:52,099 INFO L130 BoogieDeclarations]: Found specification of procedure at_quick_exit [2020-07-29 01:10:52,099 INFO L130 BoogieDeclarations]: Found specification of procedure on_exit [2020-07-29 01:10:52,099 INFO L130 BoogieDeclarations]: Found specification of procedure exit [2020-07-29 01:10:52,099 INFO L130 BoogieDeclarations]: Found specification of procedure quick_exit [2020-07-29 01:10:52,099 INFO L130 BoogieDeclarations]: Found specification of procedure _Exit [2020-07-29 01:10:52,099 INFO L130 BoogieDeclarations]: Found specification of procedure getenv [2020-07-29 01:10:52,099 INFO L130 BoogieDeclarations]: Found specification of procedure putenv [2020-07-29 01:10:52,099 INFO L130 BoogieDeclarations]: Found specification of procedure setenv [2020-07-29 01:10:52,100 INFO L130 BoogieDeclarations]: Found specification of procedure unsetenv [2020-07-29 01:10:52,100 INFO L130 BoogieDeclarations]: Found specification of procedure clearenv [2020-07-29 01:10:52,100 INFO L130 BoogieDeclarations]: Found specification of procedure mktemp [2020-07-29 01:10:52,100 INFO L130 BoogieDeclarations]: Found specification of procedure mkstemp [2020-07-29 01:10:52,100 INFO L130 BoogieDeclarations]: Found specification of procedure mkstemps [2020-07-29 01:10:52,100 INFO L130 BoogieDeclarations]: Found specification of procedure mkdtemp [2020-07-29 01:10:52,100 INFO L130 BoogieDeclarations]: Found specification of procedure system [2020-07-29 01:10:52,100 INFO L130 BoogieDeclarations]: Found specification of procedure realpath [2020-07-29 01:10:52,101 INFO L130 BoogieDeclarations]: Found specification of procedure bsearch [2020-07-29 01:10:52,101 INFO L130 BoogieDeclarations]: Found specification of procedure qsort [2020-07-29 01:10:52,101 INFO L130 BoogieDeclarations]: Found specification of procedure abs [2020-07-29 01:10:52,101 INFO L130 BoogieDeclarations]: Found specification of procedure labs [2020-07-29 01:10:52,101 INFO L130 BoogieDeclarations]: Found specification of procedure llabs [2020-07-29 01:10:52,101 INFO L130 BoogieDeclarations]: Found specification of procedure div [2020-07-29 01:10:52,101 INFO L130 BoogieDeclarations]: Found specification of procedure ldiv [2020-07-29 01:10:52,102 INFO L130 BoogieDeclarations]: Found specification of procedure lldiv [2020-07-29 01:10:52,102 INFO L130 BoogieDeclarations]: Found specification of procedure ecvt [2020-07-29 01:10:52,102 INFO L130 BoogieDeclarations]: Found specification of procedure fcvt [2020-07-29 01:10:52,102 INFO L130 BoogieDeclarations]: Found specification of procedure gcvt [2020-07-29 01:10:52,102 INFO L130 BoogieDeclarations]: Found specification of procedure qecvt [2020-07-29 01:10:52,102 INFO L130 BoogieDeclarations]: Found specification of procedure qfcvt [2020-07-29 01:10:52,102 INFO L130 BoogieDeclarations]: Found specification of procedure qgcvt [2020-07-29 01:10:52,102 INFO L130 BoogieDeclarations]: Found specification of procedure ecvt_r [2020-07-29 01:10:52,103 INFO L130 BoogieDeclarations]: Found specification of procedure fcvt_r [2020-07-29 01:10:52,103 INFO L130 BoogieDeclarations]: Found specification of procedure qecvt_r [2020-07-29 01:10:52,103 INFO L130 BoogieDeclarations]: Found specification of procedure qfcvt_r [2020-07-29 01:10:52,103 INFO L130 BoogieDeclarations]: Found specification of procedure mblen [2020-07-29 01:10:52,103 INFO L130 BoogieDeclarations]: Found specification of procedure mbtowc [2020-07-29 01:10:52,103 INFO L130 BoogieDeclarations]: Found specification of procedure wctomb [2020-07-29 01:10:52,103 INFO L130 BoogieDeclarations]: Found specification of procedure mbstowcs [2020-07-29 01:10:52,104 INFO L130 BoogieDeclarations]: Found specification of procedure wcstombs [2020-07-29 01:10:52,104 INFO L130 BoogieDeclarations]: Found specification of procedure rpmatch [2020-07-29 01:10:52,104 INFO L130 BoogieDeclarations]: Found specification of procedure getsubopt [2020-07-29 01:10:52,104 INFO L130 BoogieDeclarations]: Found specification of procedure getloadavg [2020-07-29 01:10:52,104 INFO L130 BoogieDeclarations]: Found specification of procedure myexit [2020-07-29 01:10:52,104 INFO L130 BoogieDeclarations]: Found specification of procedure main [2020-07-29 01:10:52,104 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2020-07-29 01:10:52,105 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2020-07-29 01:10:52,105 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2020-07-29 01:10:52,105 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2020-07-29 01:10:52,105 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2020-07-29 01:10:52,105 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2020-07-29 01:10:52,105 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2020-07-29 01:10:52,105 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.setCurrentRoundingMode [2020-07-29 01:10:52,105 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2020-07-29 01:10:52,485 INFO L728 $ProcedureCfgBuilder]: dead code at ProgramPoint myexitFINAL: assume true; [2020-07-29 01:10:52,688 INFO L290 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2020-07-29 01:10:52,688 INFO L295 CfgBuilder]: Removed 2 assume(true) statements. [2020-07-29 01:10:52,692 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 29.07 01:10:52 BoogieIcfgContainer [2020-07-29 01:10:52,692 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2020-07-29 01:10:52,694 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2020-07-29 01:10:52,694 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2020-07-29 01:10:52,697 INFO L275 PluginConnector]: TraceAbstraction initialized [2020-07-29 01:10:52,698 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 29.07 01:10:51" (1/3) ... [2020-07-29 01:10:52,698 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@42ac78c3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 29.07 01:10:52, skipping insertion in model container [2020-07-29 01:10:52,699 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:10:51" (2/3) ... [2020-07-29 01:10:52,699 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@42ac78c3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 29.07 01:10:52, skipping insertion in model container [2020-07-29 01:10:52,699 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 29.07 01:10:52" (3/3) ... [2020-07-29 01:10:52,701 INFO L109 eAbstractionObserver]: Analyzing ICFG simple_built_from_end.i [2020-07-29 01:10:52,712 INFO L157 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2020-07-29 01:10:52,721 INFO L169 ceAbstractionStarter]: Appying trace abstraction to program that has 10 error locations. [2020-07-29 01:10:52,737 INFO L251 AbstractCegarLoop]: Starting to check reachability of 10 error locations. [2020-07-29 01:10:52,759 INFO L375 AbstractCegarLoop]: Interprodecural is true [2020-07-29 01:10:52,760 INFO L376 AbstractCegarLoop]: Hoare is false [2020-07-29 01:10:52,760 INFO L377 AbstractCegarLoop]: Compute interpolants for FPandBP [2020-07-29 01:10:52,760 INFO L378 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2020-07-29 01:10:52,760 INFO L379 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2020-07-29 01:10:52,760 INFO L380 AbstractCegarLoop]: Difference is false [2020-07-29 01:10:52,760 INFO L381 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2020-07-29 01:10:52,760 INFO L385 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2020-07-29 01:10:52,776 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states. [2020-07-29 01:10:52,785 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2020-07-29 01:10:52,786 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:10:52,787 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:10:52,787 INFO L427 AbstractCegarLoop]: === Iteration 1 === [mainErr6ASSERT_VIOLATIONMEMORY_LEAK, mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr8REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr9ENSURES_VIOLATIONMEMORY_LEAK, mainErr0REQUIRES_VIOLATION, mainErr1REQUIRES_VIOLATION, mainErr7REQUIRES_VIOLATION]=== [2020-07-29 01:10:52,794 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:10:52,795 INFO L82 PathProgramCache]: Analyzing trace with hash -72951773, now seen corresponding path program 1 times [2020-07-29 01:10:52,810 INFO L163 FreeRefinementEngine]: Executing refinement strategy WOLF [2020-07-29 01:10:52,810 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1902786059] [2020-07-29 01:10:52,811 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat Starting monitored process 2 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with mathsat -unsat_core_generation=3 [2020-07-29 01:10:52,964 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:52,967 INFO L263 TraceCheckSpWp]: Trace formula consists of 35 conjuncts, 2 conjunts are in the unsatisfiable core [2020-07-29 01:10:52,977 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:52,982 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2020-07-29 01:10:53,048 INFO L263 TraceCheckUtils]: 0: Hoare triple {37#true} call ULTIMATE.init(); {37#true} is VALID [2020-07-29 01:10:53,049 INFO L280 TraceCheckUtils]: 1: Hoare triple {37#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {37#true} is VALID [2020-07-29 01:10:53,049 INFO L280 TraceCheckUtils]: 2: Hoare triple {37#true} assume true; {37#true} is VALID [2020-07-29 01:10:53,050 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {37#true} {37#true} #101#return; {37#true} is VALID [2020-07-29 01:10:53,051 INFO L263 TraceCheckUtils]: 4: Hoare triple {37#true} call #t~ret6 := main(); {54#(= |#valid| |old(#valid)|)} is VALID [2020-07-29 01:10:53,053 INFO L280 TraceCheckUtils]: 5: Hoare triple {54#(= |#valid| |old(#valid)|)} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0bv32, 0bv32; {54#(= |#valid| |old(#valid)|)} is VALID [2020-07-29 01:10:53,054 INFO L280 TraceCheckUtils]: 6: Hoare triple {54#(= |#valid| |old(#valid)|)} assume !(0bv32 != #t~nondet2);havoc #t~nondet2; {54#(= |#valid| |old(#valid)|)} is VALID [2020-07-29 01:10:53,055 INFO L280 TraceCheckUtils]: 7: Hoare triple {54#(= |#valid| |old(#valid)|)} assume !(~p~0.base != 0bv32 || ~p~0.offset != 0bv32); {54#(= |#valid| |old(#valid)|)} is VALID [2020-07-29 01:10:53,056 INFO L280 TraceCheckUtils]: 8: Hoare triple {54#(= |#valid| |old(#valid)|)} assume !(#valid == old(#valid)); {38#false} is VALID [2020-07-29 01:10:53,059 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:53,059 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2020-07-29 01:10:53,092 INFO L280 TraceCheckUtils]: 8: Hoare triple {54#(= |#valid| |old(#valid)|)} assume !(#valid == old(#valid)); {38#false} is VALID [2020-07-29 01:10:53,093 INFO L280 TraceCheckUtils]: 7: Hoare triple {54#(= |#valid| |old(#valid)|)} assume !(~p~0.base != 0bv32 || ~p~0.offset != 0bv32); {54#(= |#valid| |old(#valid)|)} is VALID [2020-07-29 01:10:53,094 INFO L280 TraceCheckUtils]: 6: Hoare triple {54#(= |#valid| |old(#valid)|)} assume !(0bv32 != #t~nondet2);havoc #t~nondet2; {54#(= |#valid| |old(#valid)|)} is VALID [2020-07-29 01:10:53,095 INFO L280 TraceCheckUtils]: 5: Hoare triple {54#(= |#valid| |old(#valid)|)} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0bv32, 0bv32; {54#(= |#valid| |old(#valid)|)} is VALID [2020-07-29 01:10:53,096 INFO L263 TraceCheckUtils]: 4: Hoare triple {37#true} call #t~ret6 := main(); {54#(= |#valid| |old(#valid)|)} is VALID [2020-07-29 01:10:53,097 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {37#true} {37#true} #101#return; {37#true} is VALID [2020-07-29 01:10:53,097 INFO L280 TraceCheckUtils]: 2: Hoare triple {37#true} assume true; {37#true} is VALID [2020-07-29 01:10:53,098 INFO L280 TraceCheckUtils]: 1: Hoare triple {37#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {37#true} is VALID [2020-07-29 01:10:53,098 INFO L263 TraceCheckUtils]: 0: Hoare triple {37#true} call ULTIMATE.init(); {37#true} is VALID [2020-07-29 01:10:53,099 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:53,100 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1902786059] [2020-07-29 01:10:53,101 INFO L220 FreeRefinementEngine]: Constructing automaton from 2 perfect and 0 imperfect interpolant sequences. [2020-07-29 01:10:53,101 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2, 2] imperfect sequences [] total 2 [2020-07-29 01:10:53,102 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [461785041] [2020-07-29 01:10:53,109 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 9 [2020-07-29 01:10:53,112 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:10:53,116 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2020-07-29 01:10:53,139 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 9 edges. 9 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:53,139 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2020-07-29 01:10:53,139 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2020-07-29 01:10:53,150 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2020-07-29 01:10:53,151 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2020-07-29 01:10:53,153 INFO L87 Difference]: Start difference. First operand 34 states. Second operand 3 states. [2020-07-29 01:10:53,383 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:53,383 INFO L93 Difference]: Finished difference Result 47 states and 51 transitions. [2020-07-29 01:10:53,383 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2020-07-29 01:10:53,383 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 9 [2020-07-29 01:10:53,384 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:10:53,385 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2020-07-29 01:10:53,401 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 58 transitions. [2020-07-29 01:10:53,401 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2020-07-29 01:10:53,405 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 58 transitions. [2020-07-29 01:10:53,406 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 58 transitions. [2020-07-29 01:10:53,534 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:53,553 INFO L225 Difference]: With dead ends: 47 [2020-07-29 01:10:53,554 INFO L226 Difference]: Without dead ends: 40 [2020-07-29 01:10:53,558 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 16 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2020-07-29 01:10:53,580 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2020-07-29 01:10:53,602 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 34. [2020-07-29 01:10:53,603 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:10:53,604 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand 34 states. [2020-07-29 01:10:53,605 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand 34 states. [2020-07-29 01:10:53,605 INFO L87 Difference]: Start difference. First operand 40 states. Second operand 34 states. [2020-07-29 01:10:53,611 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:53,612 INFO L93 Difference]: Finished difference Result 40 states and 42 transitions. [2020-07-29 01:10:53,612 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 42 transitions. [2020-07-29 01:10:53,613 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:53,614 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:53,614 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand 40 states. [2020-07-29 01:10:53,614 INFO L87 Difference]: Start difference. First operand 34 states. Second operand 40 states. [2020-07-29 01:10:53,619 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:53,620 INFO L93 Difference]: Finished difference Result 40 states and 42 transitions. [2020-07-29 01:10:53,620 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 42 transitions. [2020-07-29 01:10:53,621 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:53,621 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:53,621 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:10:53,622 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:10:53,622 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 34 states. [2020-07-29 01:10:53,625 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 41 transitions. [2020-07-29 01:10:53,627 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 41 transitions. Word has length 9 [2020-07-29 01:10:53,627 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:10:53,628 INFO L479 AbstractCegarLoop]: Abstraction has 34 states and 41 transitions. [2020-07-29 01:10:53,628 INFO L480 AbstractCegarLoop]: Interpolant automaton has 3 states. [2020-07-29 01:10:53,628 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2020-07-29 01:10:53,629 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2020-07-29 01:10:53,629 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:10:53,630 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:10:53,843 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 mathsat -unsat_core_generation=3 [2020-07-29 01:10:53,844 INFO L427 AbstractCegarLoop]: === Iteration 2 === [mainErr6ASSERT_VIOLATIONMEMORY_LEAK, mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr8REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr9ENSURES_VIOLATIONMEMORY_LEAK, mainErr0REQUIRES_VIOLATION, mainErr1REQUIRES_VIOLATION, mainErr7REQUIRES_VIOLATION]=== [2020-07-29 01:10:53,845 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:10:53,845 INFO L82 PathProgramCache]: Analyzing trace with hash -72951730, now seen corresponding path program 1 times [2020-07-29 01:10:53,846 INFO L163 FreeRefinementEngine]: Executing refinement strategy WOLF [2020-07-29 01:10:53,846 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1235043653] [2020-07-29 01:10:53,847 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat Starting monitored process 3 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with mathsat -unsat_core_generation=3 [2020-07-29 01:10:53,939 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:53,941 INFO L263 TraceCheckSpWp]: Trace formula consists of 34 conjuncts, 3 conjunts are in the unsatisfiable core [2020-07-29 01:10:53,948 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:53,949 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2020-07-29 01:10:53,989 INFO L263 TraceCheckUtils]: 0: Hoare triple {254#true} call ULTIMATE.init(); {254#true} is VALID [2020-07-29 01:10:53,989 INFO L280 TraceCheckUtils]: 1: Hoare triple {254#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {254#true} is VALID [2020-07-29 01:10:53,990 INFO L280 TraceCheckUtils]: 2: Hoare triple {254#true} assume true; {254#true} is VALID [2020-07-29 01:10:53,990 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {254#true} {254#true} #101#return; {254#true} is VALID [2020-07-29 01:10:53,991 INFO L263 TraceCheckUtils]: 4: Hoare triple {254#true} call #t~ret6 := main(); {254#true} is VALID [2020-07-29 01:10:53,992 INFO L280 TraceCheckUtils]: 5: Hoare triple {254#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0bv32, 0bv32; {274#(and (= (_ bv0 32) main_~p~0.offset) (= main_~p~0.base (_ bv0 32)))} is VALID [2020-07-29 01:10:53,993 INFO L280 TraceCheckUtils]: 6: Hoare triple {274#(and (= (_ bv0 32) main_~p~0.offset) (= main_~p~0.base (_ bv0 32)))} assume !(0bv32 != #t~nondet2);havoc #t~nondet2; {274#(and (= (_ bv0 32) main_~p~0.offset) (= main_~p~0.base (_ bv0 32)))} is VALID [2020-07-29 01:10:53,994 INFO L280 TraceCheckUtils]: 7: Hoare triple {274#(and (= (_ bv0 32) main_~p~0.offset) (= main_~p~0.base (_ bv0 32)))} assume !!(~p~0.base != 0bv32 || ~p~0.offset != 0bv32); {255#false} is VALID [2020-07-29 01:10:53,995 INFO L280 TraceCheckUtils]: 8: Hoare triple {255#false} assume !(1bv1 == #valid[~p~0.base]); {255#false} is VALID [2020-07-29 01:10:53,996 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:53,996 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2020-07-29 01:10:54,016 INFO L280 TraceCheckUtils]: 8: Hoare triple {255#false} assume !(1bv1 == #valid[~p~0.base]); {255#false} is VALID [2020-07-29 01:10:54,018 INFO L280 TraceCheckUtils]: 7: Hoare triple {274#(and (= (_ bv0 32) main_~p~0.offset) (= main_~p~0.base (_ bv0 32)))} assume !!(~p~0.base != 0bv32 || ~p~0.offset != 0bv32); {255#false} is VALID [2020-07-29 01:10:54,019 INFO L280 TraceCheckUtils]: 6: Hoare triple {274#(and (= (_ bv0 32) main_~p~0.offset) (= main_~p~0.base (_ bv0 32)))} assume !(0bv32 != #t~nondet2);havoc #t~nondet2; {274#(and (= (_ bv0 32) main_~p~0.offset) (= main_~p~0.base (_ bv0 32)))} is VALID [2020-07-29 01:10:54,020 INFO L280 TraceCheckUtils]: 5: Hoare triple {254#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0bv32, 0bv32; {274#(and (= (_ bv0 32) main_~p~0.offset) (= main_~p~0.base (_ bv0 32)))} is VALID [2020-07-29 01:10:54,020 INFO L263 TraceCheckUtils]: 4: Hoare triple {254#true} call #t~ret6 := main(); {254#true} is VALID [2020-07-29 01:10:54,021 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {254#true} {254#true} #101#return; {254#true} is VALID [2020-07-29 01:10:54,021 INFO L280 TraceCheckUtils]: 2: Hoare triple {254#true} assume true; {254#true} is VALID [2020-07-29 01:10:54,021 INFO L280 TraceCheckUtils]: 1: Hoare triple {254#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {254#true} is VALID [2020-07-29 01:10:54,022 INFO L263 TraceCheckUtils]: 0: Hoare triple {254#true} call ULTIMATE.init(); {254#true} is VALID [2020-07-29 01:10:54,023 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:54,023 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1235043653] [2020-07-29 01:10:54,023 INFO L220 FreeRefinementEngine]: Constructing automaton from 2 perfect and 0 imperfect interpolant sequences. [2020-07-29 01:10:54,024 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3, 3] imperfect sequences [] total 3 [2020-07-29 01:10:54,024 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1688818728] [2020-07-29 01:10:54,026 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 9 [2020-07-29 01:10:54,026 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:10:54,027 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2020-07-29 01:10:54,040 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 9 edges. 9 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:54,040 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2020-07-29 01:10:54,040 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2020-07-29 01:10:54,041 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2020-07-29 01:10:54,041 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2020-07-29 01:10:54,041 INFO L87 Difference]: Start difference. First operand 34 states and 41 transitions. Second operand 3 states. [2020-07-29 01:10:54,203 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:54,203 INFO L93 Difference]: Finished difference Result 38 states and 39 transitions. [2020-07-29 01:10:54,204 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2020-07-29 01:10:54,204 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 9 [2020-07-29 01:10:54,204 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:10:54,204 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2020-07-29 01:10:54,207 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 40 transitions. [2020-07-29 01:10:54,208 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2020-07-29 01:10:54,210 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 40 transitions. [2020-07-29 01:10:54,210 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 40 transitions. [2020-07-29 01:10:54,283 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:54,285 INFO L225 Difference]: With dead ends: 38 [2020-07-29 01:10:54,285 INFO L226 Difference]: Without dead ends: 37 [2020-07-29 01:10:54,287 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 16 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2020-07-29 01:10:54,287 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2020-07-29 01:10:54,290 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 29. [2020-07-29 01:10:54,291 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:10:54,291 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand 29 states. [2020-07-29 01:10:54,291 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand 29 states. [2020-07-29 01:10:54,292 INFO L87 Difference]: Start difference. First operand 37 states. Second operand 29 states. [2020-07-29 01:10:54,295 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:54,295 INFO L93 Difference]: Finished difference Result 37 states and 38 transitions. [2020-07-29 01:10:54,296 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 38 transitions. [2020-07-29 01:10:54,296 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:54,297 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:54,297 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 37 states. [2020-07-29 01:10:54,297 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 37 states. [2020-07-29 01:10:54,300 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:54,301 INFO L93 Difference]: Finished difference Result 37 states and 38 transitions. [2020-07-29 01:10:54,301 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 38 transitions. [2020-07-29 01:10:54,302 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:54,302 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:54,303 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:10:54,303 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:10:54,303 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2020-07-29 01:10:54,305 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 30 transitions. [2020-07-29 01:10:54,306 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 30 transitions. Word has length 9 [2020-07-29 01:10:54,306 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:10:54,306 INFO L479 AbstractCegarLoop]: Abstraction has 29 states and 30 transitions. [2020-07-29 01:10:54,307 INFO L480 AbstractCegarLoop]: Interpolant automaton has 3 states. [2020-07-29 01:10:54,307 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 30 transitions. [2020-07-29 01:10:54,308 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2020-07-29 01:10:54,308 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:10:54,308 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:10:54,527 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 mathsat -unsat_core_generation=3 [2020-07-29 01:10:54,528 INFO L427 AbstractCegarLoop]: === Iteration 3 === [mainErr6ASSERT_VIOLATIONMEMORY_LEAK, mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr8REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr9ENSURES_VIOLATIONMEMORY_LEAK, mainErr0REQUIRES_VIOLATION, mainErr1REQUIRES_VIOLATION, mainErr7REQUIRES_VIOLATION]=== [2020-07-29 01:10:54,529 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:10:54,529 INFO L82 PathProgramCache]: Analyzing trace with hash -72950415, now seen corresponding path program 1 times [2020-07-29 01:10:54,530 INFO L163 FreeRefinementEngine]: Executing refinement strategy WOLF [2020-07-29 01:10:54,531 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1025054408] [2020-07-29 01:10:54,531 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat Starting monitored process 4 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with mathsat -unsat_core_generation=3 [2020-07-29 01:10:54,625 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:54,627 INFO L263 TraceCheckSpWp]: Trace formula consists of 42 conjuncts, 3 conjunts are in the unsatisfiable core [2020-07-29 01:10:54,634 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:54,635 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2020-07-29 01:10:54,697 INFO L384 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2020-07-29 01:10:54,698 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 01:10:54,705 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 01:10:54,706 INFO L544 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2020-07-29 01:10:54,706 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:6, output treesize:5 [2020-07-29 01:10:54,710 WARN L406 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2020-07-29 01:10:54,710 WARN L407 uantifierElimination]: Input elimination task: ∃ [|v_#valid_25|]. (= |#valid| (store |v_#valid_25| main_~t~0.base (_ bv1 1))) [2020-07-29 01:10:54,711 WARN L408 uantifierElimination]: ElimStorePlain result: ∃ []. (= (select |#valid| main_~t~0.base) (_ bv1 1)) [2020-07-29 01:10:54,723 INFO L263 TraceCheckUtils]: 0: Hoare triple {451#true} call ULTIMATE.init(); {451#true} is VALID [2020-07-29 01:10:54,723 INFO L280 TraceCheckUtils]: 1: Hoare triple {451#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {451#true} is VALID [2020-07-29 01:10:54,724 INFO L280 TraceCheckUtils]: 2: Hoare triple {451#true} assume true; {451#true} is VALID [2020-07-29 01:10:54,724 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {451#true} {451#true} #101#return; {451#true} is VALID [2020-07-29 01:10:54,724 INFO L263 TraceCheckUtils]: 4: Hoare triple {451#true} call #t~ret6 := main(); {451#true} is VALID [2020-07-29 01:10:54,725 INFO L280 TraceCheckUtils]: 5: Hoare triple {451#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0bv32, 0bv32; {451#true} is VALID [2020-07-29 01:10:54,726 INFO L280 TraceCheckUtils]: 6: Hoare triple {451#true} assume !!(0bv32 != #t~nondet2);havoc #t~nondet2;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(8bv32);~t~0.base, ~t~0.offset := #t~malloc3.base, #t~malloc3.offset; {474#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} is VALID [2020-07-29 01:10:54,727 INFO L280 TraceCheckUtils]: 7: Hoare triple {474#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} assume !(~t~0.base == 0bv32 && ~t~0.offset == 0bv32); {474#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} is VALID [2020-07-29 01:10:54,728 INFO L280 TraceCheckUtils]: 8: Hoare triple {474#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} assume !(1bv1 == #valid[~t~0.base]); {452#false} is VALID [2020-07-29 01:10:54,729 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:54,729 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2020-07-29 01:10:54,759 INFO L280 TraceCheckUtils]: 8: Hoare triple {474#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} assume !(1bv1 == #valid[~t~0.base]); {452#false} is VALID [2020-07-29 01:10:54,759 INFO L280 TraceCheckUtils]: 7: Hoare triple {474#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} assume !(~t~0.base == 0bv32 && ~t~0.offset == 0bv32); {474#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} is VALID [2020-07-29 01:10:54,761 INFO L280 TraceCheckUtils]: 6: Hoare triple {451#true} assume !!(0bv32 != #t~nondet2);havoc #t~nondet2;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(8bv32);~t~0.base, ~t~0.offset := #t~malloc3.base, #t~malloc3.offset; {474#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} is VALID [2020-07-29 01:10:54,761 INFO L280 TraceCheckUtils]: 5: Hoare triple {451#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0bv32, 0bv32; {451#true} is VALID [2020-07-29 01:10:54,762 INFO L263 TraceCheckUtils]: 4: Hoare triple {451#true} call #t~ret6 := main(); {451#true} is VALID [2020-07-29 01:10:54,762 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {451#true} {451#true} #101#return; {451#true} is VALID [2020-07-29 01:10:54,762 INFO L280 TraceCheckUtils]: 2: Hoare triple {451#true} assume true; {451#true} is VALID [2020-07-29 01:10:54,763 INFO L280 TraceCheckUtils]: 1: Hoare triple {451#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {451#true} is VALID [2020-07-29 01:10:54,763 INFO L263 TraceCheckUtils]: 0: Hoare triple {451#true} call ULTIMATE.init(); {451#true} is VALID [2020-07-29 01:10:54,763 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:54,764 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1025054408] [2020-07-29 01:10:54,764 INFO L220 FreeRefinementEngine]: Constructing automaton from 2 perfect and 0 imperfect interpolant sequences. [2020-07-29 01:10:54,764 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2, 2] imperfect sequences [] total 2 [2020-07-29 01:10:54,764 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1974075510] [2020-07-29 01:10:54,765 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 9 [2020-07-29 01:10:54,765 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:10:54,765 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2020-07-29 01:10:54,777 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 9 edges. 9 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:54,778 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2020-07-29 01:10:54,778 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2020-07-29 01:10:54,778 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2020-07-29 01:10:54,778 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2020-07-29 01:10:54,779 INFO L87 Difference]: Start difference. First operand 29 states and 30 transitions. Second operand 3 states. [2020-07-29 01:10:54,909 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:54,910 INFO L93 Difference]: Finished difference Result 27 states and 28 transitions. [2020-07-29 01:10:54,910 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2020-07-29 01:10:54,910 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 9 [2020-07-29 01:10:54,910 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:10:54,910 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2020-07-29 01:10:54,912 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 30 transitions. [2020-07-29 01:10:54,912 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2020-07-29 01:10:54,916 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 30 transitions. [2020-07-29 01:10:54,917 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 30 transitions. [2020-07-29 01:10:54,968 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:54,970 INFO L225 Difference]: With dead ends: 27 [2020-07-29 01:10:54,970 INFO L226 Difference]: Without dead ends: 27 [2020-07-29 01:10:54,971 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 16 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2020-07-29 01:10:54,971 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2020-07-29 01:10:54,977 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2020-07-29 01:10:54,978 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:10:54,979 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand 27 states. [2020-07-29 01:10:54,979 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand 27 states. [2020-07-29 01:10:54,979 INFO L87 Difference]: Start difference. First operand 27 states. Second operand 27 states. [2020-07-29 01:10:54,981 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:54,982 INFO L93 Difference]: Finished difference Result 27 states and 28 transitions. [2020-07-29 01:10:54,982 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 28 transitions. [2020-07-29 01:10:54,986 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:54,987 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:54,987 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand 27 states. [2020-07-29 01:10:54,987 INFO L87 Difference]: Start difference. First operand 27 states. Second operand 27 states. [2020-07-29 01:10:54,989 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:54,994 INFO L93 Difference]: Finished difference Result 27 states and 28 transitions. [2020-07-29 01:10:54,995 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 28 transitions. [2020-07-29 01:10:54,995 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:54,995 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:54,995 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:10:54,996 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:10:54,996 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2020-07-29 01:10:54,998 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 28 transitions. [2020-07-29 01:10:54,998 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 28 transitions. Word has length 9 [2020-07-29 01:10:54,998 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:10:54,999 INFO L479 AbstractCegarLoop]: Abstraction has 27 states and 28 transitions. [2020-07-29 01:10:54,999 INFO L480 AbstractCegarLoop]: Interpolant automaton has 3 states. [2020-07-29 01:10:54,999 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 28 transitions. [2020-07-29 01:10:55,004 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2020-07-29 01:10:55,005 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:10:55,005 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:10:55,216 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 4 mathsat -unsat_core_generation=3 [2020-07-29 01:10:55,217 INFO L427 AbstractCegarLoop]: === Iteration 4 === [mainErr6ASSERT_VIOLATIONMEMORY_LEAK, mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr8REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr9ENSURES_VIOLATIONMEMORY_LEAK, mainErr0REQUIRES_VIOLATION, mainErr1REQUIRES_VIOLATION, mainErr7REQUIRES_VIOLATION]=== [2020-07-29 01:10:55,217 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:10:55,218 INFO L82 PathProgramCache]: Analyzing trace with hash -72950414, now seen corresponding path program 1 times [2020-07-29 01:10:55,219 INFO L163 FreeRefinementEngine]: Executing refinement strategy WOLF [2020-07-29 01:10:55,219 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1476593944] [2020-07-29 01:10:55,220 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat Starting monitored process 5 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 5 with mathsat -unsat_core_generation=3 [2020-07-29 01:10:55,303 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:55,305 INFO L263 TraceCheckSpWp]: Trace formula consists of 42 conjuncts, 5 conjunts are in the unsatisfiable core [2020-07-29 01:10:55,313 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:55,314 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2020-07-29 01:10:55,347 INFO L384 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2020-07-29 01:10:55,347 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 01:10:55,354 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 01:10:55,355 INFO L544 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2020-07-29 01:10:55,356 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:10, output treesize:9 [2020-07-29 01:10:55,361 WARN L406 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2020-07-29 01:10:55,361 WARN L407 uantifierElimination]: Input elimination task: ∃ [|v_#length_14|]. (and (= (_ bv0 32) main_~t~0.offset) (= (store |v_#length_14| main_~t~0.base (_ bv8 32)) |#length|)) [2020-07-29 01:10:55,362 WARN L408 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#length| main_~t~0.base) (_ bv8 32)) (= (_ bv0 32) main_~t~0.offset)) [2020-07-29 01:10:55,378 INFO L263 TraceCheckUtils]: 0: Hoare triple {615#true} call ULTIMATE.init(); {615#true} is VALID [2020-07-29 01:10:55,379 INFO L280 TraceCheckUtils]: 1: Hoare triple {615#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {615#true} is VALID [2020-07-29 01:10:55,379 INFO L280 TraceCheckUtils]: 2: Hoare triple {615#true} assume true; {615#true} is VALID [2020-07-29 01:10:55,379 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {615#true} {615#true} #101#return; {615#true} is VALID [2020-07-29 01:10:55,380 INFO L263 TraceCheckUtils]: 4: Hoare triple {615#true} call #t~ret6 := main(); {615#true} is VALID [2020-07-29 01:10:55,380 INFO L280 TraceCheckUtils]: 5: Hoare triple {615#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0bv32, 0bv32; {615#true} is VALID [2020-07-29 01:10:55,382 INFO L280 TraceCheckUtils]: 6: Hoare triple {615#true} assume !!(0bv32 != #t~nondet2);havoc #t~nondet2;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(8bv32);~t~0.base, ~t~0.offset := #t~malloc3.base, #t~malloc3.offset; {638#(and (= (bvadd (select |#length| main_~t~0.base) (_ bv4294967288 32)) (_ bv0 32)) (= (_ bv0 32) main_~t~0.offset))} is VALID [2020-07-29 01:10:55,384 INFO L280 TraceCheckUtils]: 7: Hoare triple {638#(and (= (bvadd (select |#length| main_~t~0.base) (_ bv4294967288 32)) (_ bv0 32)) (= (_ bv0 32) main_~t~0.offset))} assume !(~t~0.base == 0bv32 && ~t~0.offset == 0bv32); {638#(and (= (bvadd (select |#length| main_~t~0.base) (_ bv4294967288 32)) (_ bv0 32)) (= (_ bv0 32) main_~t~0.offset))} is VALID [2020-07-29 01:10:55,385 INFO L280 TraceCheckUtils]: 8: Hoare triple {638#(and (= (bvadd (select |#length| main_~t~0.base) (_ bv4294967288 32)) (_ bv0 32)) (= (_ bv0 32) main_~t~0.offset))} assume !((~bvule32(~bvadd32(4bv32, ~t~0.offset), #length[~t~0.base]) && ~bvule32(~t~0.offset, ~bvadd32(4bv32, ~t~0.offset))) && ~bvule32(0bv32, ~t~0.offset)); {616#false} is VALID [2020-07-29 01:10:55,386 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:55,386 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2020-07-29 01:10:55,499 INFO L280 TraceCheckUtils]: 8: Hoare triple {645#(and (bvule main_~t~0.offset (bvadd main_~t~0.offset (_ bv4 32))) (bvule (bvadd main_~t~0.offset (_ bv4 32)) (select |#length| main_~t~0.base)))} assume !((~bvule32(~bvadd32(4bv32, ~t~0.offset), #length[~t~0.base]) && ~bvule32(~t~0.offset, ~bvadd32(4bv32, ~t~0.offset))) && ~bvule32(0bv32, ~t~0.offset)); {616#false} is VALID [2020-07-29 01:10:55,500 INFO L280 TraceCheckUtils]: 7: Hoare triple {645#(and (bvule main_~t~0.offset (bvadd main_~t~0.offset (_ bv4 32))) (bvule (bvadd main_~t~0.offset (_ bv4 32)) (select |#length| main_~t~0.base)))} assume !(~t~0.base == 0bv32 && ~t~0.offset == 0bv32); {645#(and (bvule main_~t~0.offset (bvadd main_~t~0.offset (_ bv4 32))) (bvule (bvadd main_~t~0.offset (_ bv4 32)) (select |#length| main_~t~0.base)))} is VALID [2020-07-29 01:10:55,502 INFO L280 TraceCheckUtils]: 6: Hoare triple {615#true} assume !!(0bv32 != #t~nondet2);havoc #t~nondet2;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(8bv32);~t~0.base, ~t~0.offset := #t~malloc3.base, #t~malloc3.offset; {645#(and (bvule main_~t~0.offset (bvadd main_~t~0.offset (_ bv4 32))) (bvule (bvadd main_~t~0.offset (_ bv4 32)) (select |#length| main_~t~0.base)))} is VALID [2020-07-29 01:10:55,503 INFO L280 TraceCheckUtils]: 5: Hoare triple {615#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0bv32, 0bv32; {615#true} is VALID [2020-07-29 01:10:55,503 INFO L263 TraceCheckUtils]: 4: Hoare triple {615#true} call #t~ret6 := main(); {615#true} is VALID [2020-07-29 01:10:55,503 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {615#true} {615#true} #101#return; {615#true} is VALID [2020-07-29 01:10:55,504 INFO L280 TraceCheckUtils]: 2: Hoare triple {615#true} assume true; {615#true} is VALID [2020-07-29 01:10:55,504 INFO L280 TraceCheckUtils]: 1: Hoare triple {615#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {615#true} is VALID [2020-07-29 01:10:55,504 INFO L263 TraceCheckUtils]: 0: Hoare triple {615#true} call ULTIMATE.init(); {615#true} is VALID [2020-07-29 01:10:55,504 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:55,505 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1476593944] [2020-07-29 01:10:55,505 INFO L220 FreeRefinementEngine]: Constructing automaton from 2 perfect and 0 imperfect interpolant sequences. [2020-07-29 01:10:55,505 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2, 2] imperfect sequences [] total 3 [2020-07-29 01:10:55,506 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [553771223] [2020-07-29 01:10:55,506 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 9 [2020-07-29 01:10:55,506 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:10:55,507 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2020-07-29 01:10:55,526 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:55,527 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-07-29 01:10:55,527 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2020-07-29 01:10:55,527 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-07-29 01:10:55,527 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2020-07-29 01:10:55,528 INFO L87 Difference]: Start difference. First operand 27 states and 28 transitions. Second operand 4 states. [2020-07-29 01:10:55,678 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:55,678 INFO L93 Difference]: Finished difference Result 25 states and 26 transitions. [2020-07-29 01:10:55,678 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2020-07-29 01:10:55,679 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 9 [2020-07-29 01:10:55,679 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:10:55,679 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-29 01:10:55,681 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 28 transitions. [2020-07-29 01:10:55,681 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-29 01:10:55,682 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 28 transitions. [2020-07-29 01:10:55,682 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 28 transitions. [2020-07-29 01:10:55,738 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:55,739 INFO L225 Difference]: With dead ends: 25 [2020-07-29 01:10:55,739 INFO L226 Difference]: Without dead ends: 25 [2020-07-29 01:10:55,739 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2020-07-29 01:10:55,740 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 25 states. [2020-07-29 01:10:55,742 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 25 to 25. [2020-07-29 01:10:55,742 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:10:55,743 INFO L82 GeneralOperation]: Start isEquivalent. First operand 25 states. Second operand 25 states. [2020-07-29 01:10:55,743 INFO L74 IsIncluded]: Start isIncluded. First operand 25 states. Second operand 25 states. [2020-07-29 01:10:55,743 INFO L87 Difference]: Start difference. First operand 25 states. Second operand 25 states. [2020-07-29 01:10:55,745 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:55,745 INFO L93 Difference]: Finished difference Result 25 states and 26 transitions. [2020-07-29 01:10:55,745 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 26 transitions. [2020-07-29 01:10:55,746 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:55,746 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:55,746 INFO L74 IsIncluded]: Start isIncluded. First operand 25 states. Second operand 25 states. [2020-07-29 01:10:55,746 INFO L87 Difference]: Start difference. First operand 25 states. Second operand 25 states. [2020-07-29 01:10:55,748 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:55,749 INFO L93 Difference]: Finished difference Result 25 states and 26 transitions. [2020-07-29 01:10:55,749 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 26 transitions. [2020-07-29 01:10:55,749 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:55,750 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:55,750 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:10:55,750 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:10:55,750 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 25 states. [2020-07-29 01:10:55,752 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 26 transitions. [2020-07-29 01:10:55,752 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 26 transitions. Word has length 9 [2020-07-29 01:10:55,752 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:10:55,752 INFO L479 AbstractCegarLoop]: Abstraction has 25 states and 26 transitions. [2020-07-29 01:10:55,753 INFO L480 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-07-29 01:10:55,753 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 26 transitions. [2020-07-29 01:10:55,753 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2020-07-29 01:10:55,754 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:10:55,754 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:10:55,964 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 5 mathsat -unsat_core_generation=3 [2020-07-29 01:10:55,965 INFO L427 AbstractCegarLoop]: === Iteration 5 === [mainErr6ASSERT_VIOLATIONMEMORY_LEAK, mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr8REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr9ENSURES_VIOLATIONMEMORY_LEAK, mainErr0REQUIRES_VIOLATION, mainErr1REQUIRES_VIOLATION, mainErr7REQUIRES_VIOLATION]=== [2020-07-29 01:10:55,965 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:10:55,966 INFO L82 PathProgramCache]: Analyzing trace with hash 1029445870, now seen corresponding path program 1 times [2020-07-29 01:10:55,967 INFO L163 FreeRefinementEngine]: Executing refinement strategy WOLF [2020-07-29 01:10:55,968 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1184953934] [2020-07-29 01:10:55,968 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat Starting monitored process 6 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 6 with mathsat -unsat_core_generation=3 [2020-07-29 01:10:56,058 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:56,060 INFO L263 TraceCheckSpWp]: Trace formula consists of 61 conjuncts, 4 conjunts are in the unsatisfiable core [2020-07-29 01:10:56,071 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:56,072 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2020-07-29 01:10:56,107 INFO L263 TraceCheckUtils]: 0: Hoare triple {772#true} call ULTIMATE.init(); {772#true} is VALID [2020-07-29 01:10:56,108 INFO L280 TraceCheckUtils]: 1: Hoare triple {772#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {772#true} is VALID [2020-07-29 01:10:56,108 INFO L280 TraceCheckUtils]: 2: Hoare triple {772#true} assume true; {772#true} is VALID [2020-07-29 01:10:56,108 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {772#true} {772#true} #101#return; {772#true} is VALID [2020-07-29 01:10:56,108 INFO L263 TraceCheckUtils]: 4: Hoare triple {772#true} call #t~ret6 := main(); {772#true} is VALID [2020-07-29 01:10:56,109 INFO L280 TraceCheckUtils]: 5: Hoare triple {772#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0bv32, 0bv32; {772#true} is VALID [2020-07-29 01:10:56,110 INFO L280 TraceCheckUtils]: 6: Hoare triple {772#true} assume !!(0bv32 != #t~nondet2);havoc #t~nondet2;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(8bv32);~t~0.base, ~t~0.offset := #t~malloc3.base, #t~malloc3.offset; {795#(not (= (_ bv0 32) main_~t~0.base))} is VALID [2020-07-29 01:10:56,111 INFO L280 TraceCheckUtils]: 7: Hoare triple {795#(not (= (_ bv0 32) main_~t~0.base))} assume !(~t~0.base == 0bv32 && ~t~0.offset == 0bv32); {795#(not (= (_ bv0 32) main_~t~0.base))} is VALID [2020-07-29 01:10:56,113 INFO L280 TraceCheckUtils]: 8: Hoare triple {795#(not (= (_ bv0 32) main_~t~0.base))} SUMMARY for call write~intINTTYPE4(1bv32, ~t~0.base, ~t~0.offset, 4bv32); srcloc: L525-3 {795#(not (= (_ bv0 32) main_~t~0.base))} is VALID [2020-07-29 01:10:56,114 INFO L280 TraceCheckUtils]: 9: Hoare triple {795#(not (= (_ bv0 32) main_~t~0.base))} SUMMARY for call write~$Pointer$(~p~0.base, ~p~0.offset, ~t~0.base, ~bvadd32(4bv32, ~t~0.offset), 4bv32); srcloc: L526 {795#(not (= (_ bv0 32) main_~t~0.base))} is VALID [2020-07-29 01:10:56,115 INFO L280 TraceCheckUtils]: 10: Hoare triple {795#(not (= (_ bv0 32) main_~t~0.base))} ~p~0.base, ~p~0.offset := ~t~0.base, ~t~0.offset; {808#(not (= main_~p~0.base (_ bv0 32)))} is VALID [2020-07-29 01:10:56,116 INFO L280 TraceCheckUtils]: 11: Hoare triple {808#(not (= main_~p~0.base (_ bv0 32)))} assume !(0bv32 != #t~nondet2);havoc #t~nondet2; {808#(not (= main_~p~0.base (_ bv0 32)))} is VALID [2020-07-29 01:10:56,117 INFO L280 TraceCheckUtils]: 12: Hoare triple {808#(not (= main_~p~0.base (_ bv0 32)))} assume !(~p~0.base != 0bv32 || ~p~0.offset != 0bv32); {773#false} is VALID [2020-07-29 01:10:56,117 INFO L280 TraceCheckUtils]: 13: Hoare triple {773#false} assume !(#valid == old(#valid)); {773#false} is VALID [2020-07-29 01:10:56,118 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:56,118 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2020-07-29 01:10:56,144 INFO L280 TraceCheckUtils]: 13: Hoare triple {773#false} assume !(#valid == old(#valid)); {773#false} is VALID [2020-07-29 01:10:56,145 INFO L280 TraceCheckUtils]: 12: Hoare triple {808#(not (= main_~p~0.base (_ bv0 32)))} assume !(~p~0.base != 0bv32 || ~p~0.offset != 0bv32); {773#false} is VALID [2020-07-29 01:10:56,146 INFO L280 TraceCheckUtils]: 11: Hoare triple {808#(not (= main_~p~0.base (_ bv0 32)))} assume !(0bv32 != #t~nondet2);havoc #t~nondet2; {808#(not (= main_~p~0.base (_ bv0 32)))} is VALID [2020-07-29 01:10:56,147 INFO L280 TraceCheckUtils]: 10: Hoare triple {795#(not (= (_ bv0 32) main_~t~0.base))} ~p~0.base, ~p~0.offset := ~t~0.base, ~t~0.offset; {808#(not (= main_~p~0.base (_ bv0 32)))} is VALID [2020-07-29 01:10:56,148 INFO L280 TraceCheckUtils]: 9: Hoare triple {795#(not (= (_ bv0 32) main_~t~0.base))} SUMMARY for call write~$Pointer$(~p~0.base, ~p~0.offset, ~t~0.base, ~bvadd32(4bv32, ~t~0.offset), 4bv32); srcloc: L526 {795#(not (= (_ bv0 32) main_~t~0.base))} is VALID [2020-07-29 01:10:56,148 INFO L280 TraceCheckUtils]: 8: Hoare triple {795#(not (= (_ bv0 32) main_~t~0.base))} SUMMARY for call write~intINTTYPE4(1bv32, ~t~0.base, ~t~0.offset, 4bv32); srcloc: L525-3 {795#(not (= (_ bv0 32) main_~t~0.base))} is VALID [2020-07-29 01:10:56,149 INFO L280 TraceCheckUtils]: 7: Hoare triple {795#(not (= (_ bv0 32) main_~t~0.base))} assume !(~t~0.base == 0bv32 && ~t~0.offset == 0bv32); {795#(not (= (_ bv0 32) main_~t~0.base))} is VALID [2020-07-29 01:10:56,150 INFO L280 TraceCheckUtils]: 6: Hoare triple {772#true} assume !!(0bv32 != #t~nondet2);havoc #t~nondet2;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(8bv32);~t~0.base, ~t~0.offset := #t~malloc3.base, #t~malloc3.offset; {795#(not (= (_ bv0 32) main_~t~0.base))} is VALID [2020-07-29 01:10:56,151 INFO L280 TraceCheckUtils]: 5: Hoare triple {772#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0bv32, 0bv32; {772#true} is VALID [2020-07-29 01:10:56,151 INFO L263 TraceCheckUtils]: 4: Hoare triple {772#true} call #t~ret6 := main(); {772#true} is VALID [2020-07-29 01:10:56,151 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {772#true} {772#true} #101#return; {772#true} is VALID [2020-07-29 01:10:56,151 INFO L280 TraceCheckUtils]: 2: Hoare triple {772#true} assume true; {772#true} is VALID [2020-07-29 01:10:56,152 INFO L280 TraceCheckUtils]: 1: Hoare triple {772#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {772#true} is VALID [2020-07-29 01:10:56,152 INFO L263 TraceCheckUtils]: 0: Hoare triple {772#true} call ULTIMATE.init(); {772#true} is VALID [2020-07-29 01:10:56,153 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:56,154 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1184953934] [2020-07-29 01:10:56,154 INFO L220 FreeRefinementEngine]: Constructing automaton from 2 perfect and 0 imperfect interpolant sequences. [2020-07-29 01:10:56,154 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4, 4] imperfect sequences [] total 4 [2020-07-29 01:10:56,154 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1343243930] [2020-07-29 01:10:56,155 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 14 [2020-07-29 01:10:56,155 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:10:56,155 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2020-07-29 01:10:56,192 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 14 edges. 14 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:56,192 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-07-29 01:10:56,192 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2020-07-29 01:10:56,192 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-07-29 01:10:56,193 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-29 01:10:56,193 INFO L87 Difference]: Start difference. First operand 25 states and 26 transitions. Second operand 4 states. [2020-07-29 01:10:56,463 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:56,464 INFO L93 Difference]: Finished difference Result 40 states and 41 transitions. [2020-07-29 01:10:56,464 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2020-07-29 01:10:56,464 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 14 [2020-07-29 01:10:56,465 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:10:56,465 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-29 01:10:56,466 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 42 transitions. [2020-07-29 01:10:56,467 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-29 01:10:56,468 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 42 transitions. [2020-07-29 01:10:56,469 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 42 transitions. [2020-07-29 01:10:56,536 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:56,537 INFO L225 Difference]: With dead ends: 40 [2020-07-29 01:10:56,538 INFO L226 Difference]: Without dead ends: 40 [2020-07-29 01:10:56,539 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2020-07-29 01:10:56,539 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2020-07-29 01:10:56,542 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 26. [2020-07-29 01:10:56,542 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:10:56,542 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand 26 states. [2020-07-29 01:10:56,543 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand 26 states. [2020-07-29 01:10:56,543 INFO L87 Difference]: Start difference. First operand 40 states. Second operand 26 states. [2020-07-29 01:10:56,545 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:56,545 INFO L93 Difference]: Finished difference Result 40 states and 41 transitions. [2020-07-29 01:10:56,545 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 41 transitions. [2020-07-29 01:10:56,546 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:56,546 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:56,546 INFO L74 IsIncluded]: Start isIncluded. First operand 26 states. Second operand 40 states. [2020-07-29 01:10:56,546 INFO L87 Difference]: Start difference. First operand 26 states. Second operand 40 states. [2020-07-29 01:10:56,548 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:56,549 INFO L93 Difference]: Finished difference Result 40 states and 41 transitions. [2020-07-29 01:10:56,549 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 41 transitions. [2020-07-29 01:10:56,549 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:56,549 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:56,549 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:10:56,550 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:10:56,550 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2020-07-29 01:10:56,551 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 27 transitions. [2020-07-29 01:10:56,551 INFO L78 Accepts]: Start accepts. Automaton has 26 states and 27 transitions. Word has length 14 [2020-07-29 01:10:56,551 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:10:56,551 INFO L479 AbstractCegarLoop]: Abstraction has 26 states and 27 transitions. [2020-07-29 01:10:56,551 INFO L480 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-07-29 01:10:56,552 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 27 transitions. [2020-07-29 01:10:56,554 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2020-07-29 01:10:56,555 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:10:56,555 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:10:56,769 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 6 mathsat -unsat_core_generation=3 [2020-07-29 01:10:56,769 INFO L427 AbstractCegarLoop]: === Iteration 6 === [mainErr6ASSERT_VIOLATIONMEMORY_LEAK, mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr8REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr9ENSURES_VIOLATIONMEMORY_LEAK, mainErr0REQUIRES_VIOLATION, mainErr1REQUIRES_VIOLATION, mainErr7REQUIRES_VIOLATION]=== [2020-07-29 01:10:56,770 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:10:56,770 INFO L82 PathProgramCache]: Analyzing trace with hash 1029445913, now seen corresponding path program 1 times [2020-07-29 01:10:56,771 INFO L163 FreeRefinementEngine]: Executing refinement strategy WOLF [2020-07-29 01:10:56,772 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2008412207] [2020-07-29 01:10:56,772 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat Starting monitored process 7 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 7 with mathsat -unsat_core_generation=3 [2020-07-29 01:10:56,850 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:56,853 INFO L263 TraceCheckSpWp]: Trace formula consists of 60 conjuncts, 4 conjunts are in the unsatisfiable core [2020-07-29 01:10:56,863 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:56,864 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2020-07-29 01:10:56,888 INFO L384 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2020-07-29 01:10:56,888 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 01:10:56,891 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 01:10:56,892 INFO L544 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2020-07-29 01:10:56,892 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:6, output treesize:5 [2020-07-29 01:10:56,895 WARN L406 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2020-07-29 01:10:56,896 WARN L407 uantifierElimination]: Input elimination task: ∃ [|v_#valid_38|]. (= |#valid| (store |v_#valid_38| main_~t~0.base (_ bv1 1))) [2020-07-29 01:10:56,896 WARN L408 uantifierElimination]: ElimStorePlain result: ∃ []. (= (select |#valid| main_~t~0.base) (_ bv1 1)) [2020-07-29 01:10:56,934 INFO L263 TraceCheckUtils]: 0: Hoare triple {1007#true} call ULTIMATE.init(); {1007#true} is VALID [2020-07-29 01:10:56,935 INFO L280 TraceCheckUtils]: 1: Hoare triple {1007#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {1007#true} is VALID [2020-07-29 01:10:56,935 INFO L280 TraceCheckUtils]: 2: Hoare triple {1007#true} assume true; {1007#true} is VALID [2020-07-29 01:10:56,935 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {1007#true} {1007#true} #101#return; {1007#true} is VALID [2020-07-29 01:10:56,936 INFO L263 TraceCheckUtils]: 4: Hoare triple {1007#true} call #t~ret6 := main(); {1007#true} is VALID [2020-07-29 01:10:56,936 INFO L280 TraceCheckUtils]: 5: Hoare triple {1007#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0bv32, 0bv32; {1007#true} is VALID [2020-07-29 01:10:56,943 INFO L280 TraceCheckUtils]: 6: Hoare triple {1007#true} assume !!(0bv32 != #t~nondet2);havoc #t~nondet2;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(8bv32);~t~0.base, ~t~0.offset := #t~malloc3.base, #t~malloc3.offset; {1030#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} is VALID [2020-07-29 01:10:56,944 INFO L280 TraceCheckUtils]: 7: Hoare triple {1030#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} assume !(~t~0.base == 0bv32 && ~t~0.offset == 0bv32); {1030#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} is VALID [2020-07-29 01:10:56,945 INFO L280 TraceCheckUtils]: 8: Hoare triple {1030#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} SUMMARY for call write~intINTTYPE4(1bv32, ~t~0.base, ~t~0.offset, 4bv32); srcloc: L525-3 {1030#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} is VALID [2020-07-29 01:10:56,945 INFO L280 TraceCheckUtils]: 9: Hoare triple {1030#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} SUMMARY for call write~$Pointer$(~p~0.base, ~p~0.offset, ~t~0.base, ~bvadd32(4bv32, ~t~0.offset), 4bv32); srcloc: L526 {1030#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} is VALID [2020-07-29 01:10:56,946 INFO L280 TraceCheckUtils]: 10: Hoare triple {1030#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} ~p~0.base, ~p~0.offset := ~t~0.base, ~t~0.offset; {1043#(= (_ bv1 1) (select |#valid| main_~p~0.base))} is VALID [2020-07-29 01:10:56,947 INFO L280 TraceCheckUtils]: 11: Hoare triple {1043#(= (_ bv1 1) (select |#valid| main_~p~0.base))} assume !(0bv32 != #t~nondet2);havoc #t~nondet2; {1043#(= (_ bv1 1) (select |#valid| main_~p~0.base))} is VALID [2020-07-29 01:10:56,948 INFO L280 TraceCheckUtils]: 12: Hoare triple {1043#(= (_ bv1 1) (select |#valid| main_~p~0.base))} assume !!(~p~0.base != 0bv32 || ~p~0.offset != 0bv32); {1043#(= (_ bv1 1) (select |#valid| main_~p~0.base))} is VALID [2020-07-29 01:10:56,949 INFO L280 TraceCheckUtils]: 13: Hoare triple {1043#(= (_ bv1 1) (select |#valid| main_~p~0.base))} assume !(1bv1 == #valid[~p~0.base]); {1008#false} is VALID [2020-07-29 01:10:56,949 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:56,950 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2020-07-29 01:10:56,979 INFO L280 TraceCheckUtils]: 13: Hoare triple {1043#(= (_ bv1 1) (select |#valid| main_~p~0.base))} assume !(1bv1 == #valid[~p~0.base]); {1008#false} is VALID [2020-07-29 01:10:56,979 INFO L280 TraceCheckUtils]: 12: Hoare triple {1043#(= (_ bv1 1) (select |#valid| main_~p~0.base))} assume !!(~p~0.base != 0bv32 || ~p~0.offset != 0bv32); {1043#(= (_ bv1 1) (select |#valid| main_~p~0.base))} is VALID [2020-07-29 01:10:56,980 INFO L280 TraceCheckUtils]: 11: Hoare triple {1043#(= (_ bv1 1) (select |#valid| main_~p~0.base))} assume !(0bv32 != #t~nondet2);havoc #t~nondet2; {1043#(= (_ bv1 1) (select |#valid| main_~p~0.base))} is VALID [2020-07-29 01:10:56,980 INFO L280 TraceCheckUtils]: 10: Hoare triple {1030#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} ~p~0.base, ~p~0.offset := ~t~0.base, ~t~0.offset; {1043#(= (_ bv1 1) (select |#valid| main_~p~0.base))} is VALID [2020-07-29 01:10:56,981 INFO L280 TraceCheckUtils]: 9: Hoare triple {1030#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} SUMMARY for call write~$Pointer$(~p~0.base, ~p~0.offset, ~t~0.base, ~bvadd32(4bv32, ~t~0.offset), 4bv32); srcloc: L526 {1030#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} is VALID [2020-07-29 01:10:56,981 INFO L280 TraceCheckUtils]: 8: Hoare triple {1030#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} SUMMARY for call write~intINTTYPE4(1bv32, ~t~0.base, ~t~0.offset, 4bv32); srcloc: L525-3 {1030#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} is VALID [2020-07-29 01:10:56,983 INFO L280 TraceCheckUtils]: 7: Hoare triple {1030#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} assume !(~t~0.base == 0bv32 && ~t~0.offset == 0bv32); {1030#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} is VALID [2020-07-29 01:10:56,984 INFO L280 TraceCheckUtils]: 6: Hoare triple {1007#true} assume !!(0bv32 != #t~nondet2);havoc #t~nondet2;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(8bv32);~t~0.base, ~t~0.offset := #t~malloc3.base, #t~malloc3.offset; {1030#(= (bvadd (select |#valid| main_~t~0.base) (_ bv1 1)) (_ bv0 1))} is VALID [2020-07-29 01:10:56,985 INFO L280 TraceCheckUtils]: 5: Hoare triple {1007#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0bv32, 0bv32; {1007#true} is VALID [2020-07-29 01:10:56,986 INFO L263 TraceCheckUtils]: 4: Hoare triple {1007#true} call #t~ret6 := main(); {1007#true} is VALID [2020-07-29 01:10:56,986 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {1007#true} {1007#true} #101#return; {1007#true} is VALID [2020-07-29 01:10:56,986 INFO L280 TraceCheckUtils]: 2: Hoare triple {1007#true} assume true; {1007#true} is VALID [2020-07-29 01:10:56,986 INFO L280 TraceCheckUtils]: 1: Hoare triple {1007#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {1007#true} is VALID [2020-07-29 01:10:56,986 INFO L263 TraceCheckUtils]: 0: Hoare triple {1007#true} call ULTIMATE.init(); {1007#true} is VALID [2020-07-29 01:10:56,987 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:56,987 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2008412207] [2020-07-29 01:10:56,988 INFO L220 FreeRefinementEngine]: Constructing automaton from 2 perfect and 0 imperfect interpolant sequences. [2020-07-29 01:10:56,988 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3, 3] imperfect sequences [] total 3 [2020-07-29 01:10:56,988 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [560204110] [2020-07-29 01:10:56,989 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 14 [2020-07-29 01:10:56,989 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:10:56,989 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2020-07-29 01:10:57,017 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 14 edges. 14 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:57,017 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-07-29 01:10:57,017 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2020-07-29 01:10:57,017 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-07-29 01:10:57,018 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-29 01:10:57,018 INFO L87 Difference]: Start difference. First operand 26 states and 27 transitions. Second operand 4 states. [2020-07-29 01:10:57,218 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:57,218 INFO L93 Difference]: Finished difference Result 31 states and 32 transitions. [2020-07-29 01:10:57,218 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2020-07-29 01:10:57,218 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 14 [2020-07-29 01:10:57,219 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:10:57,219 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-29 01:10:57,220 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 34 transitions. [2020-07-29 01:10:57,221 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-29 01:10:57,222 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 34 transitions. [2020-07-29 01:10:57,222 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 34 transitions. [2020-07-29 01:10:57,287 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:57,288 INFO L225 Difference]: With dead ends: 31 [2020-07-29 01:10:57,288 INFO L226 Difference]: Without dead ends: 31 [2020-07-29 01:10:57,290 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2020-07-29 01:10:57,290 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2020-07-29 01:10:57,292 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 26. [2020-07-29 01:10:57,292 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:10:57,292 INFO L82 GeneralOperation]: Start isEquivalent. First operand 31 states. Second operand 26 states. [2020-07-29 01:10:57,292 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand 26 states. [2020-07-29 01:10:57,293 INFO L87 Difference]: Start difference. First operand 31 states. Second operand 26 states. [2020-07-29 01:10:57,299 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:57,299 INFO L93 Difference]: Finished difference Result 31 states and 32 transitions. [2020-07-29 01:10:57,299 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 32 transitions. [2020-07-29 01:10:57,300 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:57,303 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:57,303 INFO L74 IsIncluded]: Start isIncluded. First operand 26 states. Second operand 31 states. [2020-07-29 01:10:57,303 INFO L87 Difference]: Start difference. First operand 26 states. Second operand 31 states. [2020-07-29 01:10:57,306 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:57,306 INFO L93 Difference]: Finished difference Result 31 states and 32 transitions. [2020-07-29 01:10:57,307 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 32 transitions. [2020-07-29 01:10:57,307 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:57,307 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:57,308 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:10:57,308 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:10:57,308 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2020-07-29 01:10:57,309 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 28 transitions. [2020-07-29 01:10:57,310 INFO L78 Accepts]: Start accepts. Automaton has 26 states and 28 transitions. Word has length 14 [2020-07-29 01:10:57,310 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:10:57,310 INFO L479 AbstractCegarLoop]: Abstraction has 26 states and 28 transitions. [2020-07-29 01:10:57,311 INFO L480 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-07-29 01:10:57,311 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 28 transitions. [2020-07-29 01:10:57,311 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2020-07-29 01:10:57,312 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:10:57,312 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:10:57,524 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 7 mathsat -unsat_core_generation=3 [2020-07-29 01:10:57,525 INFO L427 AbstractCegarLoop]: === Iteration 7 === [mainErr6ASSERT_VIOLATIONMEMORY_LEAK, mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr8REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr9ENSURES_VIOLATIONMEMORY_LEAK, mainErr0REQUIRES_VIOLATION, mainErr1REQUIRES_VIOLATION, mainErr7REQUIRES_VIOLATION]=== [2020-07-29 01:10:57,526 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:10:57,526 INFO L82 PathProgramCache]: Analyzing trace with hash 1029445914, now seen corresponding path program 1 times [2020-07-29 01:10:57,527 INFO L163 FreeRefinementEngine]: Executing refinement strategy WOLF [2020-07-29 01:10:57,528 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [638597067] [2020-07-29 01:10:57,528 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat Starting monitored process 8 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 8 with mathsat -unsat_core_generation=3 [2020-07-29 01:10:57,609 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:57,611 INFO L263 TraceCheckSpWp]: Trace formula consists of 60 conjuncts, 7 conjunts are in the unsatisfiable core [2020-07-29 01:10:57,618 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:57,620 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2020-07-29 01:10:57,645 INFO L384 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2020-07-29 01:10:57,645 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 01:10:57,651 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 01:10:57,652 INFO L544 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2020-07-29 01:10:57,652 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:10, output treesize:9 [2020-07-29 01:10:57,658 WARN L406 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2020-07-29 01:10:57,659 WARN L407 uantifierElimination]: Input elimination task: ∃ [|v_#length_18|]. (and (= (_ bv0 32) main_~t~0.offset) (= (store |v_#length_18| main_~t~0.base (_ bv8 32)) |#length|)) [2020-07-29 01:10:57,659 WARN L408 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= (select |#length| main_~t~0.base) (_ bv8 32)) (= (_ bv0 32) main_~t~0.offset)) [2020-07-29 01:10:57,709 INFO L263 TraceCheckUtils]: 0: Hoare triple {1215#true} call ULTIMATE.init(); {1215#true} is VALID [2020-07-29 01:10:57,710 INFO L280 TraceCheckUtils]: 1: Hoare triple {1215#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {1215#true} is VALID [2020-07-29 01:10:57,710 INFO L280 TraceCheckUtils]: 2: Hoare triple {1215#true} assume true; {1215#true} is VALID [2020-07-29 01:10:57,710 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {1215#true} {1215#true} #101#return; {1215#true} is VALID [2020-07-29 01:10:57,711 INFO L263 TraceCheckUtils]: 4: Hoare triple {1215#true} call #t~ret6 := main(); {1215#true} is VALID [2020-07-29 01:10:57,711 INFO L280 TraceCheckUtils]: 5: Hoare triple {1215#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0bv32, 0bv32; {1215#true} is VALID [2020-07-29 01:10:57,713 INFO L280 TraceCheckUtils]: 6: Hoare triple {1215#true} assume !!(0bv32 != #t~nondet2);havoc #t~nondet2;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(8bv32);~t~0.base, ~t~0.offset := #t~malloc3.base, #t~malloc3.offset; {1238#(and (= (bvadd (select |#length| main_~t~0.base) (_ bv4294967288 32)) (_ bv0 32)) (= (_ bv0 32) main_~t~0.offset))} is VALID [2020-07-29 01:10:57,714 INFO L280 TraceCheckUtils]: 7: Hoare triple {1238#(and (= (bvadd (select |#length| main_~t~0.base) (_ bv4294967288 32)) (_ bv0 32)) (= (_ bv0 32) main_~t~0.offset))} assume !(~t~0.base == 0bv32 && ~t~0.offset == 0bv32); {1238#(and (= (bvadd (select |#length| main_~t~0.base) (_ bv4294967288 32)) (_ bv0 32)) (= (_ bv0 32) main_~t~0.offset))} is VALID [2020-07-29 01:10:57,715 INFO L280 TraceCheckUtils]: 8: Hoare triple {1238#(and (= (bvadd (select |#length| main_~t~0.base) (_ bv4294967288 32)) (_ bv0 32)) (= (_ bv0 32) main_~t~0.offset))} SUMMARY for call write~intINTTYPE4(1bv32, ~t~0.base, ~t~0.offset, 4bv32); srcloc: L525-3 {1238#(and (= (bvadd (select |#length| main_~t~0.base) (_ bv4294967288 32)) (_ bv0 32)) (= (_ bv0 32) main_~t~0.offset))} is VALID [2020-07-29 01:10:57,715 INFO L280 TraceCheckUtils]: 9: Hoare triple {1238#(and (= (bvadd (select |#length| main_~t~0.base) (_ bv4294967288 32)) (_ bv0 32)) (= (_ bv0 32) main_~t~0.offset))} SUMMARY for call write~$Pointer$(~p~0.base, ~p~0.offset, ~t~0.base, ~bvadd32(4bv32, ~t~0.offset), 4bv32); srcloc: L526 {1238#(and (= (bvadd (select |#length| main_~t~0.base) (_ bv4294967288 32)) (_ bv0 32)) (= (_ bv0 32) main_~t~0.offset))} is VALID [2020-07-29 01:10:57,716 INFO L280 TraceCheckUtils]: 10: Hoare triple {1238#(and (= (bvadd (select |#length| main_~t~0.base) (_ bv4294967288 32)) (_ bv0 32)) (= (_ bv0 32) main_~t~0.offset))} ~p~0.base, ~p~0.offset := ~t~0.base, ~t~0.offset; {1251#(and (= (_ bv0 32) main_~p~0.offset) (= (_ bv8 32) (select |#length| main_~p~0.base)))} is VALID [2020-07-29 01:10:57,717 INFO L280 TraceCheckUtils]: 11: Hoare triple {1251#(and (= (_ bv0 32) main_~p~0.offset) (= (_ bv8 32) (select |#length| main_~p~0.base)))} assume !(0bv32 != #t~nondet2);havoc #t~nondet2; {1251#(and (= (_ bv0 32) main_~p~0.offset) (= (_ bv8 32) (select |#length| main_~p~0.base)))} is VALID [2020-07-29 01:10:57,717 INFO L280 TraceCheckUtils]: 12: Hoare triple {1251#(and (= (_ bv0 32) main_~p~0.offset) (= (_ bv8 32) (select |#length| main_~p~0.base)))} assume !!(~p~0.base != 0bv32 || ~p~0.offset != 0bv32); {1251#(and (= (_ bv0 32) main_~p~0.offset) (= (_ bv8 32) (select |#length| main_~p~0.base)))} is VALID [2020-07-29 01:10:57,718 INFO L280 TraceCheckUtils]: 13: Hoare triple {1251#(and (= (_ bv0 32) main_~p~0.offset) (= (_ bv8 32) (select |#length| main_~p~0.base)))} assume !((~bvule32(~bvadd32(4bv32, ~p~0.offset), #length[~p~0.base]) && ~bvule32(~p~0.offset, ~bvadd32(4bv32, ~p~0.offset))) && ~bvule32(0bv32, ~p~0.offset)); {1216#false} is VALID [2020-07-29 01:10:57,719 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:57,719 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2020-07-29 01:10:57,898 INFO L280 TraceCheckUtils]: 13: Hoare triple {1261#(and (bvule (bvadd main_~p~0.offset (_ bv4 32)) (select |#length| main_~p~0.base)) (bvule main_~p~0.offset (bvadd main_~p~0.offset (_ bv4 32))))} assume !((~bvule32(~bvadd32(4bv32, ~p~0.offset), #length[~p~0.base]) && ~bvule32(~p~0.offset, ~bvadd32(4bv32, ~p~0.offset))) && ~bvule32(0bv32, ~p~0.offset)); {1216#false} is VALID [2020-07-29 01:10:57,898 INFO L280 TraceCheckUtils]: 12: Hoare triple {1261#(and (bvule (bvadd main_~p~0.offset (_ bv4 32)) (select |#length| main_~p~0.base)) (bvule main_~p~0.offset (bvadd main_~p~0.offset (_ bv4 32))))} assume !!(~p~0.base != 0bv32 || ~p~0.offset != 0bv32); {1261#(and (bvule (bvadd main_~p~0.offset (_ bv4 32)) (select |#length| main_~p~0.base)) (bvule main_~p~0.offset (bvadd main_~p~0.offset (_ bv4 32))))} is VALID [2020-07-29 01:10:57,899 INFO L280 TraceCheckUtils]: 11: Hoare triple {1261#(and (bvule (bvadd main_~p~0.offset (_ bv4 32)) (select |#length| main_~p~0.base)) (bvule main_~p~0.offset (bvadd main_~p~0.offset (_ bv4 32))))} assume !(0bv32 != #t~nondet2);havoc #t~nondet2; {1261#(and (bvule (bvadd main_~p~0.offset (_ bv4 32)) (select |#length| main_~p~0.base)) (bvule main_~p~0.offset (bvadd main_~p~0.offset (_ bv4 32))))} is VALID [2020-07-29 01:10:57,900 INFO L280 TraceCheckUtils]: 10: Hoare triple {1271#(and (bvule main_~t~0.offset (bvadd main_~t~0.offset (_ bv4 32))) (bvule (bvadd main_~t~0.offset (_ bv4 32)) (select |#length| main_~t~0.base)))} ~p~0.base, ~p~0.offset := ~t~0.base, ~t~0.offset; {1261#(and (bvule (bvadd main_~p~0.offset (_ bv4 32)) (select |#length| main_~p~0.base)) (bvule main_~p~0.offset (bvadd main_~p~0.offset (_ bv4 32))))} is VALID [2020-07-29 01:10:57,902 INFO L280 TraceCheckUtils]: 9: Hoare triple {1271#(and (bvule main_~t~0.offset (bvadd main_~t~0.offset (_ bv4 32))) (bvule (bvadd main_~t~0.offset (_ bv4 32)) (select |#length| main_~t~0.base)))} SUMMARY for call write~$Pointer$(~p~0.base, ~p~0.offset, ~t~0.base, ~bvadd32(4bv32, ~t~0.offset), 4bv32); srcloc: L526 {1271#(and (bvule main_~t~0.offset (bvadd main_~t~0.offset (_ bv4 32))) (bvule (bvadd main_~t~0.offset (_ bv4 32)) (select |#length| main_~t~0.base)))} is VALID [2020-07-29 01:10:57,902 INFO L280 TraceCheckUtils]: 8: Hoare triple {1271#(and (bvule main_~t~0.offset (bvadd main_~t~0.offset (_ bv4 32))) (bvule (bvadd main_~t~0.offset (_ bv4 32)) (select |#length| main_~t~0.base)))} SUMMARY for call write~intINTTYPE4(1bv32, ~t~0.base, ~t~0.offset, 4bv32); srcloc: L525-3 {1271#(and (bvule main_~t~0.offset (bvadd main_~t~0.offset (_ bv4 32))) (bvule (bvadd main_~t~0.offset (_ bv4 32)) (select |#length| main_~t~0.base)))} is VALID [2020-07-29 01:10:57,903 INFO L280 TraceCheckUtils]: 7: Hoare triple {1271#(and (bvule main_~t~0.offset (bvadd main_~t~0.offset (_ bv4 32))) (bvule (bvadd main_~t~0.offset (_ bv4 32)) (select |#length| main_~t~0.base)))} assume !(~t~0.base == 0bv32 && ~t~0.offset == 0bv32); {1271#(and (bvule main_~t~0.offset (bvadd main_~t~0.offset (_ bv4 32))) (bvule (bvadd main_~t~0.offset (_ bv4 32)) (select |#length| main_~t~0.base)))} is VALID [2020-07-29 01:10:57,906 INFO L280 TraceCheckUtils]: 6: Hoare triple {1215#true} assume !!(0bv32 != #t~nondet2);havoc #t~nondet2;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(8bv32);~t~0.base, ~t~0.offset := #t~malloc3.base, #t~malloc3.offset; {1271#(and (bvule main_~t~0.offset (bvadd main_~t~0.offset (_ bv4 32))) (bvule (bvadd main_~t~0.offset (_ bv4 32)) (select |#length| main_~t~0.base)))} is VALID [2020-07-29 01:10:57,906 INFO L280 TraceCheckUtils]: 5: Hoare triple {1215#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0bv32, 0bv32; {1215#true} is VALID [2020-07-29 01:10:57,907 INFO L263 TraceCheckUtils]: 4: Hoare triple {1215#true} call #t~ret6 := main(); {1215#true} is VALID [2020-07-29 01:10:57,907 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {1215#true} {1215#true} #101#return; {1215#true} is VALID [2020-07-29 01:10:57,907 INFO L280 TraceCheckUtils]: 2: Hoare triple {1215#true} assume true; {1215#true} is VALID [2020-07-29 01:10:57,907 INFO L280 TraceCheckUtils]: 1: Hoare triple {1215#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {1215#true} is VALID [2020-07-29 01:10:57,908 INFO L263 TraceCheckUtils]: 0: Hoare triple {1215#true} call ULTIMATE.init(); {1215#true} is VALID [2020-07-29 01:10:57,909 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:57,909 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [638597067] [2020-07-29 01:10:57,909 INFO L220 FreeRefinementEngine]: Constructing automaton from 2 perfect and 0 imperfect interpolant sequences. [2020-07-29 01:10:57,909 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3, 3] imperfect sequences [] total 5 [2020-07-29 01:10:57,910 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1768404096] [2020-07-29 01:10:57,910 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 14 [2020-07-29 01:10:57,910 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:10:57,911 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2020-07-29 01:10:57,956 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:57,956 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2020-07-29 01:10:57,956 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2020-07-29 01:10:57,957 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2020-07-29 01:10:57,957 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2020-07-29 01:10:57,957 INFO L87 Difference]: Start difference. First operand 26 states and 28 transitions. Second operand 6 states. [2020-07-29 01:10:58,349 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:58,349 INFO L93 Difference]: Finished difference Result 35 states and 36 transitions. [2020-07-29 01:10:58,349 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2020-07-29 01:10:58,349 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 14 [2020-07-29 01:10:58,350 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:10:58,350 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-29 01:10:58,352 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 38 transitions. [2020-07-29 01:10:58,352 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-29 01:10:58,353 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 38 transitions. [2020-07-29 01:10:58,353 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 38 transitions. [2020-07-29 01:10:58,439 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:58,441 INFO L225 Difference]: With dead ends: 35 [2020-07-29 01:10:58,441 INFO L226 Difference]: Without dead ends: 35 [2020-07-29 01:10:58,441 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 29 GetRequests, 23 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=23, Invalid=33, Unknown=0, NotChecked=0, Total=56 [2020-07-29 01:10:58,442 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2020-07-29 01:10:58,444 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 28. [2020-07-29 01:10:58,444 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:10:58,444 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand 28 states. [2020-07-29 01:10:58,444 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand 28 states. [2020-07-29 01:10:58,444 INFO L87 Difference]: Start difference. First operand 35 states. Second operand 28 states. [2020-07-29 01:10:58,446 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:58,447 INFO L93 Difference]: Finished difference Result 35 states and 36 transitions. [2020-07-29 01:10:58,447 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 36 transitions. [2020-07-29 01:10:58,447 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:58,447 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:58,447 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand 35 states. [2020-07-29 01:10:58,448 INFO L87 Difference]: Start difference. First operand 28 states. Second operand 35 states. [2020-07-29 01:10:58,449 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:58,450 INFO L93 Difference]: Finished difference Result 35 states and 36 transitions. [2020-07-29 01:10:58,450 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 36 transitions. [2020-07-29 01:10:58,450 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:58,450 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:58,450 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:10:58,450 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:10:58,451 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 28 states. [2020-07-29 01:10:58,452 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 30 transitions. [2020-07-29 01:10:58,452 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 30 transitions. Word has length 14 [2020-07-29 01:10:58,452 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:10:58,452 INFO L479 AbstractCegarLoop]: Abstraction has 28 states and 30 transitions. [2020-07-29 01:10:58,453 INFO L480 AbstractCegarLoop]: Interpolant automaton has 6 states. [2020-07-29 01:10:58,453 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 30 transitions. [2020-07-29 01:10:58,453 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2020-07-29 01:10:58,453 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:10:58,453 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:10:58,666 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 8 mathsat -unsat_core_generation=3 [2020-07-29 01:10:58,667 INFO L427 AbstractCegarLoop]: === Iteration 8 === [mainErr6ASSERT_VIOLATIONMEMORY_LEAK, mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr8REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr9ENSURES_VIOLATIONMEMORY_LEAK, mainErr0REQUIRES_VIOLATION, mainErr1REQUIRES_VIOLATION, mainErr7REQUIRES_VIOLATION]=== [2020-07-29 01:10:58,667 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:10:58,667 INFO L82 PathProgramCache]: Analyzing trace with hash 1455045754, now seen corresponding path program 1 times [2020-07-29 01:10:58,668 INFO L163 FreeRefinementEngine]: Executing refinement strategy WOLF [2020-07-29 01:10:58,669 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2074273502] [2020-07-29 01:10:58,669 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat Starting monitored process 9 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 9 with mathsat -unsat_core_generation=3 [2020-07-29 01:10:58,757 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:58,760 INFO L263 TraceCheckSpWp]: Trace formula consists of 66 conjuncts, 6 conjunts are in the unsatisfiable core [2020-07-29 01:10:58,768 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:10:58,770 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2020-07-29 01:10:58,786 INFO L384 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2020-07-29 01:10:58,786 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 01:10:58,789 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 01:10:58,789 INFO L544 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2020-07-29 01:10:58,790 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:11, output treesize:7 [2020-07-29 01:10:58,829 INFO L350 Elim1Store]: treesize reduction 27, result has 20.6 percent of original size [2020-07-29 01:10:58,830 INFO L384 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 27 treesize of output 11 [2020-07-29 01:10:58,831 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 01:10:58,833 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 01:10:58,834 INFO L544 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2020-07-29 01:10:58,834 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:27, output treesize:7 [2020-07-29 01:10:58,872 INFO L384 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 9 [2020-07-29 01:10:58,872 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 01:10:58,874 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 01:10:58,874 INFO L544 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2020-07-29 01:10:58,875 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:17, output treesize:5 [2020-07-29 01:10:58,880 WARN L406 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2020-07-29 01:10:58,880 WARN L407 uantifierElimination]: Input elimination task: ∃ [|#memory_int|, main_~p~0.base, main_~p~0.offset]. (let ((.cse0 (select (select |#memory_int| main_~p~0.base) main_~p~0.offset))) (and (= .cse0 |main_#t~mem4|) (= (bvadd .cse0 (_ bv4294967295 32)) (_ bv0 32)))) [2020-07-29 01:10:58,880 WARN L408 uantifierElimination]: ElimStorePlain result: ∃ []. (= (_ bv0 32) (bvadd |main_#t~mem4| (_ bv4294967295 32))) [2020-07-29 01:10:58,889 INFO L263 TraceCheckUtils]: 0: Hoare triple {1441#true} call ULTIMATE.init(); {1441#true} is VALID [2020-07-29 01:10:58,889 INFO L280 TraceCheckUtils]: 1: Hoare triple {1441#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {1441#true} is VALID [2020-07-29 01:10:58,889 INFO L280 TraceCheckUtils]: 2: Hoare triple {1441#true} assume true; {1441#true} is VALID [2020-07-29 01:10:58,889 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {1441#true} {1441#true} #101#return; {1441#true} is VALID [2020-07-29 01:10:58,890 INFO L263 TraceCheckUtils]: 4: Hoare triple {1441#true} call #t~ret6 := main(); {1441#true} is VALID [2020-07-29 01:10:58,890 INFO L280 TraceCheckUtils]: 5: Hoare triple {1441#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0bv32, 0bv32; {1441#true} is VALID [2020-07-29 01:10:58,890 INFO L280 TraceCheckUtils]: 6: Hoare triple {1441#true} assume !!(0bv32 != #t~nondet2);havoc #t~nondet2;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(8bv32);~t~0.base, ~t~0.offset := #t~malloc3.base, #t~malloc3.offset; {1441#true} is VALID [2020-07-29 01:10:58,890 INFO L280 TraceCheckUtils]: 7: Hoare triple {1441#true} assume !(~t~0.base == 0bv32 && ~t~0.offset == 0bv32); {1441#true} is VALID [2020-07-29 01:10:58,892 INFO L280 TraceCheckUtils]: 8: Hoare triple {1441#true} SUMMARY for call write~intINTTYPE4(1bv32, ~t~0.base, ~t~0.offset, 4bv32); srcloc: L525-3 {1470#(= (_ bv1 32) (select (select |#memory_int| main_~t~0.base) main_~t~0.offset))} is VALID [2020-07-29 01:10:58,894 INFO L280 TraceCheckUtils]: 9: Hoare triple {1470#(= (_ bv1 32) (select (select |#memory_int| main_~t~0.base) main_~t~0.offset))} SUMMARY for call write~$Pointer$(~p~0.base, ~p~0.offset, ~t~0.base, ~bvadd32(4bv32, ~t~0.offset), 4bv32); srcloc: L526 {1470#(= (_ bv1 32) (select (select |#memory_int| main_~t~0.base) main_~t~0.offset))} is VALID [2020-07-29 01:10:58,895 INFO L280 TraceCheckUtils]: 10: Hoare triple {1470#(= (_ bv1 32) (select (select |#memory_int| main_~t~0.base) main_~t~0.offset))} ~p~0.base, ~p~0.offset := ~t~0.base, ~t~0.offset; {1477#(= (bvadd (select (select |#memory_int| main_~p~0.base) main_~p~0.offset) (_ bv4294967295 32)) (_ bv0 32))} is VALID [2020-07-29 01:10:58,895 INFO L280 TraceCheckUtils]: 11: Hoare triple {1477#(= (bvadd (select (select |#memory_int| main_~p~0.base) main_~p~0.offset) (_ bv4294967295 32)) (_ bv0 32))} assume !(0bv32 != #t~nondet2);havoc #t~nondet2; {1477#(= (bvadd (select (select |#memory_int| main_~p~0.base) main_~p~0.offset) (_ bv4294967295 32)) (_ bv0 32))} is VALID [2020-07-29 01:10:58,896 INFO L280 TraceCheckUtils]: 12: Hoare triple {1477#(= (bvadd (select (select |#memory_int| main_~p~0.base) main_~p~0.offset) (_ bv4294967295 32)) (_ bv0 32))} assume !!(~p~0.base != 0bv32 || ~p~0.offset != 0bv32); {1477#(= (bvadd (select (select |#memory_int| main_~p~0.base) main_~p~0.offset) (_ bv4294967295 32)) (_ bv0 32))} is VALID [2020-07-29 01:10:58,896 INFO L280 TraceCheckUtils]: 13: Hoare triple {1477#(= (bvadd (select (select |#memory_int| main_~p~0.base) main_~p~0.offset) (_ bv4294967295 32)) (_ bv0 32))} SUMMARY for call #t~mem4 := read~intINTTYPE4(~p~0.base, ~p~0.offset, 4bv32); srcloc: L531 {1487#(= (_ bv1 32) |main_#t~mem4|)} is VALID [2020-07-29 01:10:58,897 INFO L280 TraceCheckUtils]: 14: Hoare triple {1487#(= (_ bv1 32) |main_#t~mem4|)} assume 1bv32 != #t~mem4;havoc #t~mem4; {1442#false} is VALID [2020-07-29 01:10:58,897 INFO L280 TraceCheckUtils]: 15: Hoare triple {1442#false} assume !false; {1442#false} is VALID [2020-07-29 01:10:58,898 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:58,898 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2020-07-29 01:10:58,946 INFO L544 ElimStorePlain]: Start of recursive call 2: 1 dim-0 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2020-07-29 01:10:58,950 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 01:10:58,951 INFO L544 ElimStorePlain]: Start of recursive call 1: 1 dim-2 vars, End of recursive call: 1 dim-0 vars, and 1 xjuncts. [2020-07-29 01:10:58,951 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:28, output treesize:12 [2020-07-29 01:10:58,978 INFO L280 TraceCheckUtils]: 15: Hoare triple {1442#false} assume !false; {1442#false} is VALID [2020-07-29 01:10:58,979 INFO L280 TraceCheckUtils]: 14: Hoare triple {1487#(= (_ bv1 32) |main_#t~mem4|)} assume 1bv32 != #t~mem4;havoc #t~mem4; {1442#false} is VALID [2020-07-29 01:10:58,980 INFO L280 TraceCheckUtils]: 13: Hoare triple {1477#(= (bvadd (select (select |#memory_int| main_~p~0.base) main_~p~0.offset) (_ bv4294967295 32)) (_ bv0 32))} SUMMARY for call #t~mem4 := read~intINTTYPE4(~p~0.base, ~p~0.offset, 4bv32); srcloc: L531 {1487#(= (_ bv1 32) |main_#t~mem4|)} is VALID [2020-07-29 01:10:58,981 INFO L280 TraceCheckUtils]: 12: Hoare triple {1477#(= (bvadd (select (select |#memory_int| main_~p~0.base) main_~p~0.offset) (_ bv4294967295 32)) (_ bv0 32))} assume !!(~p~0.base != 0bv32 || ~p~0.offset != 0bv32); {1477#(= (bvadd (select (select |#memory_int| main_~p~0.base) main_~p~0.offset) (_ bv4294967295 32)) (_ bv0 32))} is VALID [2020-07-29 01:10:58,981 INFO L280 TraceCheckUtils]: 11: Hoare triple {1477#(= (bvadd (select (select |#memory_int| main_~p~0.base) main_~p~0.offset) (_ bv4294967295 32)) (_ bv0 32))} assume !(0bv32 != #t~nondet2);havoc #t~nondet2; {1477#(= (bvadd (select (select |#memory_int| main_~p~0.base) main_~p~0.offset) (_ bv4294967295 32)) (_ bv0 32))} is VALID [2020-07-29 01:10:58,982 INFO L280 TraceCheckUtils]: 10: Hoare triple {1470#(= (_ bv1 32) (select (select |#memory_int| main_~t~0.base) main_~t~0.offset))} ~p~0.base, ~p~0.offset := ~t~0.base, ~t~0.offset; {1477#(= (bvadd (select (select |#memory_int| main_~p~0.base) main_~p~0.offset) (_ bv4294967295 32)) (_ bv0 32))} is VALID [2020-07-29 01:10:58,984 INFO L280 TraceCheckUtils]: 9: Hoare triple {1470#(= (_ bv1 32) (select (select |#memory_int| main_~t~0.base) main_~t~0.offset))} SUMMARY for call write~$Pointer$(~p~0.base, ~p~0.offset, ~t~0.base, ~bvadd32(4bv32, ~t~0.offset), 4bv32); srcloc: L526 {1470#(= (_ bv1 32) (select (select |#memory_int| main_~t~0.base) main_~t~0.offset))} is VALID [2020-07-29 01:10:58,986 INFO L280 TraceCheckUtils]: 8: Hoare triple {1441#true} SUMMARY for call write~intINTTYPE4(1bv32, ~t~0.base, ~t~0.offset, 4bv32); srcloc: L525-3 {1470#(= (_ bv1 32) (select (select |#memory_int| main_~t~0.base) main_~t~0.offset))} is VALID [2020-07-29 01:10:58,986 INFO L280 TraceCheckUtils]: 7: Hoare triple {1441#true} assume !(~t~0.base == 0bv32 && ~t~0.offset == 0bv32); {1441#true} is VALID [2020-07-29 01:10:58,986 INFO L280 TraceCheckUtils]: 6: Hoare triple {1441#true} assume !!(0bv32 != #t~nondet2);havoc #t~nondet2;call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(8bv32);~t~0.base, ~t~0.offset := #t~malloc3.base, #t~malloc3.offset; {1441#true} is VALID [2020-07-29 01:10:58,986 INFO L280 TraceCheckUtils]: 5: Hoare triple {1441#true} havoc ~t~0.base, ~t~0.offset;~p~0.base, ~p~0.offset := 0bv32, 0bv32; {1441#true} is VALID [2020-07-29 01:10:58,987 INFO L263 TraceCheckUtils]: 4: Hoare triple {1441#true} call #t~ret6 := main(); {1441#true} is VALID [2020-07-29 01:10:58,987 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {1441#true} {1441#true} #101#return; {1441#true} is VALID [2020-07-29 01:10:58,987 INFO L280 TraceCheckUtils]: 2: Hoare triple {1441#true} assume true; {1441#true} is VALID [2020-07-29 01:10:58,987 INFO L280 TraceCheckUtils]: 1: Hoare triple {1441#true} #NULL.base, #NULL.offset := 0bv32, 0bv32;#valid := #valid[0bv32 := 0bv1];assume ~bvult32(0bv32, #StackHeapBarrier);currentRoundingMode := ~roundNearestTiesToEven; {1441#true} is VALID [2020-07-29 01:10:58,987 INFO L263 TraceCheckUtils]: 0: Hoare triple {1441#true} call ULTIMATE.init(); {1441#true} is VALID [2020-07-29 01:10:58,988 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:10:58,989 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2074273502] [2020-07-29 01:10:58,989 INFO L220 FreeRefinementEngine]: Constructing automaton from 2 perfect and 0 imperfect interpolant sequences. [2020-07-29 01:10:58,989 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5, 5] imperfect sequences [] total 5 [2020-07-29 01:10:58,989 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1692990246] [2020-07-29 01:10:58,990 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 16 [2020-07-29 01:10:58,990 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:10:58,990 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2020-07-29 01:10:59,013 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:59,013 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2020-07-29 01:10:59,014 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2020-07-29 01:10:59,014 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2020-07-29 01:10:59,014 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2020-07-29 01:10:59,014 INFO L87 Difference]: Start difference. First operand 28 states and 30 transitions. Second operand 5 states. [2020-07-29 01:10:59,350 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:59,350 INFO L93 Difference]: Finished difference Result 32 states and 33 transitions. [2020-07-29 01:10:59,350 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2020-07-29 01:10:59,350 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 16 [2020-07-29 01:10:59,351 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:10:59,351 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-29 01:10:59,353 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 34 transitions. [2020-07-29 01:10:59,353 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-29 01:10:59,355 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 34 transitions. [2020-07-29 01:10:59,355 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 34 transitions. [2020-07-29 01:10:59,427 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:10:59,429 INFO L225 Difference]: With dead ends: 32 [2020-07-29 01:10:59,429 INFO L226 Difference]: Without dead ends: 32 [2020-07-29 01:10:59,430 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 33 GetRequests, 26 SyntacticMatches, 2 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2020-07-29 01:10:59,431 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2020-07-29 01:10:59,433 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 28. [2020-07-29 01:10:59,433 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:10:59,433 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand 28 states. [2020-07-29 01:10:59,433 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand 28 states. [2020-07-29 01:10:59,433 INFO L87 Difference]: Start difference. First operand 32 states. Second operand 28 states. [2020-07-29 01:10:59,435 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:59,435 INFO L93 Difference]: Finished difference Result 32 states and 33 transitions. [2020-07-29 01:10:59,435 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 33 transitions. [2020-07-29 01:10:59,435 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:59,436 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:59,436 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand 32 states. [2020-07-29 01:10:59,436 INFO L87 Difference]: Start difference. First operand 28 states. Second operand 32 states. [2020-07-29 01:10:59,437 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:10:59,438 INFO L93 Difference]: Finished difference Result 32 states and 33 transitions. [2020-07-29 01:10:59,438 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 33 transitions. [2020-07-29 01:10:59,438 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:10:59,438 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:10:59,438 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:10:59,439 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:10:59,439 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 28 states. [2020-07-29 01:10:59,440 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 29 transitions. [2020-07-29 01:10:59,440 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 29 transitions. Word has length 16 [2020-07-29 01:10:59,440 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:10:59,441 INFO L479 AbstractCegarLoop]: Abstraction has 28 states and 29 transitions. [2020-07-29 01:10:59,441 INFO L480 AbstractCegarLoop]: Interpolant automaton has 5 states. [2020-07-29 01:10:59,441 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 29 transitions. [2020-07-29 01:10:59,441 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2020-07-29 01:10:59,441 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:10:59,442 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:10:59,653 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 mathsat -unsat_core_generation=3 [2020-07-29 01:10:59,654 INFO L427 AbstractCegarLoop]: === Iteration 9 === [mainErr6ASSERT_VIOLATIONMEMORY_LEAK, mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr8REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr9ENSURES_VIOLATIONMEMORY_LEAK, mainErr0REQUIRES_VIOLATION, mainErr1REQUIRES_VIOLATION, mainErr7REQUIRES_VIOLATION]=== [2020-07-29 01:10:59,655 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:10:59,655 INFO L82 PathProgramCache]: Analyzing trace with hash -1832010702, now seen corresponding path program 1 times [2020-07-29 01:10:59,656 INFO L163 FreeRefinementEngine]: Executing refinement strategy WOLF [2020-07-29 01:10:59,657 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [870713354] [2020-07-29 01:10:59,657 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat Starting monitored process 10 with mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 10 with mathsat -unsat_core_generation=3 [2020-07-29 01:10:59,759 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 01:10:59,759 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 01:10:59,798 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-29 01:10:59,798 INFO L221 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2020-07-29 01:10:59,825 INFO L174 FreeRefinementEngine]: Strategy WOLF found a feasible trace [2020-07-29 01:10:59,825 INFO L520 BasicCegarLoop]: Counterexample might be feasible [2020-07-29 01:11:00,025 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 mathsat -unsat_core_generation=3 [2020-07-29 01:11:00,040 WARN L417 cessorBacktranslator]: Generated EnsuresSpecification ensures #valid == old(#valid); is not ensure(true) [2020-07-29 01:11:00,056 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 29.07 01:11:00 BoogieIcfgContainer [2020-07-29 01:11:00,056 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2020-07-29 01:11:00,057 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2020-07-29 01:11:00,057 INFO L271 PluginConnector]: Initializing Witness Printer... [2020-07-29 01:11:00,057 INFO L275 PluginConnector]: Witness Printer initialized [2020-07-29 01:11:00,058 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 29.07 01:10:52" (3/4) ... [2020-07-29 01:11:00,061 INFO L140 WitnessPrinter]: No result that supports witness generation found [2020-07-29 01:11:00,062 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2020-07-29 01:11:00,063 INFO L168 Benchmark]: Toolchain (without parser) took 8892.80 ms. Allocated memory was 1.0 GB in the beginning and 1.3 GB in the end (delta: 298.3 MB). Free memory was 961.6 MB in the beginning and 1.3 GB in the end (delta: -297.1 MB). Peak memory consumption was 1.3 MB. Max. memory is 11.5 GB. [2020-07-29 01:11:00,064 INFO L168 Benchmark]: CDTParser took 0.29 ms. Allocated memory is still 1.0 GB. Free memory is still 987.1 MB. There was no memory consumed. Max. memory is 11.5 GB. [2020-07-29 01:11:00,065 INFO L168 Benchmark]: CACSL2BoogieTranslator took 728.27 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 148.9 MB). Free memory was 956.2 MB in the beginning and 1.1 GB in the end (delta: -168.5 MB). Peak memory consumption was 15.2 MB. Max. memory is 11.5 GB. [2020-07-29 01:11:00,065 INFO L168 Benchmark]: Boogie Preprocessor took 81.68 ms. Allocated memory is still 1.2 GB. Free memory is still 1.1 GB. There was no memory consumed. Max. memory is 11.5 GB. [2020-07-29 01:11:00,066 INFO L168 Benchmark]: RCFGBuilder took 707.73 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 59.6 MB). Peak memory consumption was 59.6 MB. Max. memory is 11.5 GB. [2020-07-29 01:11:00,066 INFO L168 Benchmark]: TraceAbstraction took 7362.81 ms. Allocated memory was 1.2 GB in the beginning and 1.3 GB in the end (delta: 149.4 MB). Free memory was 1.1 GB in the beginning and 1.3 GB in the end (delta: -193.5 MB). There was no memory consumed. Max. memory is 11.5 GB. [2020-07-29 01:11:00,067 INFO L168 Benchmark]: Witness Printer took 4.94 ms. Allocated memory is still 1.3 GB. Free memory is still 1.3 GB. There was no memory consumed. Max. memory is 11.5 GB. [2020-07-29 01:11:00,069 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.29 ms. Allocated memory is still 1.0 GB. Free memory is still 987.1 MB. There was no memory consumed. Max. memory is 11.5 GB. * CACSL2BoogieTranslator took 728.27 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 148.9 MB). Free memory was 956.2 MB in the beginning and 1.1 GB in the end (delta: -168.5 MB). Peak memory consumption was 15.2 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 81.68 ms. Allocated memory is still 1.2 GB. Free memory is still 1.1 GB. There was no memory consumed. Max. memory is 11.5 GB. * RCFGBuilder took 707.73 ms. Allocated memory is still 1.2 GB. Free memory was 1.1 GB in the beginning and 1.1 GB in the end (delta: 59.6 MB). Peak memory consumption was 59.6 MB. Max. memory is 11.5 GB. * TraceAbstraction took 7362.81 ms. Allocated memory was 1.2 GB in the beginning and 1.3 GB in the end (delta: 149.4 MB). Free memory was 1.1 GB in the beginning and 1.3 GB in the end (delta: -193.5 MB). There was no memory consumed. Max. memory is 11.5 GB. * Witness Printer took 4.94 ms. Allocated memory is still 1.3 GB. Free memory is still 1.3 GB. There was no memory consumed. Max. memory is 11.5 GB. * Results from de.uni_freiburg.informatik.ultimate.boogie.preprocessor: - GenericResult: Unfinished Backtranslation Generated EnsuresSpecification ensures #valid == old(#valid); is not ensure(true) * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - UnprovableResult [Line: 520]: Unable to prove that all allocated memory was freed Unable to prove that all allocated memory was freed Reason: overapproximation of memtrack at line 520. Possible FailurePath: [L521] List t; [L522] List p = 0; VAL [p={0:0}] [L523] COND TRUE __VERIFIER_nondet_int() [L524] t = (List) malloc(sizeof(struct node)) VAL [malloc(sizeof(struct node))={1:0}, p={0:0}, t={1:0}] [L525] COND FALSE !(t == 0) VAL [malloc(sizeof(struct node))={1:0}, p={0:0}, t={1:0}] [L526] t->h = 1 VAL [malloc(sizeof(struct node))={1:0}, p={0:0}, t={1:0}] [L527] t->n = p VAL [malloc(sizeof(struct node))={1:0}, p={0:0}, t={1:0}] [L528] p = t VAL [malloc(sizeof(struct node))={1:0}, p={1:0}, t={1:0}] [L523] COND FALSE !(__VERIFIER_nondet_int()) [L530] COND TRUE p!=0 VAL [malloc(sizeof(struct node))={1:0}, p={1:0}, t={1:0}] [L531] EXPR p->h VAL [malloc(sizeof(struct node))={1:0}, p={1:0}, p->h=1, t={1:0}] [L531] COND FALSE !(p->h != 1) [L534] EXPR p->n VAL [malloc(sizeof(struct node))={1:0}, p={1:0}, p->n={0:0}, t={1:0}] [L534] p = p->n [L530] COND FALSE !(p!=0) VAL [malloc(sizeof(struct node))={1:0}, p={0:0}, t={1:0}] - StatisticsResult: Ultimate Automizer benchmark data CFG has 10 procedures, 56 locations, 10 error locations. Started 1 CEGAR loops. VerificationResult: UNSAFE, OverallTime: 7.2s, OverallIterations: 9, TraceHistogramMax: 1, AutomataDifference: 2.5s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 153 SDtfs, 199 SDslu, 125 SDs, 0 SdLazy, 186 SolverSat, 15 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 0.5s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 186 GetRequests, 162 SyntacticMatches, 2 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.4s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=34occurred in iteration=0, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.1s AutomataMinimizationTime, 8 MinimizatonAttempts, 44 StatesRemovedByMinimization, 6 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 1.3s InterpolantComputationTime, 113 NumberOfCodeBlocks, 113 NumberOfCodeBlocksAsserted, 9 NumberOfCheckSat, 172 ConstructedInterpolants, 0 QuantifiedInterpolants, 7308 SizeOfPredicates, 22 NumberOfNonLiveVariables, 400 ConjunctsInSsa, 34 ConjunctsInUnsatCore, 16 InterpolantComputations, 16 PerfectInterpolantSequences, 8/8 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate could not prove your program: unable to determine feasibility of some traces Received shutdown request...