./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/termination-crafted/Arrays03-ValueRestictsIndex-2.c --full-output -ea --architecture 64bit -------------------------------------------------------------------------------- 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/termination-crafted/Arrays03-ValueRestictsIndex-2.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-64bit-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 64bit --witnessprinter.graph.data.programhash 282a32bc5fb3d70423f87a450340f7a26ab0f093 ...................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................... Execution finished normally Writing output log to file Ultimate.log Result: TRUE --- Real Ultimate output --- This is Ultimate 0.1.25-8bd4bc6 [2020-07-29 01:17:46,984 INFO L177 SettingsManager]: Resetting all preferences to default values... [2020-07-29 01:17:46,986 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2020-07-29 01:17:46,999 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2020-07-29 01:17:47,000 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2020-07-29 01:17:47,001 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2020-07-29 01:17:47,003 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2020-07-29 01:17:47,005 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2020-07-29 01:17:47,007 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2020-07-29 01:17:47,008 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2020-07-29 01:17:47,009 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2020-07-29 01:17:47,011 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2020-07-29 01:17:47,011 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2020-07-29 01:17:47,013 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2020-07-29 01:17:47,014 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2020-07-29 01:17:47,015 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2020-07-29 01:17:47,016 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2020-07-29 01:17:47,017 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2020-07-29 01:17:47,019 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2020-07-29 01:17:47,022 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2020-07-29 01:17:47,024 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2020-07-29 01:17:47,025 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2020-07-29 01:17:47,027 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2020-07-29 01:17:47,028 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2020-07-29 01:17:47,030 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2020-07-29 01:17:47,031 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2020-07-29 01:17:47,031 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2020-07-29 01:17:47,032 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2020-07-29 01:17:47,033 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2020-07-29 01:17:47,034 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2020-07-29 01:17:47,034 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2020-07-29 01:17:47,035 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2020-07-29 01:17:47,036 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2020-07-29 01:17:47,037 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2020-07-29 01:17:47,038 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2020-07-29 01:17:47,039 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2020-07-29 01:17:47,040 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2020-07-29 01:17:47,040 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2020-07-29 01:17:47,040 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2020-07-29 01:17:47,041 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2020-07-29 01:17:47,042 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2020-07-29 01:17:47,043 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-64bit-Automizer_Default.epf [2020-07-29 01:17:47,069 INFO L113 SettingsManager]: Loading preferences was successful [2020-07-29 01:17:47,070 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2020-07-29 01:17:47,072 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2020-07-29 01:17:47,072 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2020-07-29 01:17:47,073 INFO L138 SettingsManager]: * Use SBE=true [2020-07-29 01:17:47,073 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2020-07-29 01:17:47,073 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2020-07-29 01:17:47,073 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2020-07-29 01:17:47,074 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2020-07-29 01:17:47,074 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2020-07-29 01:17:47,075 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2020-07-29 01:17:47,075 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2020-07-29 01:17:47,076 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2020-07-29 01:17:47,076 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2020-07-29 01:17:47,077 INFO L138 SettingsManager]: * Use constant arrays=true [2020-07-29 01:17:47,077 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2020-07-29 01:17:47,077 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2020-07-29 01:17:47,077 INFO L138 SettingsManager]: * To the following directory=./dump/ [2020-07-29 01:17:47,078 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2020-07-29 01:17:47,078 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-29 01:17:47,078 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2020-07-29 01:17:47,079 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2020-07-29 01:17:47,079 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2020-07-29 01:17:47,079 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2020-07-29 01:17:47,079 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2020-07-29 01:17:47,080 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 -> 64bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 282a32bc5fb3d70423f87a450340f7a26ab0f093 [2020-07-29 01:17:47,382 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2020-07-29 01:17:47,395 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2020-07-29 01:17:47,399 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2020-07-29 01:17:47,401 INFO L271 PluginConnector]: Initializing CDTParser... [2020-07-29 01:17:47,401 INFO L275 PluginConnector]: CDTParser initialized [2020-07-29 01:17:47,402 INFO L429 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/termination-crafted/Arrays03-ValueRestictsIndex-2.c [2020-07-29 01:17:47,465 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/808795b4d/73e83c181bc7460096a19b7c1e759f50/FLAGe0a6e0fab [2020-07-29 01:17:47,913 INFO L306 CDTParser]: Found 1 translation units. [2020-07-29 01:17:47,914 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/termination-crafted/Arrays03-ValueRestictsIndex-2.c [2020-07-29 01:17:47,921 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/808795b4d/73e83c181bc7460096a19b7c1e759f50/FLAGe0a6e0fab [2020-07-29 01:17:48,348 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/808795b4d/73e83c181bc7460096a19b7c1e759f50 [2020-07-29 01:17:48,352 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2020-07-29 01:17:48,355 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2020-07-29 01:17:48,356 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2020-07-29 01:17:48,357 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2020-07-29 01:17:48,360 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2020-07-29 01:17:48,362 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 29.07 01:17:48" (1/1) ... [2020-07-29 01:17:48,365 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1ebfc50d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:17:48, skipping insertion in model container [2020-07-29 01:17:48,366 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 29.07 01:17:48" (1/1) ... [2020-07-29 01:17:48,374 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2020-07-29 01:17:48,392 INFO L178 MainTranslator]: Built tables and reachable declarations [2020-07-29 01:17:48,601 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-29 01:17:48,610 INFO L203 MainTranslator]: Completed pre-run [2020-07-29 01:17:48,636 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-29 01:17:48,661 INFO L208 MainTranslator]: Completed translation [2020-07-29 01:17:48,662 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:17:48 WrapperNode [2020-07-29 01:17:48,662 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2020-07-29 01:17:48,663 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2020-07-29 01:17:48,663 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2020-07-29 01:17:48,664 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2020-07-29 01:17:48,732 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:17:48" (1/1) ... [2020-07-29 01:17:48,733 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:17:48" (1/1) ... [2020-07-29 01:17:48,742 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:17:48" (1/1) ... [2020-07-29 01:17:48,743 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:17:48" (1/1) ... [2020-07-29 01:17:48,764 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:17:48" (1/1) ... [2020-07-29 01:17:48,775 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:17:48" (1/1) ... [2020-07-29 01:17:48,777 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:17:48" (1/1) ... [2020-07-29 01:17:48,787 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2020-07-29 01:17:48,787 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2020-07-29 01:17:48,788 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2020-07-29 01:17:48,788 INFO L275 PluginConnector]: RCFGBuilder initialized [2020-07-29 01:17:48,788 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:17:48" (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:17:48,845 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2020-07-29 01:17:48,846 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2020-07-29 01:17:48,846 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2020-07-29 01:17:48,846 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2020-07-29 01:17:48,846 INFO L130 BoogieDeclarations]: Found specification of procedure main [2020-07-29 01:17:48,847 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2020-07-29 01:17:48,847 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2020-07-29 01:17:48,847 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2020-07-29 01:17:48,847 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2020-07-29 01:17:48,848 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2020-07-29 01:17:48,848 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2020-07-29 01:17:49,231 INFO L290 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2020-07-29 01:17:49,232 INFO L295 CfgBuilder]: Removed 2 assume(true) statements. [2020-07-29 01:17:49,237 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 29.07 01:17:49 BoogieIcfgContainer [2020-07-29 01:17:49,237 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2020-07-29 01:17:49,239 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2020-07-29 01:17:49,239 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2020-07-29 01:17:49,243 INFO L275 PluginConnector]: TraceAbstraction initialized [2020-07-29 01:17:49,243 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 29.07 01:17:48" (1/3) ... [2020-07-29 01:17:49,244 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@13a10ed9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 29.07 01:17:49, skipping insertion in model container [2020-07-29 01:17:49,245 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.07 01:17:48" (2/3) ... [2020-07-29 01:17:49,245 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@13a10ed9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 29.07 01:17:49, skipping insertion in model container [2020-07-29 01:17:49,245 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 29.07 01:17:49" (3/3) ... [2020-07-29 01:17:49,248 INFO L109 eAbstractionObserver]: Analyzing ICFG Arrays03-ValueRestictsIndex-2.c [2020-07-29 01:17:49,260 INFO L157 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2020-07-29 01:17:49,268 INFO L169 ceAbstractionStarter]: Appying trace abstraction to program that has 7 error locations. [2020-07-29 01:17:49,283 INFO L251 AbstractCegarLoop]: Starting to check reachability of 7 error locations. [2020-07-29 01:17:49,316 INFO L375 AbstractCegarLoop]: Interprodecural is true [2020-07-29 01:17:49,317 INFO L376 AbstractCegarLoop]: Hoare is false [2020-07-29 01:17:49,317 INFO L377 AbstractCegarLoop]: Compute interpolants for FPandBP [2020-07-29 01:17:49,317 INFO L378 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2020-07-29 01:17:49,317 INFO L379 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2020-07-29 01:17:49,318 INFO L380 AbstractCegarLoop]: Difference is false [2020-07-29 01:17:49,318 INFO L381 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2020-07-29 01:17:49,318 INFO L385 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2020-07-29 01:17:49,339 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states. [2020-07-29 01:17:49,357 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 9 [2020-07-29 01:17:49,359 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:17:49,361 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:17:49,362 INFO L427 AbstractCegarLoop]: === Iteration 1 === [mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr0REQUIRES_VIOLATION, mainErr6ENSURES_VIOLATIONMEMORY_LEAK, mainErr1REQUIRES_VIOLATION]=== [2020-07-29 01:17:49,372 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:17:49,373 INFO L82 PathProgramCache]: Analyzing trace with hash -1846113273, now seen corresponding path program 1 times [2020-07-29 01:17:49,382 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 01:17:49,383 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1836533387] [2020-07-29 01:17:49,383 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 01:17:49,484 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:17:49,609 INFO L375 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2020-07-29 01:17:49,613 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:17:49,627 INFO L280 TraceCheckUtils]: 0: Hoare triple {39#(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; {33#true} is VALID [2020-07-29 01:17:49,628 INFO L280 TraceCheckUtils]: 1: Hoare triple {33#true} assume true; {33#true} is VALID [2020-07-29 01:17:49,629 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {33#true} {33#true} #65#return; {33#true} is VALID [2020-07-29 01:17:49,632 INFO L263 TraceCheckUtils]: 0: Hoare triple {33#true} call ULTIMATE.init(); {39#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-29 01:17:49,633 INFO L280 TraceCheckUtils]: 1: Hoare triple {39#(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; {33#true} is VALID [2020-07-29 01:17:49,633 INFO L280 TraceCheckUtils]: 2: Hoare triple {33#true} assume true; {33#true} is VALID [2020-07-29 01:17:49,634 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {33#true} {33#true} #65#return; {33#true} is VALID [2020-07-29 01:17:49,634 INFO L263 TraceCheckUtils]: 4: Hoare triple {33#true} call #t~ret7 := main(); {33#true} is VALID [2020-07-29 01:17:49,637 INFO L280 TraceCheckUtils]: 5: Hoare triple {33#true} assume -2147483648 <= #t~nondet0 && #t~nondet0 <= 2147483647;~k~0 := #t~nondet0;havoc #t~nondet0;call ~#a~0.base, ~#a~0.offset := #Ultimate.allocOnStack(4192);~i~0 := 0; {38#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:49,639 INFO L280 TraceCheckUtils]: 6: Hoare triple {38#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {38#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:49,641 INFO L280 TraceCheckUtils]: 7: Hoare triple {38#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} assume !(4 + (~#a~0.offset + 4 * ~i~0) <= #length[~#a~0.base] && 0 <= ~#a~0.offset + 4 * ~i~0); {34#false} is VALID [2020-07-29 01:17:49,642 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:17:49,643 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1836533387] [2020-07-29 01:17:49,644 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-29 01:17:49,645 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2020-07-29 01:17:49,646 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1535955553] [2020-07-29 01:17:49,652 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 8 [2020-07-29 01:17:49,656 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:17:49,660 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2020-07-29 01:17:49,680 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 8 edges. 8 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:17:49,680 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-07-29 01:17:49,680 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-29 01:17:49,690 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-07-29 01:17:49,691 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-29 01:17:49,694 INFO L87 Difference]: Start difference. First operand 30 states. Second operand 4 states. [2020-07-29 01:17:49,973 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:17:49,974 INFO L93 Difference]: Finished difference Result 35 states and 39 transitions. [2020-07-29 01:17:49,974 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2020-07-29 01:17:49,975 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 8 [2020-07-29 01:17:49,975 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:17:49,976 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-29 01:17:49,990 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2020-07-29 01:17:49,991 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-29 01:17:49,995 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2020-07-29 01:17:49,995 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 44 transitions. [2020-07-29 01:17:50,067 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:17:50,080 INFO L225 Difference]: With dead ends: 35 [2020-07-29 01:17:50,080 INFO L226 Difference]: Without dead ends: 32 [2020-07-29 01:17:50,082 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:17:50,102 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2020-07-29 01:17:50,117 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 29. [2020-07-29 01:17:50,118 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:17:50,118 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand 29 states. [2020-07-29 01:17:50,119 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand 29 states. [2020-07-29 01:17:50,120 INFO L87 Difference]: Start difference. First operand 32 states. Second operand 29 states. [2020-07-29 01:17:50,124 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:17:50,125 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2020-07-29 01:17:50,125 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 36 transitions. [2020-07-29 01:17:50,126 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:17:50,126 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:17:50,127 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand 32 states. [2020-07-29 01:17:50,127 INFO L87 Difference]: Start difference. First operand 29 states. Second operand 32 states. [2020-07-29 01:17:50,132 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:17:50,132 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2020-07-29 01:17:50,132 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 36 transitions. [2020-07-29 01:17:50,133 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:17:50,133 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:17:50,134 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:17:50,134 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:17:50,135 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 29 states. [2020-07-29 01:17:50,137 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 34 transitions. [2020-07-29 01:17:50,139 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 34 transitions. Word has length 8 [2020-07-29 01:17:50,139 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:17:50,140 INFO L479 AbstractCegarLoop]: Abstraction has 29 states and 34 transitions. [2020-07-29 01:17:50,140 INFO L480 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-07-29 01:17:50,140 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 34 transitions. [2020-07-29 01:17:50,141 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 9 [2020-07-29 01:17:50,141 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:17:50,141 INFO L422 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:17:50,142 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2020-07-29 01:17:50,142 INFO L427 AbstractCegarLoop]: === Iteration 2 === [mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr0REQUIRES_VIOLATION, mainErr6ENSURES_VIOLATIONMEMORY_LEAK, mainErr1REQUIRES_VIOLATION]=== [2020-07-29 01:17:50,143 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:17:50,143 INFO L82 PathProgramCache]: Analyzing trace with hash -1846113274, now seen corresponding path program 1 times [2020-07-29 01:17:50,143 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 01:17:50,144 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [469747004] [2020-07-29 01:17:50,144 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 01:17:50,158 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:17:50,213 INFO L375 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2020-07-29 01:17:50,216 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:17:50,222 INFO L280 TraceCheckUtils]: 0: Hoare triple {176#(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; {170#true} is VALID [2020-07-29 01:17:50,223 INFO L280 TraceCheckUtils]: 1: Hoare triple {170#true} assume true; {170#true} is VALID [2020-07-29 01:17:50,223 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {170#true} {170#true} #65#return; {170#true} is VALID [2020-07-29 01:17:50,225 INFO L263 TraceCheckUtils]: 0: Hoare triple {170#true} call ULTIMATE.init(); {176#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-29 01:17:50,225 INFO L280 TraceCheckUtils]: 1: Hoare triple {176#(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; {170#true} is VALID [2020-07-29 01:17:50,226 INFO L280 TraceCheckUtils]: 2: Hoare triple {170#true} assume true; {170#true} is VALID [2020-07-29 01:17:50,226 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {170#true} {170#true} #65#return; {170#true} is VALID [2020-07-29 01:17:50,227 INFO L263 TraceCheckUtils]: 4: Hoare triple {170#true} call #t~ret7 := main(); {170#true} is VALID [2020-07-29 01:17:50,229 INFO L280 TraceCheckUtils]: 5: Hoare triple {170#true} assume -2147483648 <= #t~nondet0 && #t~nondet0 <= 2147483647;~k~0 := #t~nondet0;havoc #t~nondet0;call ~#a~0.base, ~#a~0.offset := #Ultimate.allocOnStack(4192);~i~0 := 0; {175#(= 1 (select |#valid| |main_~#a~0.base|))} is VALID [2020-07-29 01:17:50,230 INFO L280 TraceCheckUtils]: 6: Hoare triple {175#(= 1 (select |#valid| |main_~#a~0.base|))} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {175#(= 1 (select |#valid| |main_~#a~0.base|))} is VALID [2020-07-29 01:17:50,231 INFO L280 TraceCheckUtils]: 7: Hoare triple {175#(= 1 (select |#valid| |main_~#a~0.base|))} assume !(1 == #valid[~#a~0.base]); {171#false} is VALID [2020-07-29 01:17:50,231 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:17:50,232 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [469747004] [2020-07-29 01:17:50,232 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-29 01:17:50,232 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2020-07-29 01:17:50,233 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1220298784] [2020-07-29 01:17:50,234 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 8 [2020-07-29 01:17:50,235 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:17:50,235 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2020-07-29 01:17:50,251 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 8 edges. 8 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:17:50,251 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-07-29 01:17:50,252 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-29 01:17:50,252 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-07-29 01:17:50,253 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-29 01:17:50,253 INFO L87 Difference]: Start difference. First operand 29 states and 34 transitions. Second operand 4 states. [2020-07-29 01:17:50,398 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:17:50,398 INFO L93 Difference]: Finished difference Result 26 states and 30 transitions. [2020-07-29 01:17:50,398 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2020-07-29 01:17:50,399 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 8 [2020-07-29 01:17:50,399 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:17:50,399 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-29 01:17:50,403 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 31 transitions. [2020-07-29 01:17:50,404 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-29 01:17:50,407 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 31 transitions. [2020-07-29 01:17:50,407 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 31 transitions. [2020-07-29 01:17:50,458 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:17:50,460 INFO L225 Difference]: With dead ends: 26 [2020-07-29 01:17:50,460 INFO L226 Difference]: Without dead ends: 26 [2020-07-29 01:17:50,461 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:17:50,462 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 26 states. [2020-07-29 01:17:50,465 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 26 to 26. [2020-07-29 01:17:50,465 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:17:50,466 INFO L82 GeneralOperation]: Start isEquivalent. First operand 26 states. Second operand 26 states. [2020-07-29 01:17:50,466 INFO L74 IsIncluded]: Start isIncluded. First operand 26 states. Second operand 26 states. [2020-07-29 01:17:50,467 INFO L87 Difference]: Start difference. First operand 26 states. Second operand 26 states. [2020-07-29 01:17:50,469 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:17:50,470 INFO L93 Difference]: Finished difference Result 26 states and 30 transitions. [2020-07-29 01:17:50,470 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 30 transitions. [2020-07-29 01:17:50,471 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:17:50,471 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:17:50,472 INFO L74 IsIncluded]: Start isIncluded. First operand 26 states. Second operand 26 states. [2020-07-29 01:17:50,472 INFO L87 Difference]: Start difference. First operand 26 states. Second operand 26 states. [2020-07-29 01:17:50,474 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:17:50,475 INFO L93 Difference]: Finished difference Result 26 states and 30 transitions. [2020-07-29 01:17:50,475 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 30 transitions. [2020-07-29 01:17:50,476 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:17:50,476 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:17:50,476 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:17:50,477 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:17:50,477 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 26 states. [2020-07-29 01:17:50,479 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 30 transitions. [2020-07-29 01:17:50,480 INFO L78 Accepts]: Start accepts. Automaton has 26 states and 30 transitions. Word has length 8 [2020-07-29 01:17:50,480 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:17:50,481 INFO L479 AbstractCegarLoop]: Abstraction has 26 states and 30 transitions. [2020-07-29 01:17:50,481 INFO L480 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-07-29 01:17:50,481 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 30 transitions. [2020-07-29 01:17:50,482 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2020-07-29 01:17:50,482 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:17:50,483 INFO L422 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:17:50,483 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2020-07-29 01:17:50,483 INFO L427 AbstractCegarLoop]: === Iteration 3 === [mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr0REQUIRES_VIOLATION, mainErr6ENSURES_VIOLATIONMEMORY_LEAK, mainErr1REQUIRES_VIOLATION]=== [2020-07-29 01:17:50,484 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:17:50,484 INFO L82 PathProgramCache]: Analyzing trace with hash 1545536714, now seen corresponding path program 1 times [2020-07-29 01:17:50,485 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 01:17:50,485 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1716247972] [2020-07-29 01:17:50,485 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 01:17:50,509 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:17:50,611 INFO L375 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2020-07-29 01:17:50,613 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:17:50,619 INFO L280 TraceCheckUtils]: 0: Hoare triple {290#(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; {283#true} is VALID [2020-07-29 01:17:50,620 INFO L280 TraceCheckUtils]: 1: Hoare triple {283#true} assume true; {283#true} is VALID [2020-07-29 01:17:50,620 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {283#true} {283#true} #65#return; {283#true} is VALID [2020-07-29 01:17:50,623 INFO L263 TraceCheckUtils]: 0: Hoare triple {283#true} call ULTIMATE.init(); {290#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-29 01:17:50,623 INFO L280 TraceCheckUtils]: 1: Hoare triple {290#(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; {283#true} is VALID [2020-07-29 01:17:50,623 INFO L280 TraceCheckUtils]: 2: Hoare triple {283#true} assume true; {283#true} is VALID [2020-07-29 01:17:50,624 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {283#true} {283#true} #65#return; {283#true} is VALID [2020-07-29 01:17:50,624 INFO L263 TraceCheckUtils]: 4: Hoare triple {283#true} call #t~ret7 := main(); {283#true} is VALID [2020-07-29 01:17:50,627 INFO L280 TraceCheckUtils]: 5: Hoare triple {283#true} assume -2147483648 <= #t~nondet0 && #t~nondet0 <= 2147483647;~k~0 := #t~nondet0;havoc #t~nondet0;call ~#a~0.base, ~#a~0.offset := #Ultimate.allocOnStack(4192);~i~0 := 0; {288#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:50,628 INFO L280 TraceCheckUtils]: 6: Hoare triple {288#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {288#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:50,630 INFO L280 TraceCheckUtils]: 7: Hoare triple {288#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} SUMMARY for call write~int(#t~nondet2, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); srcloc: L16 {288#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:50,632 INFO L280 TraceCheckUtils]: 8: Hoare triple {288#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} havoc #t~nondet2; {288#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:50,633 INFO L280 TraceCheckUtils]: 9: Hoare triple {288#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} #t~post1 := ~i~0;~i~0 := 1 + #t~post1;havoc #t~post1; {289#(and (<= main_~i~0 1) (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:50,635 INFO L280 TraceCheckUtils]: 10: Hoare triple {289#(and (<= main_~i~0 1) (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {289#(and (<= main_~i~0 1) (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:50,636 INFO L280 TraceCheckUtils]: 11: Hoare triple {289#(and (<= main_~i~0 1) (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} assume !(4 + (~#a~0.offset + 4 * ~i~0) <= #length[~#a~0.base] && 0 <= ~#a~0.offset + 4 * ~i~0); {284#false} is VALID [2020-07-29 01:17:50,638 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:17:50,638 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1716247972] [2020-07-29 01:17:50,639 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2088706801] [2020-07-29 01:17:50,639 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:17:50,701 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:17:50,703 INFO L263 TraceCheckSpWp]: Trace formula consists of 57 conjuncts, 8 conjunts are in the unsatisfiable core [2020-07-29 01:17:50,712 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:17:50,719 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2020-07-29 01:17:50,804 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:17:50,805 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 01:17:50,815 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 01:17:50,816 INFO L544 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2020-07-29 01:17:50,816 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:13, output treesize:12 [2020-07-29 01:17:50,821 WARN L406 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2020-07-29 01:17:50,822 WARN L407 uantifierElimination]: Input elimination task: ∃ [|v_#length_11|]. (and (= (store |v_#length_11| |main_~#a~0.base| 4192) |#length|) (= 0 main_~i~0) (= 0 |main_~#a~0.offset|)) [2020-07-29 01:17:50,822 WARN L408 uantifierElimination]: ElimStorePlain result: ∃ []. (and (= 0 main_~i~0) (= 4192 (select |#length| |main_~#a~0.base|)) (= 0 |main_~#a~0.offset|)) [2020-07-29 01:17:50,860 INFO L263 TraceCheckUtils]: 0: Hoare triple {283#true} call ULTIMATE.init(); {283#true} is VALID [2020-07-29 01:17:50,860 INFO L280 TraceCheckUtils]: 1: Hoare triple {283#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {283#true} is VALID [2020-07-29 01:17:50,861 INFO L280 TraceCheckUtils]: 2: Hoare triple {283#true} assume true; {283#true} is VALID [2020-07-29 01:17:50,861 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {283#true} {283#true} #65#return; {283#true} is VALID [2020-07-29 01:17:50,861 INFO L263 TraceCheckUtils]: 4: Hoare triple {283#true} call #t~ret7 := main(); {283#true} is VALID [2020-07-29 01:17:50,864 INFO L280 TraceCheckUtils]: 5: Hoare triple {283#true} assume -2147483648 <= #t~nondet0 && #t~nondet0 <= 2147483647;~k~0 := #t~nondet0;havoc #t~nondet0;call ~#a~0.base, ~#a~0.offset := #Ultimate.allocOnStack(4192);~i~0 := 0; {288#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:50,865 INFO L280 TraceCheckUtils]: 6: Hoare triple {288#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {288#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:50,867 INFO L280 TraceCheckUtils]: 7: Hoare triple {288#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} SUMMARY for call write~int(#t~nondet2, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); srcloc: L16 {288#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:50,868 INFO L280 TraceCheckUtils]: 8: Hoare triple {288#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} havoc #t~nondet2; {288#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:50,870 INFO L280 TraceCheckUtils]: 9: Hoare triple {288#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} #t~post1 := ~i~0;~i~0 := 1 + #t~post1;havoc #t~post1; {289#(and (<= main_~i~0 1) (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:50,871 INFO L280 TraceCheckUtils]: 10: Hoare triple {289#(and (<= main_~i~0 1) (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {289#(and (<= main_~i~0 1) (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:50,873 INFO L280 TraceCheckUtils]: 11: Hoare triple {289#(and (<= main_~i~0 1) (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} assume !(4 + (~#a~0.offset + 4 * ~i~0) <= #length[~#a~0.base] && 0 <= ~#a~0.offset + 4 * ~i~0); {284#false} is VALID [2020-07-29 01:17:50,874 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:17:50,875 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2020-07-29 01:17:50,875 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 3] total 4 [2020-07-29 01:17:50,875 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2032807809] [2020-07-29 01:17:50,876 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 12 [2020-07-29 01:17:50,877 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:17:50,877 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2020-07-29 01:17:50,899 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:17:50,899 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2020-07-29 01:17:50,899 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-29 01:17:50,900 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2020-07-29 01:17:50,900 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2020-07-29 01:17:50,901 INFO L87 Difference]: Start difference. First operand 26 states and 30 transitions. Second operand 5 states. [2020-07-29 01:17:51,120 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:17:51,120 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2020-07-29 01:17:51,121 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2020-07-29 01:17:51,121 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 12 [2020-07-29 01:17:51,121 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:17:51,121 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-29 01:17:51,124 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 38 transitions. [2020-07-29 01:17:51,124 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-29 01:17:51,126 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 38 transitions. [2020-07-29 01:17:51,127 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 38 transitions. [2020-07-29 01:17:51,184 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:17:51,186 INFO L225 Difference]: With dead ends: 32 [2020-07-29 01:17:51,186 INFO L226 Difference]: Without dead ends: 32 [2020-07-29 01:17:51,186 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 11 SyntacticMatches, 2 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2020-07-29 01:17:51,187 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2020-07-29 01:17:51,190 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 30. [2020-07-29 01:17:51,190 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:17:51,190 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand 30 states. [2020-07-29 01:17:51,190 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand 30 states. [2020-07-29 01:17:51,191 INFO L87 Difference]: Start difference. First operand 32 states. Second operand 30 states. [2020-07-29 01:17:51,193 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:17:51,193 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2020-07-29 01:17:51,193 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 36 transitions. [2020-07-29 01:17:51,194 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:17:51,194 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:17:51,194 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand 32 states. [2020-07-29 01:17:51,194 INFO L87 Difference]: Start difference. First operand 30 states. Second operand 32 states. [2020-07-29 01:17:51,197 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:17:51,197 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2020-07-29 01:17:51,198 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 36 transitions. [2020-07-29 01:17:51,198 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:17:51,198 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:17:51,199 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:17:51,199 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:17:51,199 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2020-07-29 01:17:51,201 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 34 transitions. [2020-07-29 01:17:51,201 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 34 transitions. Word has length 12 [2020-07-29 01:17:51,201 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:17:51,201 INFO L479 AbstractCegarLoop]: Abstraction has 30 states and 34 transitions. [2020-07-29 01:17:51,201 INFO L480 AbstractCegarLoop]: Interpolant automaton has 5 states. [2020-07-29 01:17:51,202 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 34 transitions. [2020-07-29 01:17:51,202 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2020-07-29 01:17:51,202 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:17:51,203 INFO L422 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:17:51,416 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2020-07-29 01:17:51,417 INFO L427 AbstractCegarLoop]: === Iteration 4 === [mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr0REQUIRES_VIOLATION, mainErr6ENSURES_VIOLATIONMEMORY_LEAK, mainErr1REQUIRES_VIOLATION]=== [2020-07-29 01:17:51,417 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:17:51,417 INFO L82 PathProgramCache]: Analyzing trace with hash 2013750285, now seen corresponding path program 2 times [2020-07-29 01:17:51,418 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 01:17:51,418 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1228173422] [2020-07-29 01:17:51,419 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 01:17:51,439 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:17:51,576 INFO L375 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2020-07-29 01:17:51,578 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:17:51,583 INFO L280 TraceCheckUtils]: 0: Hoare triple {461#(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; {452#true} is VALID [2020-07-29 01:17:51,584 INFO L280 TraceCheckUtils]: 1: Hoare triple {452#true} assume true; {452#true} is VALID [2020-07-29 01:17:51,584 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {452#true} {452#true} #65#return; {452#true} is VALID [2020-07-29 01:17:51,585 INFO L263 TraceCheckUtils]: 0: Hoare triple {452#true} call ULTIMATE.init(); {461#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-29 01:17:51,586 INFO L280 TraceCheckUtils]: 1: Hoare triple {461#(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; {452#true} is VALID [2020-07-29 01:17:51,586 INFO L280 TraceCheckUtils]: 2: Hoare triple {452#true} assume true; {452#true} is VALID [2020-07-29 01:17:51,587 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {452#true} {452#true} #65#return; {452#true} is VALID [2020-07-29 01:17:51,587 INFO L263 TraceCheckUtils]: 4: Hoare triple {452#true} call #t~ret7 := main(); {452#true} is VALID [2020-07-29 01:17:51,589 INFO L280 TraceCheckUtils]: 5: Hoare triple {452#true} assume -2147483648 <= #t~nondet0 && #t~nondet0 <= 2147483647;~k~0 := #t~nondet0;havoc #t~nondet0;call ~#a~0.base, ~#a~0.offset := #Ultimate.allocOnStack(4192);~i~0 := 0; {457#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:51,590 INFO L280 TraceCheckUtils]: 6: Hoare triple {457#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {457#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:51,591 INFO L280 TraceCheckUtils]: 7: Hoare triple {457#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} SUMMARY for call write~int(#t~nondet2, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); srcloc: L16 {457#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:51,593 INFO L280 TraceCheckUtils]: 8: Hoare triple {457#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} havoc #t~nondet2; {457#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:51,594 INFO L280 TraceCheckUtils]: 9: Hoare triple {457#(and (= 0 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} #t~post1 := ~i~0;~i~0 := 1 + #t~post1;havoc #t~post1; {458#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:51,595 INFO L280 TraceCheckUtils]: 10: Hoare triple {458#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {458#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:51,596 INFO L280 TraceCheckUtils]: 11: Hoare triple {458#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} SUMMARY for call write~int(#t~nondet2, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); srcloc: L16 {458#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:51,597 INFO L280 TraceCheckUtils]: 12: Hoare triple {458#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} havoc #t~nondet2; {458#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:51,598 INFO L280 TraceCheckUtils]: 13: Hoare triple {458#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} #t~post1 := ~i~0;~i~0 := 1 + #t~post1;havoc #t~post1; {459#(and (<= 2 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:51,600 INFO L280 TraceCheckUtils]: 14: Hoare triple {459#(and (<= 2 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {460#(and (<= 2 main_~i~0) (<= main_~i~0 1047) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:51,601 INFO L280 TraceCheckUtils]: 15: Hoare triple {460#(and (<= 2 main_~i~0) (<= main_~i~0 1047) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} assume !(4 + (~#a~0.offset + 4 * ~i~0) <= #length[~#a~0.base] && 0 <= ~#a~0.offset + 4 * ~i~0); {453#false} is VALID [2020-07-29 01:17:51,603 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:17:51,604 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1228173422] [2020-07-29 01:17:51,604 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [636064152] [2020-07-29 01:17:51,604 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-29 01:17:51,641 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2020-07-29 01:17:51,641 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2020-07-29 01:17:51,642 INFO L263 TraceCheckSpWp]: Trace formula consists of 68 conjuncts, 8 conjunts are in the unsatisfiable core [2020-07-29 01:17:51,650 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:17:51,651 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2020-07-29 01:17:51,669 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:17:51,670 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-29 01:17:51,677 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-29 01:17:51,678 INFO L544 ElimStorePlain]: Start of recursive call 1: 1 dim-1 vars, End of recursive call: and 1 xjuncts. [2020-07-29 01:17:51,678 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 1 variables, input treesize:13, output treesize:12 [2020-07-29 01:17:51,681 WARN L406 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2020-07-29 01:17:51,681 WARN L407 uantifierElimination]: Input elimination task: ∃ [|v_#length_12|]. (and (<= 0 main_~i~0) (= |#length| (store |v_#length_12| |main_~#a~0.base| 4192)) (= 0 |main_~#a~0.offset|)) [2020-07-29 01:17:51,681 WARN L408 uantifierElimination]: ElimStorePlain result: ∃ []. (and (<= 0 main_~i~0) (= 4192 (select |#length| |main_~#a~0.base|)) (= 0 |main_~#a~0.offset|)) [2020-07-29 01:17:51,802 INFO L263 TraceCheckUtils]: 0: Hoare triple {452#true} call ULTIMATE.init(); {452#true} is VALID [2020-07-29 01:17:51,803 INFO L280 TraceCheckUtils]: 1: Hoare triple {452#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {452#true} is VALID [2020-07-29 01:17:51,803 INFO L280 TraceCheckUtils]: 2: Hoare triple {452#true} assume true; {452#true} is VALID [2020-07-29 01:17:51,804 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {452#true} {452#true} #65#return; {452#true} is VALID [2020-07-29 01:17:51,804 INFO L263 TraceCheckUtils]: 4: Hoare triple {452#true} call #t~ret7 := main(); {452#true} is VALID [2020-07-29 01:17:51,805 INFO L280 TraceCheckUtils]: 5: Hoare triple {452#true} assume -2147483648 <= #t~nondet0 && #t~nondet0 <= 2147483647;~k~0 := #t~nondet0;havoc #t~nondet0;call ~#a~0.base, ~#a~0.offset := #Ultimate.allocOnStack(4192);~i~0 := 0; {480#(and (<= 0 main_~i~0) (= 4192 (select |#length| |main_~#a~0.base|)) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:51,807 INFO L280 TraceCheckUtils]: 6: Hoare triple {480#(and (<= 0 main_~i~0) (= 4192 (select |#length| |main_~#a~0.base|)) (= 0 |main_~#a~0.offset|))} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {480#(and (<= 0 main_~i~0) (= 4192 (select |#length| |main_~#a~0.base|)) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:51,814 INFO L280 TraceCheckUtils]: 7: Hoare triple {480#(and (<= 0 main_~i~0) (= 4192 (select |#length| |main_~#a~0.base|)) (= 0 |main_~#a~0.offset|))} SUMMARY for call write~int(#t~nondet2, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); srcloc: L16 {480#(and (<= 0 main_~i~0) (= 4192 (select |#length| |main_~#a~0.base|)) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:51,815 INFO L280 TraceCheckUtils]: 8: Hoare triple {480#(and (<= 0 main_~i~0) (= 4192 (select |#length| |main_~#a~0.base|)) (= 0 |main_~#a~0.offset|))} havoc #t~nondet2; {480#(and (<= 0 main_~i~0) (= 4192 (select |#length| |main_~#a~0.base|)) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:51,816 INFO L280 TraceCheckUtils]: 9: Hoare triple {480#(and (<= 0 main_~i~0) (= 4192 (select |#length| |main_~#a~0.base|)) (= 0 |main_~#a~0.offset|))} #t~post1 := ~i~0;~i~0 := 1 + #t~post1;havoc #t~post1; {458#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:51,817 INFO L280 TraceCheckUtils]: 10: Hoare triple {458#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {458#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:51,818 INFO L280 TraceCheckUtils]: 11: Hoare triple {458#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} SUMMARY for call write~int(#t~nondet2, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); srcloc: L16 {458#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:51,819 INFO L280 TraceCheckUtils]: 12: Hoare triple {458#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} havoc #t~nondet2; {458#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:51,820 INFO L280 TraceCheckUtils]: 13: Hoare triple {458#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= 1 main_~i~0) (= 0 |main_~#a~0.offset|))} #t~post1 := ~i~0;~i~0 := 1 + #t~post1;havoc #t~post1; {459#(and (<= 2 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:51,821 INFO L280 TraceCheckUtils]: 14: Hoare triple {459#(and (<= 2 main_~i~0) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {460#(and (<= 2 main_~i~0) (<= main_~i~0 1047) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:51,823 INFO L280 TraceCheckUtils]: 15: Hoare triple {460#(and (<= 2 main_~i~0) (<= main_~i~0 1047) (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} assume !(4 + (~#a~0.offset + 4 * ~i~0) <= #length[~#a~0.base] && 0 <= ~#a~0.offset + 4 * ~i~0); {453#false} is VALID [2020-07-29 01:17:51,824 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:17:51,825 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2020-07-29 01:17:51,825 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [6] total 7 [2020-07-29 01:17:51,825 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [908102209] [2020-07-29 01:17:51,826 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 16 [2020-07-29 01:17:51,826 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:17:51,826 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2020-07-29 01:17:51,859 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:17:51,859 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2020-07-29 01:17:51,860 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-29 01:17:51,860 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2020-07-29 01:17:51,860 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2020-07-29 01:17:51,860 INFO L87 Difference]: Start difference. First operand 30 states and 34 transitions. Second operand 6 states. [2020-07-29 01:17:52,045 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:17:52,045 INFO L93 Difference]: Finished difference Result 30 states and 34 transitions. [2020-07-29 01:17:52,045 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2020-07-29 01:17:52,045 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 16 [2020-07-29 01:17:52,046 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:17:52,046 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-29 01:17:52,048 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 36 transitions. [2020-07-29 01:17:52,048 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-29 01:17:52,050 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 36 transitions. [2020-07-29 01:17:52,050 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 36 transitions. [2020-07-29 01:17:52,110 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:17:52,112 INFO L225 Difference]: With dead ends: 30 [2020-07-29 01:17:52,113 INFO L226 Difference]: Without dead ends: 30 [2020-07-29 01:17:52,113 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 14 SyntacticMatches, 2 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2020-07-29 01:17:52,114 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states. [2020-07-29 01:17:52,116 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 27. [2020-07-29 01:17:52,116 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:17:52,117 INFO L82 GeneralOperation]: Start isEquivalent. First operand 30 states. Second operand 27 states. [2020-07-29 01:17:52,117 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand 27 states. [2020-07-29 01:17:52,117 INFO L87 Difference]: Start difference. First operand 30 states. Second operand 27 states. [2020-07-29 01:17:52,119 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:17:52,119 INFO L93 Difference]: Finished difference Result 30 states and 34 transitions. [2020-07-29 01:17:52,120 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 34 transitions. [2020-07-29 01:17:52,120 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:17:52,121 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:17:52,121 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand 30 states. [2020-07-29 01:17:52,121 INFO L87 Difference]: Start difference. First operand 27 states. Second operand 30 states. [2020-07-29 01:17:52,123 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:17:52,123 INFO L93 Difference]: Finished difference Result 30 states and 34 transitions. [2020-07-29 01:17:52,123 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 34 transitions. [2020-07-29 01:17:52,124 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:17:52,143 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:17:52,143 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:17:52,144 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:17:52,144 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 27 states. [2020-07-29 01:17:52,147 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 31 transitions. [2020-07-29 01:17:52,148 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 31 transitions. Word has length 16 [2020-07-29 01:17:52,148 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:17:52,148 INFO L479 AbstractCegarLoop]: Abstraction has 27 states and 31 transitions. [2020-07-29 01:17:52,148 INFO L480 AbstractCegarLoop]: Interpolant automaton has 6 states. [2020-07-29 01:17:52,148 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2020-07-29 01:17:52,149 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2020-07-29 01:17:52,149 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:17:52,149 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:17:52,362 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,3 z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-29 01:17:52,363 INFO L427 AbstractCegarLoop]: === Iteration 5 === [mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr0REQUIRES_VIOLATION, mainErr6ENSURES_VIOLATIONMEMORY_LEAK, mainErr1REQUIRES_VIOLATION]=== [2020-07-29 01:17:52,366 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:17:52,366 INFO L82 PathProgramCache]: Analyzing trace with hash -1816242916, now seen corresponding path program 1 times [2020-07-29 01:17:52,367 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 01:17:52,367 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [302543037] [2020-07-29 01:17:52,367 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 01:17:52,388 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:17:52,454 INFO L375 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2020-07-29 01:17:52,456 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:17:52,473 INFO L280 TraceCheckUtils]: 0: Hoare triple {635#(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; {627#true} is VALID [2020-07-29 01:17:52,473 INFO L280 TraceCheckUtils]: 1: Hoare triple {627#true} assume true; {627#true} is VALID [2020-07-29 01:17:52,474 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {627#true} {627#true} #65#return; {627#true} is VALID [2020-07-29 01:17:52,476 INFO L263 TraceCheckUtils]: 0: Hoare triple {627#true} call ULTIMATE.init(); {635#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-29 01:17:52,477 INFO L280 TraceCheckUtils]: 1: Hoare triple {635#(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; {627#true} is VALID [2020-07-29 01:17:52,477 INFO L280 TraceCheckUtils]: 2: Hoare triple {627#true} assume true; {627#true} is VALID [2020-07-29 01:17:52,477 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {627#true} {627#true} #65#return; {627#true} is VALID [2020-07-29 01:17:52,477 INFO L263 TraceCheckUtils]: 4: Hoare triple {627#true} call #t~ret7 := main(); {627#true} is VALID [2020-07-29 01:17:52,480 INFO L280 TraceCheckUtils]: 5: Hoare triple {627#true} assume -2147483648 <= #t~nondet0 && #t~nondet0 <= 2147483647;~k~0 := #t~nondet0;havoc #t~nondet0;call ~#a~0.base, ~#a~0.offset := #Ultimate.allocOnStack(4192);~i~0 := 0; {632#(= 0 main_~i~0)} is VALID [2020-07-29 01:17:52,484 INFO L280 TraceCheckUtils]: 6: Hoare triple {632#(= 0 main_~i~0)} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {632#(= 0 main_~i~0)} is VALID [2020-07-29 01:17:52,484 INFO L280 TraceCheckUtils]: 7: Hoare triple {632#(= 0 main_~i~0)} SUMMARY for call write~int(#t~nondet2, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); srcloc: L16 {632#(= 0 main_~i~0)} is VALID [2020-07-29 01:17:52,485 INFO L280 TraceCheckUtils]: 8: Hoare triple {632#(= 0 main_~i~0)} havoc #t~nondet2; {632#(= 0 main_~i~0)} is VALID [2020-07-29 01:17:52,486 INFO L280 TraceCheckUtils]: 9: Hoare triple {632#(= 0 main_~i~0)} #t~post1 := ~i~0;~i~0 := 1 + #t~post1;havoc #t~post1; {633#(<= main_~i~0 1)} is VALID [2020-07-29 01:17:52,487 INFO L280 TraceCheckUtils]: 10: Hoare triple {633#(<= main_~i~0 1)} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {633#(<= main_~i~0 1)} is VALID [2020-07-29 01:17:52,488 INFO L280 TraceCheckUtils]: 11: Hoare triple {633#(<= main_~i~0 1)} SUMMARY for call write~int(#t~nondet2, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); srcloc: L16 {633#(<= main_~i~0 1)} is VALID [2020-07-29 01:17:52,488 INFO L280 TraceCheckUtils]: 12: Hoare triple {633#(<= main_~i~0 1)} havoc #t~nondet2; {633#(<= main_~i~0 1)} is VALID [2020-07-29 01:17:52,489 INFO L280 TraceCheckUtils]: 13: Hoare triple {633#(<= main_~i~0 1)} #t~post1 := ~i~0;~i~0 := 1 + #t~post1;havoc #t~post1; {634#(<= main_~i~0 2)} is VALID [2020-07-29 01:17:52,490 INFO L280 TraceCheckUtils]: 14: Hoare triple {634#(<= main_~i~0 2)} assume !(~i~0 < 1048); {628#false} is VALID [2020-07-29 01:17:52,490 INFO L280 TraceCheckUtils]: 15: Hoare triple {628#false} assume !(~k~0 >= 0 && ~k~0 < 1048); {628#false} is VALID [2020-07-29 01:17:52,491 INFO L280 TraceCheckUtils]: 16: Hoare triple {628#false} #res := 0;call ULTIMATE.dealloc(~#a~0.base, ~#a~0.offset);havoc ~#a~0.base, ~#a~0.offset; {628#false} is VALID [2020-07-29 01:17:52,491 INFO L280 TraceCheckUtils]: 17: Hoare triple {628#false} assume !(#valid == old(#valid)); {628#false} is VALID [2020-07-29 01:17:52,492 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:17:52,492 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [302543037] [2020-07-29 01:17:52,493 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1647360408] [2020-07-29 01:17:52,493 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-29 01:17:52,537 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:17:52,538 INFO L263 TraceCheckSpWp]: Trace formula consists of 70 conjuncts, 4 conjunts are in the unsatisfiable core [2020-07-29 01:17:52,546 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:17:52,547 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2020-07-29 01:17:52,701 INFO L263 TraceCheckUtils]: 0: Hoare triple {627#true} call ULTIMATE.init(); {627#true} is VALID [2020-07-29 01:17:52,701 INFO L280 TraceCheckUtils]: 1: Hoare triple {627#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {627#true} is VALID [2020-07-29 01:17:52,702 INFO L280 TraceCheckUtils]: 2: Hoare triple {627#true} assume true; {627#true} is VALID [2020-07-29 01:17:52,702 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {627#true} {627#true} #65#return; {627#true} is VALID [2020-07-29 01:17:52,702 INFO L263 TraceCheckUtils]: 4: Hoare triple {627#true} call #t~ret7 := main(); {627#true} is VALID [2020-07-29 01:17:52,703 INFO L280 TraceCheckUtils]: 5: Hoare triple {627#true} assume -2147483648 <= #t~nondet0 && #t~nondet0 <= 2147483647;~k~0 := #t~nondet0;havoc #t~nondet0;call ~#a~0.base, ~#a~0.offset := #Ultimate.allocOnStack(4192);~i~0 := 0; {654#(<= main_~i~0 0)} is VALID [2020-07-29 01:17:52,704 INFO L280 TraceCheckUtils]: 6: Hoare triple {654#(<= main_~i~0 0)} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {654#(<= main_~i~0 0)} is VALID [2020-07-29 01:17:52,705 INFO L280 TraceCheckUtils]: 7: Hoare triple {654#(<= main_~i~0 0)} SUMMARY for call write~int(#t~nondet2, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); srcloc: L16 {654#(<= main_~i~0 0)} is VALID [2020-07-29 01:17:52,706 INFO L280 TraceCheckUtils]: 8: Hoare triple {654#(<= main_~i~0 0)} havoc #t~nondet2; {654#(<= main_~i~0 0)} is VALID [2020-07-29 01:17:52,707 INFO L280 TraceCheckUtils]: 9: Hoare triple {654#(<= main_~i~0 0)} #t~post1 := ~i~0;~i~0 := 1 + #t~post1;havoc #t~post1; {633#(<= main_~i~0 1)} is VALID [2020-07-29 01:17:52,708 INFO L280 TraceCheckUtils]: 10: Hoare triple {633#(<= main_~i~0 1)} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {633#(<= main_~i~0 1)} is VALID [2020-07-29 01:17:52,710 INFO L280 TraceCheckUtils]: 11: Hoare triple {633#(<= main_~i~0 1)} SUMMARY for call write~int(#t~nondet2, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); srcloc: L16 {633#(<= main_~i~0 1)} is VALID [2020-07-29 01:17:52,711 INFO L280 TraceCheckUtils]: 12: Hoare triple {633#(<= main_~i~0 1)} havoc #t~nondet2; {633#(<= main_~i~0 1)} is VALID [2020-07-29 01:17:52,712 INFO L280 TraceCheckUtils]: 13: Hoare triple {633#(<= main_~i~0 1)} #t~post1 := ~i~0;~i~0 := 1 + #t~post1;havoc #t~post1; {634#(<= main_~i~0 2)} is VALID [2020-07-29 01:17:52,713 INFO L280 TraceCheckUtils]: 14: Hoare triple {634#(<= main_~i~0 2)} assume !(~i~0 < 1048); {628#false} is VALID [2020-07-29 01:17:52,715 INFO L280 TraceCheckUtils]: 15: Hoare triple {628#false} assume !(~k~0 >= 0 && ~k~0 < 1048); {628#false} is VALID [2020-07-29 01:17:52,716 INFO L280 TraceCheckUtils]: 16: Hoare triple {628#false} #res := 0;call ULTIMATE.dealloc(~#a~0.base, ~#a~0.offset);havoc ~#a~0.base, ~#a~0.offset; {628#false} is VALID [2020-07-29 01:17:52,716 INFO L280 TraceCheckUtils]: 17: Hoare triple {628#false} assume !(#valid == old(#valid)); {628#false} is VALID [2020-07-29 01:17:52,717 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:17:52,717 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2020-07-29 01:17:52,717 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 5] total 7 [2020-07-29 01:17:52,718 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2056487043] [2020-07-29 01:17:52,718 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 18 [2020-07-29 01:17:52,721 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:17:52,721 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states. [2020-07-29 01:17:52,783 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:17:52,783 INFO L459 AbstractCegarLoop]: Interpolant automaton has 7 states [2020-07-29 01:17:52,783 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-29 01:17:52,784 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2020-07-29 01:17:52,784 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2020-07-29 01:17:52,784 INFO L87 Difference]: Start difference. First operand 27 states and 31 transitions. Second operand 7 states. [2020-07-29 01:17:52,959 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:17:52,959 INFO L93 Difference]: Finished difference Result 34 states and 38 transitions. [2020-07-29 01:17:52,959 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2020-07-29 01:17:52,959 INFO L78 Accepts]: Start accepts. Automaton has 7 states. Word has length 18 [2020-07-29 01:17:52,960 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:17:52,960 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2020-07-29 01:17:52,961 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 39 transitions. [2020-07-29 01:17:52,962 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2020-07-29 01:17:52,963 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 39 transitions. [2020-07-29 01:17:52,963 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 39 transitions. [2020-07-29 01:17:53,022 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:17:53,023 INFO L225 Difference]: With dead ends: 34 [2020-07-29 01:17:53,023 INFO L226 Difference]: Without dead ends: 34 [2020-07-29 01:17:53,024 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 24 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2020-07-29 01:17:53,024 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2020-07-29 01:17:53,027 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 31. [2020-07-29 01:17:53,028 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:17:53,028 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand 31 states. [2020-07-29 01:17:53,028 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand 31 states. [2020-07-29 01:17:53,028 INFO L87 Difference]: Start difference. First operand 34 states. Second operand 31 states. [2020-07-29 01:17:53,030 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:17:53,030 INFO L93 Difference]: Finished difference Result 34 states and 38 transitions. [2020-07-29 01:17:53,031 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2020-07-29 01:17:53,031 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:17:53,031 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:17:53,032 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand 34 states. [2020-07-29 01:17:53,032 INFO L87 Difference]: Start difference. First operand 31 states. Second operand 34 states. [2020-07-29 01:17:53,034 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:17:53,034 INFO L93 Difference]: Finished difference Result 34 states and 38 transitions. [2020-07-29 01:17:53,034 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2020-07-29 01:17:53,035 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:17:53,035 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:17:53,035 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:17:53,035 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:17:53,035 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 31 states. [2020-07-29 01:17:53,037 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 35 transitions. [2020-07-29 01:17:53,037 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 35 transitions. Word has length 18 [2020-07-29 01:17:53,037 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:17:53,038 INFO L479 AbstractCegarLoop]: Abstraction has 31 states and 35 transitions. [2020-07-29 01:17:53,038 INFO L480 AbstractCegarLoop]: Interpolant automaton has 7 states. [2020-07-29 01:17:53,038 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 35 transitions. [2020-07-29 01:17:53,039 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2020-07-29 01:17:53,039 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:17:53,039 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:17:53,252 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,4 z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-29 01:17:53,253 INFO L427 AbstractCegarLoop]: === Iteration 6 === [mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr0REQUIRES_VIOLATION, mainErr6ENSURES_VIOLATIONMEMORY_LEAK, mainErr1REQUIRES_VIOLATION]=== [2020-07-29 01:17:53,254 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:17:53,254 INFO L82 PathProgramCache]: Analyzing trace with hash 1776612895, now seen corresponding path program 2 times [2020-07-29 01:17:53,255 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 01:17:53,256 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [102751098] [2020-07-29 01:17:53,256 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 01:17:53,283 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:17:53,346 INFO L375 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2020-07-29 01:17:53,348 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:17:53,352 INFO L280 TraceCheckUtils]: 0: Hoare triple {832#(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; {823#true} is VALID [2020-07-29 01:17:53,352 INFO L280 TraceCheckUtils]: 1: Hoare triple {823#true} assume true; {823#true} is VALID [2020-07-29 01:17:53,352 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {823#true} {823#true} #65#return; {823#true} is VALID [2020-07-29 01:17:53,354 INFO L263 TraceCheckUtils]: 0: Hoare triple {823#true} call ULTIMATE.init(); {832#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-29 01:17:53,354 INFO L280 TraceCheckUtils]: 1: Hoare triple {832#(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; {823#true} is VALID [2020-07-29 01:17:53,354 INFO L280 TraceCheckUtils]: 2: Hoare triple {823#true} assume true; {823#true} is VALID [2020-07-29 01:17:53,355 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {823#true} {823#true} #65#return; {823#true} is VALID [2020-07-29 01:17:53,355 INFO L263 TraceCheckUtils]: 4: Hoare triple {823#true} call #t~ret7 := main(); {823#true} is VALID [2020-07-29 01:17:53,357 INFO L280 TraceCheckUtils]: 5: Hoare triple {823#true} assume -2147483648 <= #t~nondet0 && #t~nondet0 <= 2147483647;~k~0 := #t~nondet0;havoc #t~nondet0;call ~#a~0.base, ~#a~0.offset := #Ultimate.allocOnStack(4192);~i~0 := 0; {828#(= 0 main_~i~0)} is VALID [2020-07-29 01:17:53,358 INFO L280 TraceCheckUtils]: 6: Hoare triple {828#(= 0 main_~i~0)} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {828#(= 0 main_~i~0)} is VALID [2020-07-29 01:17:53,361 INFO L280 TraceCheckUtils]: 7: Hoare triple {828#(= 0 main_~i~0)} SUMMARY for call write~int(#t~nondet2, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); srcloc: L16 {828#(= 0 main_~i~0)} is VALID [2020-07-29 01:17:53,363 INFO L280 TraceCheckUtils]: 8: Hoare triple {828#(= 0 main_~i~0)} havoc #t~nondet2; {828#(= 0 main_~i~0)} is VALID [2020-07-29 01:17:53,364 INFO L280 TraceCheckUtils]: 9: Hoare triple {828#(= 0 main_~i~0)} #t~post1 := ~i~0;~i~0 := 1 + #t~post1;havoc #t~post1; {829#(<= main_~i~0 1)} is VALID [2020-07-29 01:17:53,365 INFO L280 TraceCheckUtils]: 10: Hoare triple {829#(<= main_~i~0 1)} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {829#(<= main_~i~0 1)} is VALID [2020-07-29 01:17:53,366 INFO L280 TraceCheckUtils]: 11: Hoare triple {829#(<= main_~i~0 1)} SUMMARY for call write~int(#t~nondet2, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); srcloc: L16 {829#(<= main_~i~0 1)} is VALID [2020-07-29 01:17:53,367 INFO L280 TraceCheckUtils]: 12: Hoare triple {829#(<= main_~i~0 1)} havoc #t~nondet2; {829#(<= main_~i~0 1)} is VALID [2020-07-29 01:17:53,368 INFO L280 TraceCheckUtils]: 13: Hoare triple {829#(<= main_~i~0 1)} #t~post1 := ~i~0;~i~0 := 1 + #t~post1;havoc #t~post1; {830#(<= main_~i~0 2)} is VALID [2020-07-29 01:17:53,368 INFO L280 TraceCheckUtils]: 14: Hoare triple {830#(<= main_~i~0 2)} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {830#(<= main_~i~0 2)} is VALID [2020-07-29 01:17:53,369 INFO L280 TraceCheckUtils]: 15: Hoare triple {830#(<= main_~i~0 2)} SUMMARY for call write~int(#t~nondet2, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); srcloc: L16 {830#(<= main_~i~0 2)} is VALID [2020-07-29 01:17:53,370 INFO L280 TraceCheckUtils]: 16: Hoare triple {830#(<= main_~i~0 2)} havoc #t~nondet2; {830#(<= main_~i~0 2)} is VALID [2020-07-29 01:17:53,371 INFO L280 TraceCheckUtils]: 17: Hoare triple {830#(<= main_~i~0 2)} #t~post1 := ~i~0;~i~0 := 1 + #t~post1;havoc #t~post1; {831#(<= main_~i~0 3)} is VALID [2020-07-29 01:17:53,372 INFO L280 TraceCheckUtils]: 18: Hoare triple {831#(<= main_~i~0 3)} assume !(~i~0 < 1048); {824#false} is VALID [2020-07-29 01:17:53,372 INFO L280 TraceCheckUtils]: 19: Hoare triple {824#false} assume !(~k~0 >= 0 && ~k~0 < 1048); {824#false} is VALID [2020-07-29 01:17:53,372 INFO L280 TraceCheckUtils]: 20: Hoare triple {824#false} #res := 0;call ULTIMATE.dealloc(~#a~0.base, ~#a~0.offset);havoc ~#a~0.base, ~#a~0.offset; {824#false} is VALID [2020-07-29 01:17:53,373 INFO L280 TraceCheckUtils]: 21: Hoare triple {824#false} assume !(#valid == old(#valid)); {824#false} is VALID [2020-07-29 01:17:53,374 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 0 proven. 15 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-29 01:17:53,374 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [102751098] [2020-07-29 01:17:53,374 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [541281538] [2020-07-29 01:17:53,375 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 5 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 5 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-29 01:17:53,406 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2020-07-29 01:17:53,407 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2020-07-29 01:17:53,407 INFO L263 TraceCheckSpWp]: Trace formula consists of 48 conjuncts, 6 conjunts are in the unsatisfiable core [2020-07-29 01:17:53,414 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:17:53,416 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2020-07-29 01:17:53,527 INFO L263 TraceCheckUtils]: 0: Hoare triple {823#true} call ULTIMATE.init(); {823#true} is VALID [2020-07-29 01:17:53,528 INFO L280 TraceCheckUtils]: 1: Hoare triple {823#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {823#true} is VALID [2020-07-29 01:17:53,528 INFO L280 TraceCheckUtils]: 2: Hoare triple {823#true} assume true; {823#true} is VALID [2020-07-29 01:17:53,528 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {823#true} {823#true} #65#return; {823#true} is VALID [2020-07-29 01:17:53,529 INFO L263 TraceCheckUtils]: 4: Hoare triple {823#true} call #t~ret7 := main(); {848#(= |#valid| |old(#valid)|)} is VALID [2020-07-29 01:17:53,531 INFO L280 TraceCheckUtils]: 5: Hoare triple {848#(= |#valid| |old(#valid)|)} assume -2147483648 <= #t~nondet0 && #t~nondet0 <= 2147483647;~k~0 := #t~nondet0;havoc #t~nondet0;call ~#a~0.base, ~#a~0.offset := #Ultimate.allocOnStack(4192);~i~0 := 0; {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} is VALID [2020-07-29 01:17:53,532 INFO L280 TraceCheckUtils]: 6: Hoare triple {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} is VALID [2020-07-29 01:17:53,534 INFO L280 TraceCheckUtils]: 7: Hoare triple {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} SUMMARY for call write~int(#t~nondet2, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); srcloc: L16 {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} is VALID [2020-07-29 01:17:53,534 INFO L280 TraceCheckUtils]: 8: Hoare triple {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} havoc #t~nondet2; {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} is VALID [2020-07-29 01:17:53,535 INFO L280 TraceCheckUtils]: 9: Hoare triple {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} #t~post1 := ~i~0;~i~0 := 1 + #t~post1;havoc #t~post1; {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} is VALID [2020-07-29 01:17:53,536 INFO L280 TraceCheckUtils]: 10: Hoare triple {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} is VALID [2020-07-29 01:17:53,537 INFO L280 TraceCheckUtils]: 11: Hoare triple {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} SUMMARY for call write~int(#t~nondet2, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); srcloc: L16 {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} is VALID [2020-07-29 01:17:53,538 INFO L280 TraceCheckUtils]: 12: Hoare triple {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} havoc #t~nondet2; {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} is VALID [2020-07-29 01:17:53,538 INFO L280 TraceCheckUtils]: 13: Hoare triple {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} #t~post1 := ~i~0;~i~0 := 1 + #t~post1;havoc #t~post1; {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} is VALID [2020-07-29 01:17:53,539 INFO L280 TraceCheckUtils]: 14: Hoare triple {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} is VALID [2020-07-29 01:17:53,540 INFO L280 TraceCheckUtils]: 15: Hoare triple {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} SUMMARY for call write~int(#t~nondet2, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); srcloc: L16 {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} is VALID [2020-07-29 01:17:53,541 INFO L280 TraceCheckUtils]: 16: Hoare triple {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} havoc #t~nondet2; {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} is VALID [2020-07-29 01:17:53,542 INFO L280 TraceCheckUtils]: 17: Hoare triple {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} #t~post1 := ~i~0;~i~0 := 1 + #t~post1;havoc #t~post1; {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} is VALID [2020-07-29 01:17:53,543 INFO L280 TraceCheckUtils]: 18: Hoare triple {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} assume !(~i~0 < 1048); {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} is VALID [2020-07-29 01:17:53,543 INFO L280 TraceCheckUtils]: 19: Hoare triple {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} assume !(~k~0 >= 0 && ~k~0 < 1048); {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} is VALID [2020-07-29 01:17:53,545 INFO L280 TraceCheckUtils]: 20: Hoare triple {852#(and (= 0 (select |old(#valid)| |main_~#a~0.base|)) (= |#valid| (store |old(#valid)| |main_~#a~0.base| 1)))} #res := 0;call ULTIMATE.dealloc(~#a~0.base, ~#a~0.offset);havoc ~#a~0.base, ~#a~0.offset; {898#(exists ((|v_main_~#a~0.base_13| Int)) (and (= 0 (select |old(#valid)| |v_main_~#a~0.base_13|)) (= |#valid| (store |old(#valid)| |v_main_~#a~0.base_13| 0))))} is VALID [2020-07-29 01:17:53,546 INFO L280 TraceCheckUtils]: 21: Hoare triple {898#(exists ((|v_main_~#a~0.base_13| Int)) (and (= 0 (select |old(#valid)| |v_main_~#a~0.base_13|)) (= |#valid| (store |old(#valid)| |v_main_~#a~0.base_13| 0))))} assume !(#valid == old(#valid)); {824#false} is VALID [2020-07-29 01:17:53,548 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2020-07-29 01:17:53,549 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2020-07-29 01:17:53,549 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [7] total 10 [2020-07-29 01:17:53,550 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1724408500] [2020-07-29 01:17:53,550 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 22 [2020-07-29 01:17:53,551 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:17:53,551 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2020-07-29 01:17:53,569 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:17:53,569 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2020-07-29 01:17:53,569 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-29 01:17:53,570 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2020-07-29 01:17:53,570 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=65, Unknown=0, NotChecked=0, Total=90 [2020-07-29 01:17:53,570 INFO L87 Difference]: Start difference. First operand 31 states and 35 transitions. Second operand 5 states. [2020-07-29 01:17:53,657 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:17:53,657 INFO L93 Difference]: Finished difference Result 30 states and 34 transitions. [2020-07-29 01:17:53,657 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2020-07-29 01:17:53,658 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 22 [2020-07-29 01:17:53,658 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:17:53,658 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-29 01:17:53,659 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 26 transitions. [2020-07-29 01:17:53,659 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-29 01:17:53,660 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 26 transitions. [2020-07-29 01:17:53,660 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 26 transitions. [2020-07-29 01:17:53,702 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-29 01:17:53,703 INFO L225 Difference]: With dead ends: 30 [2020-07-29 01:17:53,703 INFO L226 Difference]: Without dead ends: 25 [2020-07-29 01:17:53,704 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 29 GetRequests, 21 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=25, Invalid=65, Unknown=0, NotChecked=0, Total=90 [2020-07-29 01:17:53,705 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 25 states. [2020-07-29 01:17:53,707 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 25 to 25. [2020-07-29 01:17:53,707 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:17:53,708 INFO L82 GeneralOperation]: Start isEquivalent. First operand 25 states. Second operand 25 states. [2020-07-29 01:17:53,708 INFO L74 IsIncluded]: Start isIncluded. First operand 25 states. Second operand 25 states. [2020-07-29 01:17:53,708 INFO L87 Difference]: Start difference. First operand 25 states. Second operand 25 states. [2020-07-29 01:17:53,709 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:17:53,709 INFO L93 Difference]: Finished difference Result 25 states and 25 transitions. [2020-07-29 01:17:53,710 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 25 transitions. [2020-07-29 01:17:53,710 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:17:53,710 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:17:53,710 INFO L74 IsIncluded]: Start isIncluded. First operand 25 states. Second operand 25 states. [2020-07-29 01:17:53,710 INFO L87 Difference]: Start difference. First operand 25 states. Second operand 25 states. [2020-07-29 01:17:53,712 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:17:53,712 INFO L93 Difference]: Finished difference Result 25 states and 25 transitions. [2020-07-29 01:17:53,712 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 25 transitions. [2020-07-29 01:17:53,712 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:17:53,713 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:17:53,713 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:17:53,713 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:17:53,713 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 25 states. [2020-07-29 01:17:53,714 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 25 transitions. [2020-07-29 01:17:53,714 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 25 transitions. Word has length 22 [2020-07-29 01:17:53,714 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:17:53,714 INFO L479 AbstractCegarLoop]: Abstraction has 25 states and 25 transitions. [2020-07-29 01:17:53,714 INFO L480 AbstractCegarLoop]: Interpolant automaton has 5 states. [2020-07-29 01:17:53,715 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 25 transitions. [2020-07-29 01:17:53,715 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2020-07-29 01:17:53,715 INFO L414 BasicCegarLoop]: Found error trace [2020-07-29 01:17:53,715 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-29 01:17:53,928 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,5 z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-29 01:17:53,929 INFO L427 AbstractCegarLoop]: === Iteration 7 === [mainErr2REQUIRES_VIOLATION, mainErr3REQUIRES_VIOLATION, mainErr4REQUIRES_VIOLATION, mainErr5REQUIRES_VIOLATION, mainErr0REQUIRES_VIOLATION, mainErr6ENSURES_VIOLATIONMEMORY_LEAK, mainErr1REQUIRES_VIOLATION]=== [2020-07-29 01:17:53,930 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-29 01:17:53,930 INFO L82 PathProgramCache]: Analyzing trace with hash -2104465759, now seen corresponding path program 1 times [2020-07-29 01:17:53,930 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-29 01:17:53,931 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [162378065] [2020-07-29 01:17:53,931 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-29 01:17:53,948 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:17:54,038 INFO L375 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2020-07-29 01:17:54,040 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-29 01:17:54,046 INFO L280 TraceCheckUtils]: 0: Hoare triple {1013#(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; {1006#true} is VALID [2020-07-29 01:17:54,046 INFO L280 TraceCheckUtils]: 1: Hoare triple {1006#true} assume true; {1006#true} is VALID [2020-07-29 01:17:54,046 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {1006#true} {1006#true} #65#return; {1006#true} is VALID [2020-07-29 01:17:54,047 INFO L263 TraceCheckUtils]: 0: Hoare triple {1006#true} call ULTIMATE.init(); {1013#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-29 01:17:54,048 INFO L280 TraceCheckUtils]: 1: Hoare triple {1013#(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; {1006#true} is VALID [2020-07-29 01:17:54,048 INFO L280 TraceCheckUtils]: 2: Hoare triple {1006#true} assume true; {1006#true} is VALID [2020-07-29 01:17:54,048 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {1006#true} {1006#true} #65#return; {1006#true} is VALID [2020-07-29 01:17:54,048 INFO L263 TraceCheckUtils]: 4: Hoare triple {1006#true} call #t~ret7 := main(); {1006#true} is VALID [2020-07-29 01:17:54,049 INFO L280 TraceCheckUtils]: 5: Hoare triple {1006#true} assume -2147483648 <= #t~nondet0 && #t~nondet0 <= 2147483647;~k~0 := #t~nondet0;havoc #t~nondet0;call ~#a~0.base, ~#a~0.offset := #Ultimate.allocOnStack(4192);~i~0 := 0; {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:54,051 INFO L280 TraceCheckUtils]: 6: Hoare triple {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:54,053 INFO L280 TraceCheckUtils]: 7: Hoare triple {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} SUMMARY for call write~int(#t~nondet2, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); srcloc: L16 {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:54,054 INFO L280 TraceCheckUtils]: 8: Hoare triple {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} havoc #t~nondet2; {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:54,055 INFO L280 TraceCheckUtils]: 9: Hoare triple {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} #t~post1 := ~i~0;~i~0 := 1 + #t~post1;havoc #t~post1; {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:54,056 INFO L280 TraceCheckUtils]: 10: Hoare triple {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:54,057 INFO L280 TraceCheckUtils]: 11: Hoare triple {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} SUMMARY for call write~int(#t~nondet2, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); srcloc: L16 {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:54,058 INFO L280 TraceCheckUtils]: 12: Hoare triple {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} havoc #t~nondet2; {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:54,058 INFO L280 TraceCheckUtils]: 13: Hoare triple {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} #t~post1 := ~i~0;~i~0 := 1 + #t~post1;havoc #t~post1; {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:54,059 INFO L280 TraceCheckUtils]: 14: Hoare triple {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} assume !!(~i~0 < 1048);assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647; {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:54,060 INFO L280 TraceCheckUtils]: 15: Hoare triple {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} SUMMARY for call write~int(#t~nondet2, ~#a~0.base, ~#a~0.offset + 4 * ~i~0, 4); srcloc: L16 {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:54,060 INFO L280 TraceCheckUtils]: 16: Hoare triple {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} havoc #t~nondet2; {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:54,061 INFO L280 TraceCheckUtils]: 17: Hoare triple {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} #t~post1 := ~i~0;~i~0 := 1 + #t~post1;havoc #t~post1; {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:54,062 INFO L280 TraceCheckUtils]: 18: Hoare triple {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} assume !(~i~0 < 1048); {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:54,063 INFO L280 TraceCheckUtils]: 19: Hoare triple {1011#(and (= (select |#length| |main_~#a~0.base|) 4192) (= 0 |main_~#a~0.offset|))} assume ~k~0 >= 0 && ~k~0 < 1048; {1012#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= main_~k~0 1047) (<= 0 main_~k~0) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:54,064 INFO L280 TraceCheckUtils]: 20: Hoare triple {1012#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= main_~k~0 1047) (<= 0 main_~k~0) (= 0 |main_~#a~0.offset|))} SUMMARY for call #t~mem3 := read~int(~#a~0.base, ~#a~0.offset, 4); srcloc: L20 {1012#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= main_~k~0 1047) (<= 0 main_~k~0) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:54,065 INFO L280 TraceCheckUtils]: 21: Hoare triple {1012#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= main_~k~0 1047) (<= 0 main_~k~0) (= 0 |main_~#a~0.offset|))} #t~short5 := 23 == #t~mem3; {1012#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= main_~k~0 1047) (<= 0 main_~k~0) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:54,066 INFO L280 TraceCheckUtils]: 22: Hoare triple {1012#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= main_~k~0 1047) (<= 0 main_~k~0) (= 0 |main_~#a~0.offset|))} assume #t~short5; {1012#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= main_~k~0 1047) (<= 0 main_~k~0) (= 0 |main_~#a~0.offset|))} is VALID [2020-07-29 01:17:54,067 INFO L280 TraceCheckUtils]: 23: Hoare triple {1012#(and (= (select |#length| |main_~#a~0.base|) 4192) (<= main_~k~0 1047) (<= 0 main_~k~0) (= 0 |main_~#a~0.offset|))} assume !(4 + (~#a~0.offset + 4 * ~k~0) <= #length[~#a~0.base] && 0 <= ~#a~0.offset + 4 * ~k~0); {1007#false} is VALID [2020-07-29 01:17:54,070 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2020-07-29 01:17:54,070 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [162378065] [2020-07-29 01:17:54,070 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-29 01:17:54,070 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2020-07-29 01:17:54,071 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1022507979] [2020-07-29 01:17:54,071 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 24 [2020-07-29 01:17:54,071 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-29 01:17:54,071 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2020-07-29 01:17:54,098 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:17:54,098 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2020-07-29 01:17:54,098 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-29 01:17:54,099 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2020-07-29 01:17:54,099 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2020-07-29 01:17:54,099 INFO L87 Difference]: Start difference. First operand 25 states and 25 transitions. Second operand 5 states. [2020-07-29 01:17:54,160 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:17:54,160 INFO L93 Difference]: Finished difference Result 24 states and 24 transitions. [2020-07-29 01:17:54,160 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2020-07-29 01:17:54,160 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 24 [2020-07-29 01:17:54,161 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-29 01:17:54,161 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-29 01:17:54,162 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 16 transitions. [2020-07-29 01:17:54,162 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-29 01:17:54,163 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 16 transitions. [2020-07-29 01:17:54,163 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 16 transitions. [2020-07-29 01:17:54,186 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:17:54,187 INFO L225 Difference]: With dead ends: 24 [2020-07-29 01:17:54,187 INFO L226 Difference]: Without dead ends: 0 [2020-07-29 01:17:54,187 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2020-07-29 01:17:54,187 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2020-07-29 01:17:54,187 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2020-07-29 01:17:54,188 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-29 01:17:54,188 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand 0 states. [2020-07-29 01:17:54,188 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand 0 states. [2020-07-29 01:17:54,188 INFO L87 Difference]: Start difference. First operand 0 states. Second operand 0 states. [2020-07-29 01:17:54,188 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:17:54,188 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2020-07-29 01:17:54,188 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2020-07-29 01:17:54,189 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:17:54,189 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:17:54,189 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand 0 states. [2020-07-29 01:17:54,189 INFO L87 Difference]: Start difference. First operand 0 states. Second operand 0 states. [2020-07-29 01:17:54,189 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-29 01:17:54,189 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2020-07-29 01:17:54,189 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2020-07-29 01:17:54,189 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:17:54,190 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-29 01:17:54,190 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-29 01:17:54,190 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-29 01:17:54,190 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 0 states. [2020-07-29 01:17:54,190 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2020-07-29 01:17:54,190 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 24 [2020-07-29 01:17:54,190 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-29 01:17:54,191 INFO L479 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2020-07-29 01:17:54,191 INFO L480 AbstractCegarLoop]: Interpolant automaton has 5 states. [2020-07-29 01:17:54,191 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2020-07-29 01:17:54,191 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-29 01:17:54,191 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2020-07-29 01:17:54,196 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 29.07 01:17:54 BoogieIcfgContainer [2020-07-29 01:17:54,196 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2020-07-29 01:17:54,199 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2020-07-29 01:17:54,199 INFO L271 PluginConnector]: Initializing Witness Printer... [2020-07-29 01:17:54,199 INFO L275 PluginConnector]: Witness Printer initialized [2020-07-29 01:17:54,200 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 29.07 01:17:49" (3/4) ... [2020-07-29 01:17:54,203 INFO L137 WitnessPrinter]: Generating witness for correct program [2020-07-29 01:17:54,212 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure ULTIMATE.init [2020-07-29 01:17:54,213 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure main [2020-07-29 01:17:54,218 INFO L902 BoogieBacktranslator]: Reduced CFG by removing 9 nodes and edges [2020-07-29 01:17:54,218 INFO L902 BoogieBacktranslator]: Reduced CFG by removing 5 nodes and edges [2020-07-29 01:17:54,218 INFO L902 BoogieBacktranslator]: Reduced CFG by removing 1 nodes and edges [2020-07-29 01:17:54,219 INFO L902 BoogieBacktranslator]: Reduced CFG by removing 1 nodes and edges [2020-07-29 01:17:54,263 INFO L141 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2020-07-29 01:17:54,264 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2020-07-29 01:17:54,266 INFO L168 Benchmark]: Toolchain (without parser) took 5912.73 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 203.4 MB). Free memory was 958.9 MB in the beginning and 981.2 MB in the end (delta: -22.3 MB). Peak memory consumption was 181.1 MB. Max. memory is 11.5 GB. [2020-07-29 01:17:54,266 INFO L168 Benchmark]: CDTParser took 0.28 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:17:54,267 INFO L168 Benchmark]: CACSL2BoogieTranslator took 305.85 ms. Allocated memory is still 1.0 GB. Free memory was 958.9 MB in the beginning and 948.1 MB in the end (delta: 10.7 MB). Peak memory consumption was 10.7 MB. Max. memory is 11.5 GB. [2020-07-29 01:17:54,268 INFO L168 Benchmark]: Boogie Preprocessor took 124.40 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 133.2 MB). Free memory was 948.1 MB in the beginning and 1.1 GB in the end (delta: -168.1 MB). Peak memory consumption was 9.7 MB. Max. memory is 11.5 GB. [2020-07-29 01:17:54,268 INFO L168 Benchmark]: RCFGBuilder took 450.03 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: 25.2 MB). Peak memory consumption was 25.2 MB. Max. memory is 11.5 GB. [2020-07-29 01:17:54,269 INFO L168 Benchmark]: TraceAbstraction took 4957.90 ms. Allocated memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 70.3 MB). Free memory was 1.1 GB in the beginning and 988.8 MB in the end (delta: 102.3 MB). Peak memory consumption was 172.5 MB. Max. memory is 11.5 GB. [2020-07-29 01:17:54,269 INFO L168 Benchmark]: Witness Printer took 64.87 ms. Allocated memory is still 1.2 GB. Free memory was 988.8 MB in the beginning and 981.2 MB in the end (delta: 7.5 MB). Peak memory consumption was 7.5 MB. Max. memory is 11.5 GB. [2020-07-29 01:17:54,272 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.28 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 305.85 ms. Allocated memory is still 1.0 GB. Free memory was 958.9 MB in the beginning and 948.1 MB in the end (delta: 10.7 MB). Peak memory consumption was 10.7 MB. Max. memory is 11.5 GB. * Boogie Preprocessor took 124.40 ms. Allocated memory was 1.0 GB in the beginning and 1.2 GB in the end (delta: 133.2 MB). Free memory was 948.1 MB in the beginning and 1.1 GB in the end (delta: -168.1 MB). Peak memory consumption was 9.7 MB. Max. memory is 11.5 GB. * RCFGBuilder took 450.03 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: 25.2 MB). Peak memory consumption was 25.2 MB. Max. memory is 11.5 GB. * TraceAbstraction took 4957.90 ms. Allocated memory was 1.2 GB in the beginning and 1.2 GB in the end (delta: 70.3 MB). Free memory was 1.1 GB in the beginning and 988.8 MB in the end (delta: 102.3 MB). Peak memory consumption was 172.5 MB. Max. memory is 11.5 GB. * Witness Printer took 64.87 ms. Allocated memory is still 1.2 GB. Free memory was 988.8 MB in the beginning and 981.2 MB in the end (delta: 7.5 MB). Peak memory consumption was 7.5 MB. Max. memory is 11.5 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - PositiveResult [Line: 20]: pointer dereference always succeeds For all program executions holds that pointer dereference always succeeds at this location - PositiveResult [Line: 20]: pointer dereference always succeeds For all program executions holds that pointer dereference always succeeds at this location - PositiveResult [Line: 20]: pointer dereference always succeeds For all program executions holds that pointer dereference always succeeds at this location - PositiveResult [Line: 20]: pointer dereference always succeeds For all program executions holds that pointer dereference always succeeds at this location - PositiveResult [Line: 16]: pointer dereference always succeeds For all program executions holds that pointer dereference always succeeds at this location - PositiveResult [Line: 11]: all allocated memory was freed For all program executions holds that all allocated memory was freed at this location - PositiveResult [Line: 16]: pointer dereference always succeeds For all program executions holds that pointer dereference always succeeds at this location - AllSpecificationsHoldResult: All specifications hold 7 specifications checked. All of them hold - StatisticsResult: Ultimate Automizer benchmark data CFG has 3 procedures, 30 locations, 7 error locations. Started 1 CEGAR loops. VerificationResult: SAFE, OverallTime: 4.8s, OverallIterations: 7, TraceHistogramMax: 3, AutomataDifference: 1.6s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 141 SDtfs, 96 SDslu, 171 SDs, 0 SdLazy, 253 SolverSat, 15 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 0.4s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 104 GetRequests, 71 SyntacticMatches, 4 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 31 ImplicationChecksByTransitivity, 0.3s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=31occurred in iteration=5, 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, 7 MinimizatonAttempts, 11 StatesRemovedByMinimization, 4 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 1.5s InterpolantComputationTime, 176 NumberOfCodeBlocks, 164 NumberOfCodeBlocksAsserted, 12 NumberOfCheckSat, 165 ConstructedInterpolants, 1 QuantifiedInterpolants, 17653 SizeOfPredicates, 1 NumberOfNonLiveVariables, 243 ConjunctsInSsa, 26 ConjunctsInUnsatCore, 11 InterpolantComputations, 5 PerfectInterpolantSequences, 40/77 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 proved your program to be correct! Received shutdown request...