./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/combinations/pc_sfifo_2.cil-1+token_ring.04.cil-2.c --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 023d838f Calling Ultimate with: /root/.sdkman/candidates/java/11.0.12-open/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/combinations/pc_sfifo_2.cil-1+token_ring.04.cil-2.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash a61ec0d9e8ff01aa8900ac2d4a87b40f68db963fb1a53c6fbb2c11c91e3dd345 --- Real Ultimate output --- This is Ultimate 0.2.5-tmp.fs.icfgbuilder-eval-023d838-m [2024-11-10 01:06:35,038 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-11-10 01:06:35,105 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-11-10 01:06:35,112 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-11-10 01:06:35,113 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-11-10 01:06:35,163 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-11-10 01:06:35,164 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-11-10 01:06:35,165 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-11-10 01:06:35,166 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-11-10 01:06:35,167 INFO L153 SettingsManager]: * Use memory slicer=true [2024-11-10 01:06:35,168 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-11-10 01:06:35,168 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-11-10 01:06:35,179 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-11-10 01:06:35,179 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-11-10 01:06:35,180 INFO L153 SettingsManager]: * Use SBE=true [2024-11-10 01:06:35,180 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-11-10 01:06:35,180 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-11-10 01:06:35,180 INFO L153 SettingsManager]: * sizeof long=4 [2024-11-10 01:06:35,181 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-11-10 01:06:35,181 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-11-10 01:06:35,181 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-11-10 01:06:35,186 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-11-10 01:06:35,186 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-11-10 01:06:35,186 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-11-10 01:06:35,186 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-11-10 01:06:35,187 INFO L153 SettingsManager]: * sizeof long double=12 [2024-11-10 01:06:35,187 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-11-10 01:06:35,187 INFO L153 SettingsManager]: * Use constant arrays=true [2024-11-10 01:06:35,187 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2024-11-10 01:06:35,187 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-11-10 01:06:35,188 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-11-10 01:06:35,189 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-11-10 01:06:35,189 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-11-10 01:06:35,189 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-11-10 01:06:35,189 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-11-10 01:06:35,189 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-11-10 01:06:35,190 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-11-10 01:06:35,190 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-11-10 01:06:35,190 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-11-10 01:06:35,190 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-11-10 01:06:35,190 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-11-10 01:06:35,190 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-11-10 01:06:35,191 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release 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 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 ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> a61ec0d9e8ff01aa8900ac2d4a87b40f68db963fb1a53c6fbb2c11c91e3dd345 [2024-11-10 01:06:35,458 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-11-10 01:06:35,480 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-11-10 01:06:35,484 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-11-10 01:06:35,485 INFO L270 PluginConnector]: Initializing CDTParser... [2024-11-10 01:06:35,485 INFO L274 PluginConnector]: CDTParser initialized [2024-11-10 01:06:35,487 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/combinations/pc_sfifo_2.cil-1+token_ring.04.cil-2.c [2024-11-10 01:06:36,845 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-11-10 01:06:37,073 INFO L384 CDTParser]: Found 1 translation units. [2024-11-10 01:06:37,074 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/combinations/pc_sfifo_2.cil-1+token_ring.04.cil-2.c [2024-11-10 01:06:37,091 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3c06e1204/dc07b630e00e4843a67981abc616ae1b/FLAGe46339873 [2024-11-10 01:06:37,106 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3c06e1204/dc07b630e00e4843a67981abc616ae1b [2024-11-10 01:06:37,109 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-11-10 01:06:37,110 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-11-10 01:06:37,113 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-11-10 01:06:37,113 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-11-10 01:06:37,118 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-11-10 01:06:37,119 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 10.11 01:06:37" (1/1) ... [2024-11-10 01:06:37,120 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4c57615a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:37, skipping insertion in model container [2024-11-10 01:06:37,120 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 10.11 01:06:37" (1/1) ... [2024-11-10 01:06:37,166 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-11-10 01:06:37,344 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/combinations/pc_sfifo_2.cil-1+token_ring.04.cil-2.c[914,927] [2024-11-10 01:06:37,398 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/combinations/pc_sfifo_2.cil-1+token_ring.04.cil-2.c[7115,7128] [2024-11-10 01:06:37,445 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-10 01:06:37,460 INFO L200 MainTranslator]: Completed pre-run [2024-11-10 01:06:37,474 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/combinations/pc_sfifo_2.cil-1+token_ring.04.cil-2.c[914,927] [2024-11-10 01:06:37,503 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/combinations/pc_sfifo_2.cil-1+token_ring.04.cil-2.c[7115,7128] [2024-11-10 01:06:37,537 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-10 01:06:37,568 INFO L204 MainTranslator]: Completed translation [2024-11-10 01:06:37,568 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:37 WrapperNode [2024-11-10 01:06:37,568 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-11-10 01:06:37,569 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-11-10 01:06:37,570 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-11-10 01:06:37,570 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-11-10 01:06:37,575 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:37" (1/1) ... [2024-11-10 01:06:37,585 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:37" (1/1) ... [2024-11-10 01:06:37,623 INFO L138 Inliner]: procedures = 61, calls = 70, calls flagged for inlining = 29, calls inlined = 29, statements flattened = 583 [2024-11-10 01:06:37,624 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-11-10 01:06:37,624 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-11-10 01:06:37,625 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-11-10 01:06:37,625 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-11-10 01:06:37,636 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:37" (1/1) ... [2024-11-10 01:06:37,637 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:37" (1/1) ... [2024-11-10 01:06:37,645 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:37" (1/1) ... [2024-11-10 01:06:37,662 INFO L175 MemorySlicer]: Split 2 memory accesses to 1 slices as follows [2]. 100 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2]. The 0 writes are split as follows [0]. [2024-11-10 01:06:37,663 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:37" (1/1) ... [2024-11-10 01:06:37,663 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:37" (1/1) ... [2024-11-10 01:06:37,672 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:37" (1/1) ... [2024-11-10 01:06:37,674 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:37" (1/1) ... [2024-11-10 01:06:37,676 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:37" (1/1) ... [2024-11-10 01:06:37,677 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:37" (1/1) ... [2024-11-10 01:06:37,681 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-11-10 01:06:37,682 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2024-11-10 01:06:37,682 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2024-11-10 01:06:37,682 INFO L274 PluginConnector]: IcfgBuilder initialized [2024-11-10 01:06:37,683 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:37" (1/1) ... [2024-11-10 01:06:37,689 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-11-10 01:06:37,703 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 01:06:37,718 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2024-11-10 01:06:37,721 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2024-11-10 01:06:37,774 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-11-10 01:06:37,774 INFO L130 BoogieDeclarations]: Found specification of procedure immediate_notify [2024-11-10 01:06:37,774 INFO L138 BoogieDeclarations]: Found implementation of procedure immediate_notify [2024-11-10 01:06:37,774 INFO L130 BoogieDeclarations]: Found specification of procedure is_do_write_p_triggered [2024-11-10 01:06:37,774 INFO L138 BoogieDeclarations]: Found implementation of procedure is_do_write_p_triggered [2024-11-10 01:06:37,774 INFO L130 BoogieDeclarations]: Found specification of procedure exists_runnable_thread1 [2024-11-10 01:06:37,775 INFO L138 BoogieDeclarations]: Found implementation of procedure exists_runnable_thread1 [2024-11-10 01:06:37,775 INFO L130 BoogieDeclarations]: Found specification of procedure exists_runnable_thread2 [2024-11-10 01:06:37,775 INFO L138 BoogieDeclarations]: Found implementation of procedure exists_runnable_thread2 [2024-11-10 01:06:37,775 INFO L130 BoogieDeclarations]: Found specification of procedure reset_delta_events1 [2024-11-10 01:06:37,775 INFO L138 BoogieDeclarations]: Found implementation of procedure reset_delta_events1 [2024-11-10 01:06:37,775 INFO L130 BoogieDeclarations]: Found specification of procedure reset_delta_events2 [2024-11-10 01:06:37,775 INFO L138 BoogieDeclarations]: Found implementation of procedure reset_delta_events2 [2024-11-10 01:06:37,775 INFO L130 BoogieDeclarations]: Found specification of procedure activate_threads2 [2024-11-10 01:06:37,775 INFO L138 BoogieDeclarations]: Found implementation of procedure activate_threads2 [2024-11-10 01:06:37,775 INFO L130 BoogieDeclarations]: Found specification of procedure activate_threads1 [2024-11-10 01:06:37,776 INFO L138 BoogieDeclarations]: Found implementation of procedure activate_threads1 [2024-11-10 01:06:37,776 INFO L130 BoogieDeclarations]: Found specification of procedure is_do_read_c_triggered [2024-11-10 01:06:37,776 INFO L138 BoogieDeclarations]: Found implementation of procedure is_do_read_c_triggered [2024-11-10 01:06:37,776 INFO L130 BoogieDeclarations]: Found specification of procedure update_channels1 [2024-11-10 01:06:37,776 INFO L138 BoogieDeclarations]: Found implementation of procedure update_channels1 [2024-11-10 01:06:37,776 INFO L130 BoogieDeclarations]: Found specification of procedure update_channels2 [2024-11-10 01:06:37,776 INFO L138 BoogieDeclarations]: Found implementation of procedure update_channels2 [2024-11-10 01:06:37,776 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-11-10 01:06:37,776 INFO L130 BoogieDeclarations]: Found specification of procedure fire_delta_events2 [2024-11-10 01:06:37,777 INFO L138 BoogieDeclarations]: Found implementation of procedure fire_delta_events2 [2024-11-10 01:06:37,777 INFO L130 BoogieDeclarations]: Found specification of procedure fire_delta_events1 [2024-11-10 01:06:37,777 INFO L138 BoogieDeclarations]: Found implementation of procedure fire_delta_events1 [2024-11-10 01:06:37,777 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-11-10 01:06:37,780 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-11-10 01:06:37,780 INFO L130 BoogieDeclarations]: Found specification of procedure error1 [2024-11-10 01:06:37,780 INFO L138 BoogieDeclarations]: Found implementation of procedure error1 [2024-11-10 01:06:37,780 INFO L130 BoogieDeclarations]: Found specification of procedure error2 [2024-11-10 01:06:37,781 INFO L138 BoogieDeclarations]: Found implementation of procedure error2 [2024-11-10 01:06:37,911 INFO L256 CfgBuilder]: Building ICFG [2024-11-10 01:06:37,914 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2024-11-10 01:06:38,572 INFO L? ?]: Removed 83 outVars from TransFormulas that were not future-live. [2024-11-10 01:06:38,574 INFO L307 CfgBuilder]: Performing block encoding [2024-11-10 01:06:38,599 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-11-10 01:06:38,600 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2024-11-10 01:06:38,601 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 10.11 01:06:38 BoogieIcfgContainer [2024-11-10 01:06:38,601 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2024-11-10 01:06:38,604 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-11-10 01:06:38,604 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-11-10 01:06:38,607 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-11-10 01:06:38,607 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 10.11 01:06:37" (1/3) ... [2024-11-10 01:06:38,608 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@55a5334d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 10.11 01:06:38, skipping insertion in model container [2024-11-10 01:06:38,608 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:37" (2/3) ... [2024-11-10 01:06:38,608 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@55a5334d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 10.11 01:06:38, skipping insertion in model container [2024-11-10 01:06:38,608 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 10.11 01:06:38" (3/3) ... [2024-11-10 01:06:38,610 INFO L112 eAbstractionObserver]: Analyzing ICFG pc_sfifo_2.cil-1+token_ring.04.cil-2.c [2024-11-10 01:06:38,623 INFO L214 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-11-10 01:06:38,624 INFO L154 ceAbstractionStarter]: Applying trace abstraction to program that has 2 error locations. [2024-11-10 01:06:38,697 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-11-10 01:06:38,705 INFO L333 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@240a96cb, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-11-10 01:06:38,705 INFO L334 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2024-11-10 01:06:38,712 INFO L276 IsEmpty]: Start isEmpty. Operand has 338 states, 279 states have (on average 1.5268817204301075) internal successors, (426), 294 states have internal predecessors, (426), 34 states have call successors, (34), 15 states have call predecessors, (34), 15 states have return successors, (34), 32 states have call predecessors, (34), 34 states have call successors, (34) [2024-11-10 01:06:38,727 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 68 [2024-11-10 01:06:38,729 INFO L207 NwaCegarLoop]: Found error trace [2024-11-10 01:06:38,730 INFO L215 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 01:06:38,731 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting error1Err0ASSERT_VIOLATIONERROR_FUNCTION === [error1Err0ASSERT_VIOLATIONERROR_FUNCTION, error2Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2024-11-10 01:06:38,737 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 01:06:38,738 INFO L85 PathProgramCache]: Analyzing trace with hash -685336231, now seen corresponding path program 1 times [2024-11-10 01:06:38,748 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-11-10 01:06:38,749 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1894716009] [2024-11-10 01:06:38,749 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 01:06:38,750 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-11-10 01:06:38,880 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 01:06:39,207 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 4 [2024-11-10 01:06:39,214 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 01:06:39,252 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2024-11-10 01:06:39,258 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 01:06:39,298 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2024-11-10 01:06:39,305 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 01:06:39,312 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2024-11-10 01:06:39,317 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 01:06:39,320 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 10 [2024-11-10 01:06:39,322 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 01:06:39,324 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 39 [2024-11-10 01:06:39,328 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 01:06:39,333 INFO L368 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 48 [2024-11-10 01:06:39,335 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 01:06:39,338 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-10 01:06:39,340 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-11-10 01:06:39,341 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1894716009] [2024-11-10 01:06:39,342 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1894716009] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-10 01:06:39,342 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-10 01:06:39,343 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2024-11-10 01:06:39,345 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1227553503] [2024-11-10 01:06:39,345 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-10 01:06:39,349 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2024-11-10 01:06:39,350 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-11-10 01:06:39,372 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2024-11-10 01:06:39,373 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2024-11-10 01:06:39,376 INFO L87 Difference]: Start difference. First operand has 338 states, 279 states have (on average 1.5268817204301075) internal successors, (426), 294 states have internal predecessors, (426), 34 states have call successors, (34), 15 states have call predecessors, (34), 15 states have return successors, (34), 32 states have call predecessors, (34), 34 states have call successors, (34) Second operand has 8 states, 8 states have (on average 6.5) internal successors, (52), 5 states have internal predecessors, (52), 3 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 3 states have call predecessors, (7), 3 states have call successors, (7) [2024-11-10 01:06:39,748 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2024-11-10 01:06:39,750 INFO L431 NwaCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 22 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=56, Invalid=126, Unknown=0, NotChecked=0, Total=182 [2024-11-10 01:06:39,754 INFO L432 NwaCegarLoop]: 31 mSDtfsCounter, 142 mSDsluCounter, 112 mSDsCounter, 0 mSdLazyCounter, 187 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 142 SdHoareTripleChecker+Valid, 143 SdHoareTripleChecker+Invalid, 212 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 187 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2024-11-10 01:06:39,755 INFO L433 NwaCegarLoop]: SdHoareTripleChecker [142 Valid, 143 Invalid, 212 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 187 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2024-11-10 01:06:39,756 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-11-10 01:06:39,756 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.NullPointerException at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.BasicAbstractInterpolantAutomaton.chooseFalseSuccessor1(BasicAbstractInterpolantAutomaton.java:99) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.BasicAbstractInterpolantAutomaton.computeSuccs(BasicAbstractInterpolantAutomaton.java:65) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.BasicAbstractInterpolantAutomaton.computeSuccs(BasicAbstractInterpolantAutomaton.java:1) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.AbstractInterpolantAutomaton.internalSuccessors(AbstractInterpolantAutomaton.java:233) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.AbstractInterpolantAutomaton.internalSuccessors(AbstractInterpolantAutomaton.java:1) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.TotalizeNwa.internalSuccessors(TotalizeNwa.java:246) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.ComplementDeterministicNwa.internalSuccessors(ComplementDeterministicNwa.java:121) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.ProductNwa.internalSuccessors(ProductNwa.java:218) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.ProductNwa.internalSuccessors(ProductNwa.java:210) at de.uni_freiburg.informatik.ultimate.automata.nestedword.reachablestates.NestedWordAutomatonReachableStates$ReachableStatesComputation.addInternalsAndSuccessors(NestedWordAutomatonReachableStates.java:1058) at de.uni_freiburg.informatik.ultimate.automata.nestedword.reachablestates.NestedWordAutomatonReachableStates$ReachableStatesComputation.(NestedWordAutomatonReachableStates.java:960) at de.uni_freiburg.informatik.ultimate.automata.nestedword.reachablestates.NestedWordAutomatonReachableStates.(NestedWordAutomatonReachableStates.java:182) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.Difference.computeDifference(Difference.java:137) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.Difference.(Difference.java:90) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.NwaCegarLoop.computeAutomataDifference(NwaCegarLoop.java:373) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.NwaCegarLoop.refineAbstraction(NwaCegarLoop.java:345) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.refineAbstractionInternal(AbstractCegarLoop.java:463) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterate(AbstractCegarLoop.java:414) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.startCegar(AbstractCegarLoop.java:342) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.runCegar(AbstractCegarLoop.java:324) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.executeCegarLoop(TraceAbstractionStarter.java:426) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseProgram(TraceAbstractionStarter.java:312) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseSequentialProgram(TraceAbstractionStarter.java:273) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:167) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:143) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:124) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:167) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:150) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:127) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:233) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:227) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:144) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:106) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:319) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) [2024-11-10 01:06:39,767 INFO L158 Benchmark]: Toolchain (without parser) took 2656.25ms. Allocated memory was 155.2MB in the beginning and 222.3MB in the end (delta: 67.1MB). Free memory was 106.6MB in the beginning and 187.3MB in the end (delta: -80.7MB). There was no memory consumed. Max. memory is 16.1GB. [2024-11-10 01:06:39,767 INFO L158 Benchmark]: CDTParser took 0.18ms. Allocated memory is still 155.2MB. Free memory is still 121.6MB. There was no memory consumed. Max. memory is 16.1GB. [2024-11-10 01:06:39,768 INFO L158 Benchmark]: CACSL2BoogieTranslator took 455.62ms. Allocated memory is still 155.2MB. Free memory was 105.9MB in the beginning and 84.1MB in the end (delta: 21.7MB). Peak memory consumption was 21.0MB. Max. memory is 16.1GB. [2024-11-10 01:06:39,768 INFO L158 Benchmark]: Boogie Procedure Inliner took 54.39ms. Allocated memory is still 155.2MB. Free memory was 84.1MB in the beginning and 80.7MB in the end (delta: 3.4MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-11-10 01:06:39,769 INFO L158 Benchmark]: Boogie Preprocessor took 56.67ms. Allocated memory is still 155.2MB. Free memory was 80.7MB in the beginning and 78.0MB in the end (delta: 2.8MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-11-10 01:06:39,769 INFO L158 Benchmark]: IcfgBuilder took 919.71ms. Allocated memory is still 155.2MB. Free memory was 78.0MB in the beginning and 116.0MB in the end (delta: -38.1MB). Peak memory consumption was 45.5MB. Max. memory is 16.1GB. [2024-11-10 01:06:39,770 INFO L158 Benchmark]: TraceAbstraction took 1162.00ms. Allocated memory was 155.2MB in the beginning and 222.3MB in the end (delta: 67.1MB). Free memory was 114.8MB in the beginning and 187.3MB in the end (delta: -72.5MB). There was no memory consumed. Max. memory is 16.1GB. [2024-11-10 01:06:39,775 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.18ms. Allocated memory is still 155.2MB. Free memory is still 121.6MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 455.62ms. Allocated memory is still 155.2MB. Free memory was 105.9MB in the beginning and 84.1MB in the end (delta: 21.7MB). Peak memory consumption was 21.0MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 54.39ms. Allocated memory is still 155.2MB. Free memory was 84.1MB in the beginning and 80.7MB in the end (delta: 3.4MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 56.67ms. Allocated memory is still 155.2MB. Free memory was 80.7MB in the beginning and 78.0MB in the end (delta: 2.8MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * IcfgBuilder took 919.71ms. Allocated memory is still 155.2MB. Free memory was 78.0MB in the beginning and 116.0MB in the end (delta: -38.1MB). Peak memory consumption was 45.5MB. Max. memory is 16.1GB. * TraceAbstraction took 1162.00ms. Allocated memory was 155.2MB in the beginning and 222.3MB in the end (delta: 67.1MB). Free memory was 114.8MB in the beginning and 187.3MB in the end (delta: -72.5MB). There was no memory consumed. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: NullPointerException: null de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: NullPointerException: null: de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.BasicAbstractInterpolantAutomaton.chooseFalseSuccessor1(BasicAbstractInterpolantAutomaton.java:99) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2024-11-10 01:06:39,808 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /root/.sdkman/candidates/java/11.0.12-open/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/combinations/pc_sfifo_2.cil-1+token_ring.04.cil-2.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash a61ec0d9e8ff01aa8900ac2d4a87b40f68db963fb1a53c6fbb2c11c91e3dd345 --- Real Ultimate output --- This is Ultimate 0.2.5-tmp.fs.icfgbuilder-eval-023d838-m [2024-11-10 01:06:42,036 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-11-10 01:06:42,104 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2024-11-10 01:06:42,108 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-11-10 01:06:42,109 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-11-10 01:06:42,148 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-11-10 01:06:42,148 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-11-10 01:06:42,149 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-11-10 01:06:42,149 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-11-10 01:06:42,149 INFO L153 SettingsManager]: * Use memory slicer=true [2024-11-10 01:06:42,150 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-11-10 01:06:42,150 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-11-10 01:06:42,150 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-11-10 01:06:42,151 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-11-10 01:06:42,152 INFO L153 SettingsManager]: * Use SBE=true [2024-11-10 01:06:42,153 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-11-10 01:06:42,154 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-11-10 01:06:42,156 INFO L153 SettingsManager]: * sizeof long=4 [2024-11-10 01:06:42,156 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-11-10 01:06:42,156 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-11-10 01:06:42,157 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-11-10 01:06:42,157 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-11-10 01:06:42,157 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-11-10 01:06:42,157 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2024-11-10 01:06:42,158 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2024-11-10 01:06:42,158 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-11-10 01:06:42,158 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2024-11-10 01:06:42,158 INFO L153 SettingsManager]: * sizeof long double=12 [2024-11-10 01:06:42,158 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-11-10 01:06:42,159 INFO L153 SettingsManager]: * Use constant arrays=true [2024-11-10 01:06:42,159 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2024-11-10 01:06:42,159 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-11-10 01:06:42,159 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-11-10 01:06:42,160 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-11-10 01:06:42,160 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-11-10 01:06:42,160 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-11-10 01:06:42,160 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-11-10 01:06:42,161 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-11-10 01:06:42,161 INFO L153 SettingsManager]: * Trace refinement strategy=WOLF [2024-11-10 01:06:42,161 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2024-11-10 01:06:42,161 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-11-10 01:06:42,162 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-11-10 01:06:42,162 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-11-10 01:06:42,163 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-11-10 01:06:42,163 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release 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 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 ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> a61ec0d9e8ff01aa8900ac2d4a87b40f68db963fb1a53c6fbb2c11c91e3dd345 [2024-11-10 01:06:42,501 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-11-10 01:06:42,526 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-11-10 01:06:42,530 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-11-10 01:06:42,531 INFO L270 PluginConnector]: Initializing CDTParser... [2024-11-10 01:06:42,532 INFO L274 PluginConnector]: CDTParser initialized [2024-11-10 01:06:42,533 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/combinations/pc_sfifo_2.cil-1+token_ring.04.cil-2.c [2024-11-10 01:06:44,081 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-11-10 01:06:44,331 INFO L384 CDTParser]: Found 1 translation units. [2024-11-10 01:06:44,331 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/combinations/pc_sfifo_2.cil-1+token_ring.04.cil-2.c [2024-11-10 01:06:44,349 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8709bea47/25e5c575c16d4f9a8715ba18c96867ea/FLAGa3c11e552 [2024-11-10 01:06:44,368 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8709bea47/25e5c575c16d4f9a8715ba18c96867ea [2024-11-10 01:06:44,372 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-11-10 01:06:44,373 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-11-10 01:06:44,375 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-11-10 01:06:44,375 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-11-10 01:06:44,381 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-11-10 01:06:44,382 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 10.11 01:06:44" (1/1) ... [2024-11-10 01:06:44,383 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3925ca2b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:44, skipping insertion in model container [2024-11-10 01:06:44,383 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 10.11 01:06:44" (1/1) ... [2024-11-10 01:06:44,429 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-11-10 01:06:44,636 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/combinations/pc_sfifo_2.cil-1+token_ring.04.cil-2.c[914,927] [2024-11-10 01:06:44,697 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/combinations/pc_sfifo_2.cil-1+token_ring.04.cil-2.c[7115,7128] [2024-11-10 01:06:44,760 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-10 01:06:44,776 INFO L200 MainTranslator]: Completed pre-run [2024-11-10 01:06:44,787 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/combinations/pc_sfifo_2.cil-1+token_ring.04.cil-2.c[914,927] [2024-11-10 01:06:44,802 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/combinations/pc_sfifo_2.cil-1+token_ring.04.cil-2.c[7115,7128] [2024-11-10 01:06:44,825 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-11-10 01:06:44,849 INFO L204 MainTranslator]: Completed translation [2024-11-10 01:06:44,850 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:44 WrapperNode [2024-11-10 01:06:44,850 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-11-10 01:06:44,851 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-11-10 01:06:44,851 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-11-10 01:06:44,851 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-11-10 01:06:44,856 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:44" (1/1) ... [2024-11-10 01:06:44,877 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:44" (1/1) ... [2024-11-10 01:06:44,921 INFO L138 Inliner]: procedures = 62, calls = 70, calls flagged for inlining = 29, calls inlined = 29, statements flattened = 559 [2024-11-10 01:06:44,922 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-11-10 01:06:44,924 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-11-10 01:06:44,924 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-11-10 01:06:44,924 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-11-10 01:06:44,934 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:44" (1/1) ... [2024-11-10 01:06:44,934 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:44" (1/1) ... [2024-11-10 01:06:44,940 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:44" (1/1) ... [2024-11-10 01:06:44,953 INFO L175 MemorySlicer]: Split 2 memory accesses to 1 slices as follows [2]. 100 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2]. The 0 writes are split as follows [0]. [2024-11-10 01:06:44,954 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:44" (1/1) ... [2024-11-10 01:06:44,954 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:44" (1/1) ... [2024-11-10 01:06:44,973 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:44" (1/1) ... [2024-11-10 01:06:44,974 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:44" (1/1) ... [2024-11-10 01:06:44,976 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:44" (1/1) ... [2024-11-10 01:06:44,978 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:44" (1/1) ... [2024-11-10 01:06:44,982 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-11-10 01:06:44,982 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2024-11-10 01:06:44,983 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2024-11-10 01:06:44,983 INFO L274 PluginConnector]: IcfgBuilder initialized [2024-11-10 01:06:44,983 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:44" (1/1) ... [2024-11-10 01:06:44,988 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-11-10 01:06:44,998 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-11-10 01:06:45,011 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2024-11-10 01:06:45,013 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2024-11-10 01:06:45,062 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-11-10 01:06:45,062 INFO L130 BoogieDeclarations]: Found specification of procedure immediate_notify [2024-11-10 01:06:45,062 INFO L138 BoogieDeclarations]: Found implementation of procedure immediate_notify [2024-11-10 01:06:45,062 INFO L130 BoogieDeclarations]: Found specification of procedure is_do_write_p_triggered [2024-11-10 01:06:45,063 INFO L138 BoogieDeclarations]: Found implementation of procedure is_do_write_p_triggered [2024-11-10 01:06:45,063 INFO L130 BoogieDeclarations]: Found specification of procedure exists_runnable_thread1 [2024-11-10 01:06:45,063 INFO L138 BoogieDeclarations]: Found implementation of procedure exists_runnable_thread1 [2024-11-10 01:06:45,063 INFO L130 BoogieDeclarations]: Found specification of procedure exists_runnable_thread2 [2024-11-10 01:06:45,063 INFO L138 BoogieDeclarations]: Found implementation of procedure exists_runnable_thread2 [2024-11-10 01:06:45,063 INFO L130 BoogieDeclarations]: Found specification of procedure reset_delta_events1 [2024-11-10 01:06:45,064 INFO L138 BoogieDeclarations]: Found implementation of procedure reset_delta_events1 [2024-11-10 01:06:45,064 INFO L130 BoogieDeclarations]: Found specification of procedure reset_delta_events2 [2024-11-10 01:06:45,064 INFO L138 BoogieDeclarations]: Found implementation of procedure reset_delta_events2 [2024-11-10 01:06:45,064 INFO L130 BoogieDeclarations]: Found specification of procedure activate_threads2 [2024-11-10 01:06:45,064 INFO L138 BoogieDeclarations]: Found implementation of procedure activate_threads2 [2024-11-10 01:06:45,064 INFO L130 BoogieDeclarations]: Found specification of procedure activate_threads1 [2024-11-10 01:06:45,065 INFO L138 BoogieDeclarations]: Found implementation of procedure activate_threads1 [2024-11-10 01:06:45,065 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2024-11-10 01:06:45,065 INFO L130 BoogieDeclarations]: Found specification of procedure is_do_read_c_triggered [2024-11-10 01:06:45,065 INFO L138 BoogieDeclarations]: Found implementation of procedure is_do_read_c_triggered [2024-11-10 01:06:45,065 INFO L130 BoogieDeclarations]: Found specification of procedure update_channels1 [2024-11-10 01:06:45,065 INFO L138 BoogieDeclarations]: Found implementation of procedure update_channels1 [2024-11-10 01:06:45,065 INFO L130 BoogieDeclarations]: Found specification of procedure update_channels2 [2024-11-10 01:06:45,065 INFO L138 BoogieDeclarations]: Found implementation of procedure update_channels2 [2024-11-10 01:06:45,065 INFO L130 BoogieDeclarations]: Found specification of procedure fire_delta_events2 [2024-11-10 01:06:45,066 INFO L138 BoogieDeclarations]: Found implementation of procedure fire_delta_events2 [2024-11-10 01:06:45,066 INFO L130 BoogieDeclarations]: Found specification of procedure fire_delta_events1 [2024-11-10 01:06:45,066 INFO L138 BoogieDeclarations]: Found implementation of procedure fire_delta_events1 [2024-11-10 01:06:45,066 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-11-10 01:06:45,066 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-11-10 01:06:45,066 INFO L130 BoogieDeclarations]: Found specification of procedure error1 [2024-11-10 01:06:45,066 INFO L138 BoogieDeclarations]: Found implementation of procedure error1 [2024-11-10 01:06:45,066 INFO L130 BoogieDeclarations]: Found specification of procedure error2 [2024-11-10 01:06:45,067 INFO L138 BoogieDeclarations]: Found implementation of procedure error2 [2024-11-10 01:06:45,186 INFO L256 CfgBuilder]: Building ICFG [2024-11-10 01:06:45,189 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2024-11-10 01:06:45,909 INFO L? ?]: Removed 83 outVars from TransFormulas that were not future-live. [2024-11-10 01:06:45,909 INFO L307 CfgBuilder]: Performing block encoding [2024-11-10 01:06:45,936 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-11-10 01:06:45,936 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2024-11-10 01:06:45,937 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 10.11 01:06:45 BoogieIcfgContainer [2024-11-10 01:06:45,937 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2024-11-10 01:06:45,942 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-11-10 01:06:45,942 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-11-10 01:06:45,945 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-11-10 01:06:45,946 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 10.11 01:06:44" (1/3) ... [2024-11-10 01:06:45,946 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5ef5038f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 10.11 01:06:45, skipping insertion in model container [2024-11-10 01:06:45,946 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.11 01:06:44" (2/3) ... [2024-11-10 01:06:45,947 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5ef5038f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 10.11 01:06:45, skipping insertion in model container [2024-11-10 01:06:45,948 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 10.11 01:06:45" (3/3) ... [2024-11-10 01:06:45,949 INFO L112 eAbstractionObserver]: Analyzing ICFG pc_sfifo_2.cil-1+token_ring.04.cil-2.c [2024-11-10 01:06:45,978 INFO L214 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-11-10 01:06:45,978 INFO L154 ceAbstractionStarter]: Applying trace abstraction to program that has 2 error locations. [2024-11-10 01:06:46,056 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-11-10 01:06:46,064 INFO L333 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@233c1adb, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-11-10 01:06:46,064 INFO L334 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2024-11-10 01:06:46,070 INFO L276 IsEmpty]: Start isEmpty. Operand has 338 states, 279 states have (on average 1.5268817204301075) internal successors, (426), 294 states have internal predecessors, (426), 34 states have call successors, (34), 15 states have call predecessors, (34), 15 states have return successors, (34), 32 states have call predecessors, (34), 34 states have call successors, (34) [2024-11-10 01:06:46,082 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 68 [2024-11-10 01:06:46,083 INFO L207 NwaCegarLoop]: Found error trace [2024-11-10 01:06:46,084 INFO L215 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-11-10 01:06:46,085 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting error1Err0ASSERT_VIOLATIONERROR_FUNCTION === [error1Err0ASSERT_VIOLATIONERROR_FUNCTION, error2Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2024-11-10 01:06:46,091 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-11-10 01:06:46,091 INFO L85 PathProgramCache]: Analyzing trace with hash -685336231, now seen corresponding path program 1 times [2024-11-10 01:06:46,105 INFO L118 FreeRefinementEngine]: Executing refinement strategy WOLF [2024-11-10 01:06:46,105 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1547462423] [2024-11-10 01:06:46,105 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-11-10 01:06:46,106 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-11-10 01:06:46,106 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2024-11-10 01:06:46,109 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2024-11-10 01:06:46,111 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (2)] Waiting until timeout for monitored process [2024-11-10 01:06:46,242 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-11-10 01:06:46,246 INFO L255 TraceCheckSpWp]: Trace formula consists of 176 conjuncts, 7 conjuncts are in the unsatisfiable core [2024-11-10 01:06:46,256 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-11-10 01:06:46,383 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-11-10 01:06:46,383 INFO L307 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-11-10 01:06:46,384 INFO L136 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2024-11-10 01:06:46,384 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1547462423] [2024-11-10 01:06:46,386 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1547462423] provided 1 perfect and 0 imperfect interpolant sequences [2024-11-10 01:06:46,386 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-11-10 01:06:46,386 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-11-10 01:06:46,388 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2037715668] [2024-11-10 01:06:46,389 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-11-10 01:06:46,394 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-11-10 01:06:46,395 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2024-11-10 01:06:46,417 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-11-10 01:06:46,419 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-11-10 01:06:46,423 INFO L87 Difference]: Start difference. First operand has 338 states, 279 states have (on average 1.5268817204301075) internal successors, (426), 294 states have internal predecessors, (426), 34 states have call successors, (34), 15 states have call predecessors, (34), 15 states have return successors, (34), 32 states have call predecessors, (34), 34 states have call successors, (34) Second operand has 5 states, 5 states have (on average 10.4) internal successors, (52), 5 states have internal predecessors, (52), 2 states have call successors, (8), 2 states have call predecessors, (8), 3 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2024-11-10 01:06:46,586 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-11-10 01:06:46,588 INFO L431 NwaCegarLoop]: 0 DeclaredPredicates, 67 GetRequests, 63 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2024-11-10 01:06:46,593 INFO L432 NwaCegarLoop]: 48 mSDtfsCounter, 58 mSDsluCounter, 104 mSDsCounter, 0 mSdLazyCounter, 84 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 58 SdHoareTripleChecker+Valid, 152 SdHoareTripleChecker+Invalid, 94 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 84 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2024-11-10 01:06:46,594 INFO L433 NwaCegarLoop]: SdHoareTripleChecker [58 Valid, 152 Invalid, 94 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 84 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2024-11-10 01:06:46,602 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (2)] Ended with exit code 0 [2024-11-10 01:06:46,796 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2024-11-10 01:06:46,797 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.NullPointerException at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.BasicAbstractInterpolantAutomaton.chooseFalseSuccessor1(BasicAbstractInterpolantAutomaton.java:99) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.BasicAbstractInterpolantAutomaton.computeSuccs(BasicAbstractInterpolantAutomaton.java:65) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.BasicAbstractInterpolantAutomaton.computeSuccs(BasicAbstractInterpolantAutomaton.java:1) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.AbstractInterpolantAutomaton.internalSuccessors(AbstractInterpolantAutomaton.java:233) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.AbstractInterpolantAutomaton.internalSuccessors(AbstractInterpolantAutomaton.java:1) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.TotalizeNwa.internalSuccessors(TotalizeNwa.java:246) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.ComplementDeterministicNwa.internalSuccessors(ComplementDeterministicNwa.java:121) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.ProductNwa.internalSuccessors(ProductNwa.java:218) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.ProductNwa.internalSuccessors(ProductNwa.java:210) at de.uni_freiburg.informatik.ultimate.automata.nestedword.reachablestates.NestedWordAutomatonReachableStates$ReachableStatesComputation.addInternalsAndSuccessors(NestedWordAutomatonReachableStates.java:1058) at de.uni_freiburg.informatik.ultimate.automata.nestedword.reachablestates.NestedWordAutomatonReachableStates$ReachableStatesComputation.(NestedWordAutomatonReachableStates.java:960) at de.uni_freiburg.informatik.ultimate.automata.nestedword.reachablestates.NestedWordAutomatonReachableStates.(NestedWordAutomatonReachableStates.java:182) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.Difference.computeDifference(Difference.java:137) at de.uni_freiburg.informatik.ultimate.automata.nestedword.operations.Difference.(Difference.java:90) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.NwaCegarLoop.computeAutomataDifference(NwaCegarLoop.java:373) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.NwaCegarLoop.refineAbstraction(NwaCegarLoop.java:345) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.refineAbstractionInternal(AbstractCegarLoop.java:463) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterate(AbstractCegarLoop.java:414) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.startCegar(AbstractCegarLoop.java:342) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.runCegar(AbstractCegarLoop.java:324) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.executeCegarLoop(TraceAbstractionStarter.java:426) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseProgram(TraceAbstractionStarter.java:312) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseSequentialProgram(TraceAbstractionStarter.java:273) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:167) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:143) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:124) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:167) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:150) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:127) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:233) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:227) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:144) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:106) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:319) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) [2024-11-10 01:06:46,800 INFO L158 Benchmark]: Toolchain (without parser) took 2426.71ms. Allocated memory was 65.0MB in the beginning and 79.7MB in the end (delta: 14.7MB). Free memory was 38.2MB in the beginning and 43.3MB in the end (delta: -5.1MB). Peak memory consumption was 11.0MB. Max. memory is 16.1GB. [2024-11-10 01:06:46,800 INFO L158 Benchmark]: CDTParser took 0.14ms. Allocated memory is still 46.1MB. Free memory was 28.7MB in the beginning and 28.6MB in the end (delta: 52.5kB). There was no memory consumed. Max. memory is 16.1GB. [2024-11-10 01:06:46,801 INFO L158 Benchmark]: CACSL2BoogieTranslator took 475.16ms. Allocated memory is still 65.0MB. Free memory was 38.0MB in the beginning and 33.1MB in the end (delta: 4.9MB). Peak memory consumption was 11.4MB. Max. memory is 16.1GB. [2024-11-10 01:06:46,802 INFO L158 Benchmark]: Boogie Procedure Inliner took 71.26ms. Allocated memory is still 65.0MB. Free memory was 33.1MB in the beginning and 29.9MB in the end (delta: 3.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-11-10 01:06:46,803 INFO L158 Benchmark]: Boogie Preprocessor took 57.48ms. Allocated memory is still 65.0MB. Free memory was 29.9MB in the beginning and 26.3MB in the end (delta: 3.6MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-11-10 01:06:46,803 INFO L158 Benchmark]: IcfgBuilder took 954.38ms. Allocated memory was 65.0MB in the beginning and 79.7MB in the end (delta: 14.7MB). Free memory was 26.3MB in the beginning and 32.5MB in the end (delta: -6.3MB). Peak memory consumption was 10.7MB. Max. memory is 16.1GB. [2024-11-10 01:06:46,804 INFO L158 Benchmark]: TraceAbstraction took 857.59ms. Allocated memory is still 79.7MB. Free memory was 32.1MB in the beginning and 43.3MB in the end (delta: -11.2MB). There was no memory consumed. Max. memory is 16.1GB. [2024-11-10 01:06:46,806 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.14ms. Allocated memory is still 46.1MB. Free memory was 28.7MB in the beginning and 28.6MB in the end (delta: 52.5kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 475.16ms. Allocated memory is still 65.0MB. Free memory was 38.0MB in the beginning and 33.1MB in the end (delta: 4.9MB). Peak memory consumption was 11.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 71.26ms. Allocated memory is still 65.0MB. Free memory was 33.1MB in the beginning and 29.9MB in the end (delta: 3.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 57.48ms. Allocated memory is still 65.0MB. Free memory was 29.9MB in the beginning and 26.3MB in the end (delta: 3.6MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * IcfgBuilder took 954.38ms. Allocated memory was 65.0MB in the beginning and 79.7MB in the end (delta: 14.7MB). Free memory was 26.3MB in the beginning and 32.5MB in the end (delta: -6.3MB). Peak memory consumption was 10.7MB. Max. memory is 16.1GB. * TraceAbstraction took 857.59ms. Allocated memory is still 79.7MB. Free memory was 32.1MB in the beginning and 43.3MB in the end (delta: -11.2MB). There was no memory consumed. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: NullPointerException: null de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: NullPointerException: null: de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.interpolantautomata.transitionappender.BasicAbstractInterpolantAutomaton.chooseFalseSuccessor1(BasicAbstractInterpolantAutomaton.java:99) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2024-11-10 01:06:46,836 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Result: ERROR: ExceptionOrErrorResult: NullPointerException: null