./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/combinations/pc_sfifo_3.cil+token_ring.13.cil-2.c --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 03d7b7b3 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -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_3.cil+token_ring.13.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.graphml --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 6f520cae1fe274b0f3a6786f3c06c3b2db48180a97ced5103b1a188b50ee581d --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 20:01:08,900 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 20:01:08,903 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 20:01:08,930 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 20:01:08,931 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 20:01:08,934 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 20:01:08,937 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 20:01:08,942 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 20:01:08,944 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 20:01:08,948 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 20:01:08,949 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 20:01:08,950 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 20:01:08,950 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 20:01:08,952 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 20:01:08,953 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 20:01:08,955 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 20:01:08,955 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 20:01:08,956 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 20:01:08,959 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 20:01:08,964 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 20:01:08,965 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 20:01:08,966 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 20:01:08,968 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 20:01:08,968 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 20:01:08,972 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 20:01:08,973 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 20:01:08,973 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 20:01:08,974 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 20:01:08,975 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 20:01:08,975 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 20:01:08,976 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 20:01:08,976 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 20:01:08,978 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 20:01:08,979 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 20:01:08,980 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 20:01:08,980 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 20:01:08,980 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 20:01:08,981 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 20:01:08,981 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 20:01:08,982 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 20:01:08,982 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 20:01:08,983 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2022-02-20 20:01:09,017 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 20:01:09,018 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 20:01:09,018 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 20:01:09,018 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 20:01:09,019 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 20:01:09,019 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 20:01:09,020 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 20:01:09,020 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 20:01:09,020 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 20:01:09,020 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 20:01:09,021 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 20:01:09,021 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 20:01:09,022 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 20:01:09,022 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 20:01:09,022 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 20:01:09,022 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 20:01:09,022 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 20:01:09,022 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 20:01:09,023 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 20:01:09,023 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 20:01:09,023 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 20:01:09,023 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 20:01:09,023 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 20:01:09,024 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 20:01:09,024 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 20:01:09,024 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 20:01:09,024 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 20:01:09,025 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 20:01:09,025 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 20:01:09,026 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 20:01:09,026 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 20:01:09,026 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 20:01:09,026 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 20:01:09,026 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode 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.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 ! 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 -> 6f520cae1fe274b0f3a6786f3c06c3b2db48180a97ced5103b1a188b50ee581d [2022-02-20 20:01:09,301 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 20:01:09,332 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 20:01:09,335 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 20:01:09,336 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 20:01:09,337 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 20:01:09,338 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/combinations/pc_sfifo_3.cil+token_ring.13.cil-2.c [2022-02-20 20:01:09,390 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/bc6032360/2823d151e7c343b39ba2838f308e7ca1/FLAG0d1379406 [2022-02-20 20:01:09,877 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 20:01:09,878 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/combinations/pc_sfifo_3.cil+token_ring.13.cil-2.c [2022-02-20 20:01:09,896 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/bc6032360/2823d151e7c343b39ba2838f308e7ca1/FLAG0d1379406 [2022-02-20 20:01:10,211 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/bc6032360/2823d151e7c343b39ba2838f308e7ca1 [2022-02-20 20:01:10,213 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 20:01:10,214 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 20:01:10,218 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 20:01:10,218 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 20:01:10,221 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 20:01:10,223 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 08:01:10" (1/1) ... [2022-02-20 20:01:10,224 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@232573f0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:01:10, skipping insertion in model container [2022-02-20 20:01:10,224 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 08:01:10" (1/1) ... [2022-02-20 20:01:10,230 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 20:01:10,279 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 20:01:10,392 WARN L230 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_3.cil+token_ring.13.cil-2.c[911,924] [2022-02-20 20:01:10,473 WARN L230 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_3.cil+token_ring.13.cil-2.c[8416,8429] [2022-02-20 20:01:10,606 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 20:01:10,626 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 20:01:10,635 WARN L230 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_3.cil+token_ring.13.cil-2.c[911,924] [2022-02-20 20:01:10,652 WARN L230 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_3.cil+token_ring.13.cil-2.c[8416,8429] [2022-02-20 20:01:10,701 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 20:01:10,729 INFO L208 MainTranslator]: Completed translation [2022-02-20 20:01:10,729 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:01:10 WrapperNode [2022-02-20 20:01:10,729 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 20:01:10,731 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 20:01:10,731 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 20:01:10,731 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 20:01:10,738 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:01:10" (1/1) ... [2022-02-20 20:01:10,764 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:01:10" (1/1) ... [2022-02-20 20:01:10,835 INFO L137 Inliner]: procedures = 81, calls = 100, calls flagged for inlining = 50, calls inlined = 50, statements flattened = 1136 [2022-02-20 20:01:10,835 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 20:01:10,836 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 20:01:10,836 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 20:01:10,836 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 20:01:10,844 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:01:10" (1/1) ... [2022-02-20 20:01:10,844 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:01:10" (1/1) ... [2022-02-20 20:01:10,853 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:01:10" (1/1) ... [2022-02-20 20:01:10,853 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:01:10" (1/1) ... [2022-02-20 20:01:10,882 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:01:10" (1/1) ... [2022-02-20 20:01:10,910 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:01:10" (1/1) ... [2022-02-20 20:01:10,927 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:01:10" (1/1) ... [2022-02-20 20:01:10,933 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 20:01:10,934 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 20:01:10,934 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 20:01:10,945 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 20:01:10,947 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:01:10" (1/1) ... [2022-02-20 20:01:10,953 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 20:01:10,963 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 20:01:10,980 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-02-20 20:01:11,001 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-02-20 20:01:11,024 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 20:01:11,024 INFO L130 BoogieDeclarations]: Found specification of procedure immediate_notify [2022-02-20 20:01:11,024 INFO L138 BoogieDeclarations]: Found implementation of procedure immediate_notify [2022-02-20 20:01:11,025 INFO L130 BoogieDeclarations]: Found specification of procedure is_do_write_p_triggered [2022-02-20 20:01:11,025 INFO L138 BoogieDeclarations]: Found implementation of procedure is_do_write_p_triggered [2022-02-20 20:01:11,026 INFO L130 BoogieDeclarations]: Found specification of procedure exists_runnable_thread1 [2022-02-20 20:01:11,026 INFO L138 BoogieDeclarations]: Found implementation of procedure exists_runnable_thread1 [2022-02-20 20:01:11,027 INFO L130 BoogieDeclarations]: Found specification of procedure exists_runnable_thread2 [2022-02-20 20:01:11,027 INFO L138 BoogieDeclarations]: Found implementation of procedure exists_runnable_thread2 [2022-02-20 20:01:11,027 INFO L130 BoogieDeclarations]: Found specification of procedure reset_delta_events1 [2022-02-20 20:01:11,027 INFO L138 BoogieDeclarations]: Found implementation of procedure reset_delta_events1 [2022-02-20 20:01:11,027 INFO L130 BoogieDeclarations]: Found specification of procedure reset_delta_events2 [2022-02-20 20:01:11,028 INFO L138 BoogieDeclarations]: Found implementation of procedure reset_delta_events2 [2022-02-20 20:01:11,028 INFO L130 BoogieDeclarations]: Found specification of procedure activate_threads2 [2022-02-20 20:01:11,028 INFO L138 BoogieDeclarations]: Found implementation of procedure activate_threads2 [2022-02-20 20:01:11,028 INFO L130 BoogieDeclarations]: Found specification of procedure activate_threads1 [2022-02-20 20:01:11,028 INFO L138 BoogieDeclarations]: Found implementation of procedure activate_threads1 [2022-02-20 20:01:11,028 INFO L130 BoogieDeclarations]: Found specification of procedure is_do_read_c_triggered [2022-02-20 20:01:11,028 INFO L138 BoogieDeclarations]: Found implementation of procedure is_do_read_c_triggered [2022-02-20 20:01:11,029 INFO L130 BoogieDeclarations]: Found specification of procedure update_channels1 [2022-02-20 20:01:11,029 INFO L138 BoogieDeclarations]: Found implementation of procedure update_channels1 [2022-02-20 20:01:11,029 INFO L130 BoogieDeclarations]: Found specification of procedure update_channels2 [2022-02-20 20:01:11,029 INFO L138 BoogieDeclarations]: Found implementation of procedure update_channels2 [2022-02-20 20:01:11,029 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 20:01:11,029 INFO L130 BoogieDeclarations]: Found specification of procedure fire_delta_events2 [2022-02-20 20:01:11,029 INFO L138 BoogieDeclarations]: Found implementation of procedure fire_delta_events2 [2022-02-20 20:01:11,030 INFO L130 BoogieDeclarations]: Found specification of procedure fire_delta_events1 [2022-02-20 20:01:11,030 INFO L138 BoogieDeclarations]: Found implementation of procedure fire_delta_events1 [2022-02-20 20:01:11,030 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 20:01:11,030 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 20:01:11,030 INFO L130 BoogieDeclarations]: Found specification of procedure error1 [2022-02-20 20:01:11,030 INFO L138 BoogieDeclarations]: Found implementation of procedure error1 [2022-02-20 20:01:11,162 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 20:01:11,163 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 20:01:12,060 INFO L766 $ProcedureCfgBuilder]: dead code at ProgramPoint $Ultimate##56: assume !(1 == ~q_free~0); [2022-02-20 20:01:12,061 INFO L766 $ProcedureCfgBuilder]: dead code at ProgramPoint $Ultimate##55: assume 1 == ~q_free~0;~c_dr_st~0 := 2;~c_dr_pc~0 := 2;~a_t~0 := do_read_c_~a~0#1; [2022-02-20 20:01:12,138 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 20:01:12,154 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 20:01:12,157 INFO L299 CfgBuilder]: Removed 20 assume(true) statements. [2022-02-20 20:01:12,159 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 08:01:12 BoogieIcfgContainer [2022-02-20 20:01:12,160 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 20:01:12,161 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 20:01:12,162 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 20:01:12,165 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 20:01:12,166 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 08:01:10" (1/3) ... [2022-02-20 20:01:12,166 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3ce19ca3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 08:01:12, skipping insertion in model container [2022-02-20 20:01:12,167 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 08:01:10" (2/3) ... [2022-02-20 20:01:12,167 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3ce19ca3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 08:01:12, skipping insertion in model container [2022-02-20 20:01:12,167 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 08:01:12" (3/3) ... [2022-02-20 20:01:12,169 INFO L111 eAbstractionObserver]: Analyzing ICFG pc_sfifo_3.cil+token_ring.13.cil-2.c [2022-02-20 20:01:12,174 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 20:01:12,174 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 2 error locations. [2022-02-20 20:01:12,217 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 20:01:12,223 INFO L339 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, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, 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, mLoopAccelerationTechnique=FAST_UPR [2022-02-20 20:01:12,223 INFO L340 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2022-02-20 20:01:12,299 INFO L276 IsEmpty]: Start isEmpty. Operand has 524 states, 464 states have (on average 1.6422413793103448) internal successors, (762), 470 states have internal predecessors, (762), 43 states have call successors, (43), 14 states have call predecessors, (43), 14 states have return successors, (43), 42 states have call predecessors, (43), 43 states have call successors, (43) [2022-02-20 20:01:12,308 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2022-02-20 20:01:12,308 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 20:01:12,309 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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] [2022-02-20 20:01:12,310 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting error1Err0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, error1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 20:01:12,314 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:01:12,315 INFO L85 PathProgramCache]: Analyzing trace with hash -1273219449, now seen corresponding path program 1 times [2022-02-20 20:01:12,323 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:01:12,324 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1360923584] [2022-02-20 20:01:12,324 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:01:12,326 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:01:12,489 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:12,626 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 4 [2022-02-20 20:01:12,641 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:12,661 INFO L290 TraceCheckUtils]: 0: Hoare triple {567#(and (= ~q_ev~0 |old(~q_ev~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~q_req_up~0 |old(~q_req_up~0)|))} assume !(1 == ~q_req_up~0); {568#(= |old(~q_read_ev~0)| ~q_read_ev~0)} is VALID [2022-02-20 20:01:12,662 INFO L290 TraceCheckUtils]: 1: Hoare triple {568#(= |old(~q_read_ev~0)| ~q_read_ev~0)} assume true; {568#(= |old(~q_read_ev~0)| ~q_read_ev~0)} is VALID [2022-02-20 20:01:12,663 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {568#(= |old(~q_read_ev~0)| ~q_read_ev~0)} {529#(= ~q_read_ev~0 2)} #2057#return; {529#(= ~q_read_ev~0 2)} is VALID [2022-02-20 20:01:12,671 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-02-20 20:01:12,680 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:12,703 INFO L290 TraceCheckUtils]: 0: Hoare triple {569#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume 0 == ~q_read_ev~0;~q_read_ev~0 := 1; {570#(= |old(~q_read_ev~0)| 0)} is VALID [2022-02-20 20:01:12,704 INFO L290 TraceCheckUtils]: 1: Hoare triple {570#(= |old(~q_read_ev~0)| 0)} assume !(0 == ~q_write_ev~0); {570#(= |old(~q_read_ev~0)| 0)} is VALID [2022-02-20 20:01:12,705 INFO L290 TraceCheckUtils]: 2: Hoare triple {570#(= |old(~q_read_ev~0)| 0)} assume true; {570#(= |old(~q_read_ev~0)| 0)} is VALID [2022-02-20 20:01:12,706 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {570#(= |old(~q_read_ev~0)| 0)} {529#(= ~q_read_ev~0 2)} #2059#return; {528#false} is VALID [2022-02-20 20:01:12,713 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-02-20 20:01:12,728 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:12,734 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 20:01:12,736 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:12,742 INFO L290 TraceCheckUtils]: 0: Hoare triple {527#true} havoc ~__retres1~0; {527#true} is VALID [2022-02-20 20:01:12,742 INFO L290 TraceCheckUtils]: 1: Hoare triple {527#true} assume 1 == ~p_dw_pc~0; {527#true} is VALID [2022-02-20 20:01:12,743 INFO L290 TraceCheckUtils]: 2: Hoare triple {527#true} assume 1 == ~fast_clk_edge~0;~__retres1~0 := 1; {527#true} is VALID [2022-02-20 20:01:12,743 INFO L290 TraceCheckUtils]: 3: Hoare triple {527#true} #res := ~__retres1~0; {527#true} is VALID [2022-02-20 20:01:12,743 INFO L290 TraceCheckUtils]: 4: Hoare triple {527#true} assume true; {527#true} is VALID [2022-02-20 20:01:12,743 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {527#true} {527#true} #2053#return; {527#true} is VALID [2022-02-20 20:01:12,744 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 10 [2022-02-20 20:01:12,746 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:12,749 INFO L290 TraceCheckUtils]: 0: Hoare triple {527#true} havoc ~__retres1~1; {527#true} is VALID [2022-02-20 20:01:12,749 INFO L290 TraceCheckUtils]: 1: Hoare triple {527#true} assume 1 == ~c_dr_pc~0; {527#true} is VALID [2022-02-20 20:01:12,750 INFO L290 TraceCheckUtils]: 2: Hoare triple {527#true} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {527#true} is VALID [2022-02-20 20:01:12,750 INFO L290 TraceCheckUtils]: 3: Hoare triple {527#true} #res := ~__retres1~1; {527#true} is VALID [2022-02-20 20:01:12,751 INFO L290 TraceCheckUtils]: 4: Hoare triple {527#true} assume true; {527#true} is VALID [2022-02-20 20:01:12,751 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {527#true} {527#true} #2055#return; {527#true} is VALID [2022-02-20 20:01:12,751 INFO L290 TraceCheckUtils]: 0: Hoare triple {571#(and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~1;havoc ~tmp___0~1; {527#true} is VALID [2022-02-20 20:01:12,751 INFO L272 TraceCheckUtils]: 1: Hoare triple {527#true} call #t~ret8 := is_do_write_p_triggered(); {527#true} is VALID [2022-02-20 20:01:12,752 INFO L290 TraceCheckUtils]: 2: Hoare triple {527#true} havoc ~__retres1~0; {527#true} is VALID [2022-02-20 20:01:12,752 INFO L290 TraceCheckUtils]: 3: Hoare triple {527#true} assume 1 == ~p_dw_pc~0; {527#true} is VALID [2022-02-20 20:01:12,753 INFO L290 TraceCheckUtils]: 4: Hoare triple {527#true} assume 1 == ~fast_clk_edge~0;~__retres1~0 := 1; {527#true} is VALID [2022-02-20 20:01:12,754 INFO L290 TraceCheckUtils]: 5: Hoare triple {527#true} #res := ~__retres1~0; {527#true} is VALID [2022-02-20 20:01:12,755 INFO L290 TraceCheckUtils]: 6: Hoare triple {527#true} assume true; {527#true} is VALID [2022-02-20 20:01:12,755 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {527#true} {527#true} #2053#return; {527#true} is VALID [2022-02-20 20:01:12,755 INFO L290 TraceCheckUtils]: 8: Hoare triple {527#true} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {527#true} is VALID [2022-02-20 20:01:12,755 INFO L290 TraceCheckUtils]: 9: Hoare triple {527#true} assume 0 != ~tmp~1;~p_dw_st~0 := 0; {527#true} is VALID [2022-02-20 20:01:12,756 INFO L272 TraceCheckUtils]: 10: Hoare triple {527#true} call #t~ret9 := is_do_read_c_triggered(); {527#true} is VALID [2022-02-20 20:01:12,756 INFO L290 TraceCheckUtils]: 11: Hoare triple {527#true} havoc ~__retres1~1; {527#true} is VALID [2022-02-20 20:01:12,756 INFO L290 TraceCheckUtils]: 12: Hoare triple {527#true} assume 1 == ~c_dr_pc~0; {527#true} is VALID [2022-02-20 20:01:12,756 INFO L290 TraceCheckUtils]: 13: Hoare triple {527#true} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {527#true} is VALID [2022-02-20 20:01:12,757 INFO L290 TraceCheckUtils]: 14: Hoare triple {527#true} #res := ~__retres1~1; {527#true} is VALID [2022-02-20 20:01:12,757 INFO L290 TraceCheckUtils]: 15: Hoare triple {527#true} assume true; {527#true} is VALID [2022-02-20 20:01:12,757 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {527#true} {527#true} #2055#return; {527#true} is VALID [2022-02-20 20:01:12,758 INFO L290 TraceCheckUtils]: 17: Hoare triple {527#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {527#true} is VALID [2022-02-20 20:01:12,759 INFO L290 TraceCheckUtils]: 18: Hoare triple {527#true} assume 0 != ~tmp___0~1;~c_dr_st~0 := 0; {527#true} is VALID [2022-02-20 20:01:12,761 INFO L290 TraceCheckUtils]: 19: Hoare triple {527#true} assume true; {527#true} is VALID [2022-02-20 20:01:12,761 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {527#true} {528#false} #2061#return; {528#false} is VALID [2022-02-20 20:01:12,762 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 39 [2022-02-20 20:01:12,767 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:12,783 INFO L290 TraceCheckUtils]: 0: Hoare triple {569#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(1 == ~q_read_ev~0); {527#true} is VALID [2022-02-20 20:01:12,784 INFO L290 TraceCheckUtils]: 1: Hoare triple {527#true} assume 1 == ~q_write_ev~0;~q_write_ev~0 := 2; {527#true} is VALID [2022-02-20 20:01:12,784 INFO L290 TraceCheckUtils]: 2: Hoare triple {527#true} assume true; {527#true} is VALID [2022-02-20 20:01:12,784 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {527#true} {528#false} #2063#return; {528#false} is VALID [2022-02-20 20:01:12,784 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 47 [2022-02-20 20:01:12,787 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:12,792 INFO L290 TraceCheckUtils]: 0: Hoare triple {527#true} havoc ~__retres1~2; {527#true} is VALID [2022-02-20 20:01:12,793 INFO L290 TraceCheckUtils]: 1: Hoare triple {527#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {527#true} is VALID [2022-02-20 20:01:12,793 INFO L290 TraceCheckUtils]: 2: Hoare triple {527#true} #res := ~__retres1~2; {527#true} is VALID [2022-02-20 20:01:12,794 INFO L290 TraceCheckUtils]: 3: Hoare triple {527#true} assume true; {527#true} is VALID [2022-02-20 20:01:12,799 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {527#true} {528#false} #2065#return; {528#false} is VALID [2022-02-20 20:01:12,800 INFO L290 TraceCheckUtils]: 0: Hoare triple {527#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(17, 2);call #Ultimate.allocInit(12, 3);~fast_clk_edge~0 := 0;~slow_clk_edge~0 := 0;~q_buf_0~0 := 0;~q_free~0 := 0;~q_read_ev~0 := 0;~q_write_ev~0 := 0;~q_req_up~0 := 0;~q_ev~0 := 0;~p_num_write~0 := 0;~p_last_write~0 := 0;~p_dw_st~0 := 0;~p_dw_pc~0 := 0;~p_dw_i~0 := 0;~c_num_read~0 := 0;~c_last_read~0 := 0;~c_dr_st~0 := 0;~c_dr_pc~0 := 0;~c_dr_i~0 := 0;~a_t~0 := 0;~t~0 := 0;~m_pc~0 := 0;~t1_pc~0 := 0;~t2_pc~0 := 0;~t3_pc~0 := 0;~t4_pc~0 := 0;~t5_pc~0 := 0;~t6_pc~0 := 0;~t7_pc~0 := 0;~t8_pc~0 := 0;~t9_pc~0 := 0;~t10_pc~0 := 0;~t11_pc~0 := 0;~t12_pc~0 := 0;~t13_pc~0 := 0;~m_st~0 := 0;~t1_st~0 := 0;~t2_st~0 := 0;~t3_st~0 := 0;~t4_st~0 := 0;~t5_st~0 := 0;~t6_st~0 := 0;~t7_st~0 := 0;~t8_st~0 := 0;~t9_st~0 := 0;~t10_st~0 := 0;~t11_st~0 := 0;~t12_st~0 := 0;~t13_st~0 := 0;~m_i~0 := 0;~t1_i~0 := 0;~t2_i~0 := 0;~t3_i~0 := 0;~t4_i~0 := 0;~t5_i~0 := 0;~t6_i~0 := 0;~t7_i~0 := 0;~t8_i~0 := 0;~t9_i~0 := 0;~t10_i~0 := 0;~t11_i~0 := 0;~t12_i~0 := 0;~t13_i~0 := 0;~M_E~0 := 2;~T1_E~0 := 2;~T2_E~0 := 2;~T3_E~0 := 2;~T4_E~0 := 2;~T5_E~0 := 2;~T6_E~0 := 2;~T7_E~0 := 2;~T8_E~0 := 2;~T9_E~0 := 2;~T10_E~0 := 2;~T11_E~0 := 2;~T12_E~0 := 2;~T13_E~0 := 2;~E_M~0 := 2;~E_1~0 := 2;~E_2~0 := 2;~E_3~0 := 2;~E_4~0 := 2;~E_5~0 := 2;~E_6~0 := 2;~E_7~0 := 2;~E_8~0 := 2;~E_9~0 := 2;~E_10~0 := 2;~E_11~0 := 2;~E_12~0 := 2;~E_13~0 := 2;~token~0 := 0;~local~0 := 0; {527#true} is VALID [2022-02-20 20:01:12,800 INFO L290 TraceCheckUtils]: 1: Hoare triple {527#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet53#1, main_#t~ret54#1, main_#t~ret55#1;assume -2147483648 <= main_#t~nondet53#1 && main_#t~nondet53#1 <= 2147483647; {527#true} is VALID [2022-02-20 20:01:12,802 INFO L290 TraceCheckUtils]: 2: Hoare triple {527#true} assume 0 != main_#t~nondet53#1;havoc main_#t~nondet53#1;assume { :begin_inline_main1 } true;havoc main1_#res#1;havoc main1_~__retres1~3#1;havoc main1_~__retres1~3#1;assume { :begin_inline_init_model1 } true;~fast_clk_edge~0 := 2;~slow_clk_edge~0 := 2;~q_free~0 := 1;~q_write_ev~0 := 2;~q_read_ev~0 := ~q_write_ev~0;~p_num_write~0 := 0;~p_dw_pc~0 := 0;~p_dw_i~0 := 1;~c_num_read~0 := 0;~c_dr_pc~0 := 0;~c_dr_i~0 := 1; {529#(= ~q_read_ev~0 2)} is VALID [2022-02-20 20:01:12,803 INFO L290 TraceCheckUtils]: 3: Hoare triple {529#(= ~q_read_ev~0 2)} assume { :end_inline_init_model1 } true;assume { :begin_inline_start_simulation1 } true;havoc start_simulation1_#t~ret14#1, start_simulation1_#t~ret15#1, start_simulation1_~kernel_st~0#1, start_simulation1_~tmp~4#1, start_simulation1_~tmp___0~3#1;havoc start_simulation1_~kernel_st~0#1;havoc start_simulation1_~tmp~4#1;havoc start_simulation1_~tmp___0~3#1;start_simulation1_~kernel_st~0#1 := 0; {529#(= ~q_read_ev~0 2)} is VALID [2022-02-20 20:01:12,804 INFO L272 TraceCheckUtils]: 4: Hoare triple {529#(= ~q_read_ev~0 2)} call update_channels1(); {567#(and (= ~q_ev~0 |old(~q_ev~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~q_req_up~0 |old(~q_req_up~0)|))} is VALID [2022-02-20 20:01:12,804 INFO L290 TraceCheckUtils]: 5: Hoare triple {567#(and (= ~q_ev~0 |old(~q_ev~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~q_req_up~0 |old(~q_req_up~0)|))} assume !(1 == ~q_req_up~0); {568#(= |old(~q_read_ev~0)| ~q_read_ev~0)} is VALID [2022-02-20 20:01:12,806 INFO L290 TraceCheckUtils]: 6: Hoare triple {568#(= |old(~q_read_ev~0)| ~q_read_ev~0)} assume true; {568#(= |old(~q_read_ev~0)| ~q_read_ev~0)} is VALID [2022-02-20 20:01:12,807 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {568#(= |old(~q_read_ev~0)| ~q_read_ev~0)} {529#(= ~q_read_ev~0 2)} #2057#return; {529#(= ~q_read_ev~0 2)} is VALID [2022-02-20 20:01:12,808 INFO L290 TraceCheckUtils]: 8: Hoare triple {529#(= ~q_read_ev~0 2)} assume { :begin_inline_init_threads1 } true; {529#(= ~q_read_ev~0 2)} is VALID [2022-02-20 20:01:12,808 INFO L290 TraceCheckUtils]: 9: Hoare triple {529#(= ~q_read_ev~0 2)} assume 1 == ~p_dw_i~0;~p_dw_st~0 := 0; {529#(= ~q_read_ev~0 2)} is VALID [2022-02-20 20:01:12,809 INFO L290 TraceCheckUtils]: 10: Hoare triple {529#(= ~q_read_ev~0 2)} assume 1 == ~c_dr_i~0;~c_dr_st~0 := 0; {529#(= ~q_read_ev~0 2)} is VALID [2022-02-20 20:01:12,810 INFO L290 TraceCheckUtils]: 11: Hoare triple {529#(= ~q_read_ev~0 2)} assume { :end_inline_init_threads1 } true; {529#(= ~q_read_ev~0 2)} is VALID [2022-02-20 20:01:12,810 INFO L272 TraceCheckUtils]: 12: Hoare triple {529#(= ~q_read_ev~0 2)} call fire_delta_events1(); {569#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:12,811 INFO L290 TraceCheckUtils]: 13: Hoare triple {569#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume 0 == ~q_read_ev~0;~q_read_ev~0 := 1; {570#(= |old(~q_read_ev~0)| 0)} is VALID [2022-02-20 20:01:12,811 INFO L290 TraceCheckUtils]: 14: Hoare triple {570#(= |old(~q_read_ev~0)| 0)} assume !(0 == ~q_write_ev~0); {570#(= |old(~q_read_ev~0)| 0)} is VALID [2022-02-20 20:01:12,812 INFO L290 TraceCheckUtils]: 15: Hoare triple {570#(= |old(~q_read_ev~0)| 0)} assume true; {570#(= |old(~q_read_ev~0)| 0)} is VALID [2022-02-20 20:01:12,813 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {570#(= |old(~q_read_ev~0)| 0)} {529#(= ~q_read_ev~0 2)} #2059#return; {528#false} is VALID [2022-02-20 20:01:12,813 INFO L272 TraceCheckUtils]: 17: Hoare triple {528#false} call activate_threads1(); {571#(and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2022-02-20 20:01:12,813 INFO L290 TraceCheckUtils]: 18: Hoare triple {571#(and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~1;havoc ~tmp___0~1; {527#true} is VALID [2022-02-20 20:01:12,813 INFO L272 TraceCheckUtils]: 19: Hoare triple {527#true} call #t~ret8 := is_do_write_p_triggered(); {527#true} is VALID [2022-02-20 20:01:12,814 INFO L290 TraceCheckUtils]: 20: Hoare triple {527#true} havoc ~__retres1~0; {527#true} is VALID [2022-02-20 20:01:12,814 INFO L290 TraceCheckUtils]: 21: Hoare triple {527#true} assume 1 == ~p_dw_pc~0; {527#true} is VALID [2022-02-20 20:01:12,814 INFO L290 TraceCheckUtils]: 22: Hoare triple {527#true} assume 1 == ~fast_clk_edge~0;~__retres1~0 := 1; {527#true} is VALID [2022-02-20 20:01:12,814 INFO L290 TraceCheckUtils]: 23: Hoare triple {527#true} #res := ~__retres1~0; {527#true} is VALID [2022-02-20 20:01:12,814 INFO L290 TraceCheckUtils]: 24: Hoare triple {527#true} assume true; {527#true} is VALID [2022-02-20 20:01:12,815 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {527#true} {527#true} #2053#return; {527#true} is VALID [2022-02-20 20:01:12,815 INFO L290 TraceCheckUtils]: 26: Hoare triple {527#true} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {527#true} is VALID [2022-02-20 20:01:12,815 INFO L290 TraceCheckUtils]: 27: Hoare triple {527#true} assume 0 != ~tmp~1;~p_dw_st~0 := 0; {527#true} is VALID [2022-02-20 20:01:12,816 INFO L272 TraceCheckUtils]: 28: Hoare triple {527#true} call #t~ret9 := is_do_read_c_triggered(); {527#true} is VALID [2022-02-20 20:01:12,816 INFO L290 TraceCheckUtils]: 29: Hoare triple {527#true} havoc ~__retres1~1; {527#true} is VALID [2022-02-20 20:01:12,816 INFO L290 TraceCheckUtils]: 30: Hoare triple {527#true} assume 1 == ~c_dr_pc~0; {527#true} is VALID [2022-02-20 20:01:12,816 INFO L290 TraceCheckUtils]: 31: Hoare triple {527#true} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {527#true} is VALID [2022-02-20 20:01:12,817 INFO L290 TraceCheckUtils]: 32: Hoare triple {527#true} #res := ~__retres1~1; {527#true} is VALID [2022-02-20 20:01:12,817 INFO L290 TraceCheckUtils]: 33: Hoare triple {527#true} assume true; {527#true} is VALID [2022-02-20 20:01:12,817 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {527#true} {527#true} #2055#return; {527#true} is VALID [2022-02-20 20:01:12,817 INFO L290 TraceCheckUtils]: 35: Hoare triple {527#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {527#true} is VALID [2022-02-20 20:01:12,818 INFO L290 TraceCheckUtils]: 36: Hoare triple {527#true} assume 0 != ~tmp___0~1;~c_dr_st~0 := 0; {527#true} is VALID [2022-02-20 20:01:12,818 INFO L290 TraceCheckUtils]: 37: Hoare triple {527#true} assume true; {527#true} is VALID [2022-02-20 20:01:12,818 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {527#true} {528#false} #2061#return; {528#false} is VALID [2022-02-20 20:01:12,818 INFO L272 TraceCheckUtils]: 39: Hoare triple {528#false} call reset_delta_events1(); {569#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:12,818 INFO L290 TraceCheckUtils]: 40: Hoare triple {569#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(1 == ~q_read_ev~0); {527#true} is VALID [2022-02-20 20:01:12,819 INFO L290 TraceCheckUtils]: 41: Hoare triple {527#true} assume 1 == ~q_write_ev~0;~q_write_ev~0 := 2; {527#true} is VALID [2022-02-20 20:01:12,819 INFO L290 TraceCheckUtils]: 42: Hoare triple {527#true} assume true; {527#true} is VALID [2022-02-20 20:01:12,819 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {527#true} {528#false} #2063#return; {528#false} is VALID [2022-02-20 20:01:12,820 INFO L290 TraceCheckUtils]: 44: Hoare triple {528#false} assume !false; {528#false} is VALID [2022-02-20 20:01:12,820 INFO L290 TraceCheckUtils]: 45: Hoare triple {528#false} start_simulation1_~kernel_st~0#1 := 1;assume { :begin_inline_eval1 } true;havoc eval1_#t~ret10#1, eval1_#t~nondet11#1, eval1_#t~nondet12#1, eval1_~tmp~2#1, eval1_~tmp___0~2#1, eval1_~tmp___1~0#1;havoc eval1_~tmp~2#1;havoc eval1_~tmp___0~2#1;havoc eval1_~tmp___1~0#1; {528#false} is VALID [2022-02-20 20:01:12,820 INFO L290 TraceCheckUtils]: 46: Hoare triple {528#false} assume !false; {528#false} is VALID [2022-02-20 20:01:12,820 INFO L272 TraceCheckUtils]: 47: Hoare triple {528#false} call eval1_#t~ret10#1 := exists_runnable_thread1(); {527#true} is VALID [2022-02-20 20:01:12,820 INFO L290 TraceCheckUtils]: 48: Hoare triple {527#true} havoc ~__retres1~2; {527#true} is VALID [2022-02-20 20:01:12,821 INFO L290 TraceCheckUtils]: 49: Hoare triple {527#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {527#true} is VALID [2022-02-20 20:01:12,821 INFO L290 TraceCheckUtils]: 50: Hoare triple {527#true} #res := ~__retres1~2; {527#true} is VALID [2022-02-20 20:01:12,821 INFO L290 TraceCheckUtils]: 51: Hoare triple {527#true} assume true; {527#true} is VALID [2022-02-20 20:01:12,822 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {527#true} {528#false} #2065#return; {528#false} is VALID [2022-02-20 20:01:12,823 INFO L290 TraceCheckUtils]: 53: Hoare triple {528#false} assume -2147483648 <= eval1_#t~ret10#1 && eval1_#t~ret10#1 <= 2147483647;eval1_~tmp___1~0#1 := eval1_#t~ret10#1;havoc eval1_#t~ret10#1; {528#false} is VALID [2022-02-20 20:01:12,823 INFO L290 TraceCheckUtils]: 54: Hoare triple {528#false} assume 0 != eval1_~tmp___1~0#1; {528#false} is VALID [2022-02-20 20:01:12,823 INFO L290 TraceCheckUtils]: 55: Hoare triple {528#false} assume !(0 == ~p_dw_st~0); {528#false} is VALID [2022-02-20 20:01:12,823 INFO L290 TraceCheckUtils]: 56: Hoare triple {528#false} assume 0 == ~c_dr_st~0;assume -2147483648 <= eval1_#t~nondet12#1 && eval1_#t~nondet12#1 <= 2147483647;eval1_~tmp___0~2#1 := eval1_#t~nondet12#1;havoc eval1_#t~nondet12#1; {528#false} is VALID [2022-02-20 20:01:12,824 INFO L290 TraceCheckUtils]: 57: Hoare triple {528#false} assume 0 != eval1_~tmp___0~2#1;~c_dr_st~0 := 1;assume { :begin_inline_do_read_c } true;havoc do_read_c_~a~0#1;havoc do_read_c_~a~0#1; {528#false} is VALID [2022-02-20 20:01:12,824 INFO L290 TraceCheckUtils]: 58: Hoare triple {528#false} assume !(0 == ~c_dr_pc~0); {528#false} is VALID [2022-02-20 20:01:12,824 INFO L290 TraceCheckUtils]: 59: Hoare triple {528#false} assume 2 == ~c_dr_pc~0; {528#false} is VALID [2022-02-20 20:01:12,824 INFO L290 TraceCheckUtils]: 60: Hoare triple {528#false} do_read_c_~a~0#1 := ~a_t~0; {528#false} is VALID [2022-02-20 20:01:12,825 INFO L290 TraceCheckUtils]: 61: Hoare triple {528#false} do_read_c_~a~0#1 := ~q_buf_0~0;~c_last_read~0 := do_read_c_~a~0#1;~c_num_read~0 := 1 + ~c_num_read~0;~q_free~0 := 1;~q_req_up~0 := 1; {528#false} is VALID [2022-02-20 20:01:12,825 INFO L290 TraceCheckUtils]: 62: Hoare triple {528#false} assume !(~p_last_write~0 == ~c_last_read~0); {528#false} is VALID [2022-02-20 20:01:12,825 INFO L272 TraceCheckUtils]: 63: Hoare triple {528#false} call error1(); {528#false} is VALID [2022-02-20 20:01:12,825 INFO L290 TraceCheckUtils]: 64: Hoare triple {528#false} assume !false; {528#false} is VALID [2022-02-20 20:01:12,826 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 20:01:12,826 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:01:12,827 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1360923584] [2022-02-20 20:01:12,827 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1360923584] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:01:12,828 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:01:12,828 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-02-20 20:01:12,829 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [559559624] [2022-02-20 20:01:12,830 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:01:12,840 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 6.25) internal successors, (50), 5 states have internal predecessors, (50), 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) Word has length 65 [2022-02-20 20:01:12,842 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:01:12,845 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 6.25) internal successors, (50), 5 states have internal predecessors, (50), 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) [2022-02-20 20:01:12,909 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:01:12,910 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 20:01:12,910 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:01:12,933 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 20:01:12,934 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-02-20 20:01:12,942 INFO L87 Difference]: Start difference. First operand has 524 states, 464 states have (on average 1.6422413793103448) internal successors, (762), 470 states have internal predecessors, (762), 43 states have call successors, (43), 14 states have call predecessors, (43), 14 states have return successors, (43), 42 states have call predecessors, (43), 43 states have call successors, (43) Second operand has 8 states, 8 states have (on average 6.25) internal successors, (50), 5 states have internal predecessors, (50), 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) [2022-02-20 20:01:17,569 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:17,569 INFO L93 Difference]: Finished difference Result 1170 states and 1881 transitions. [2022-02-20 20:01:17,570 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-02-20 20:01:17,570 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 6.25) internal successors, (50), 5 states have internal predecessors, (50), 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) Word has length 65 [2022-02-20 20:01:17,570 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 20:01:17,572 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 6.25) internal successors, (50), 5 states have internal predecessors, (50), 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) [2022-02-20 20:01:17,610 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 1881 transitions. [2022-02-20 20:01:17,611 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 6.25) internal successors, (50), 5 states have internal predecessors, (50), 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) [2022-02-20 20:01:17,640 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 1881 transitions. [2022-02-20 20:01:17,640 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 1881 transitions. [2022-02-20 20:01:18,957 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1881 edges. 1881 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:01:19,058 INFO L225 Difference]: With dead ends: 1170 [2022-02-20 20:01:19,059 INFO L226 Difference]: Without dead ends: 665 [2022-02-20 20:01:19,065 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 33 GetRequests, 18 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 44 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=79, Invalid=193, Unknown=0, NotChecked=0, Total=272 [2022-02-20 20:01:19,068 INFO L933 BasicCegarLoop]: 835 mSDtfsCounter, 1335 mSDsluCounter, 1973 mSDsCounter, 0 mSdLazyCounter, 1186 mSolverCounterSat, 204 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1342 SdHoareTripleChecker+Valid, 2808 SdHoareTripleChecker+Invalid, 1390 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 204 IncrementalHoareTripleChecker+Valid, 1186 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.5s IncrementalHoareTripleChecker+Time [2022-02-20 20:01:19,069 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [1342 Valid, 2808 Invalid, 1390 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [204 Valid, 1186 Invalid, 0 Unknown, 0 Unchecked, 1.5s Time] [2022-02-20 20:01:19,084 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 665 states. [2022-02-20 20:01:19,158 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 665 to 626. [2022-02-20 20:01:19,159 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 20:01:19,163 INFO L82 GeneralOperation]: Start isEquivalent. First operand 665 states. Second operand has 626 states, 546 states have (on average 1.532967032967033) internal successors, (837), 552 states have internal predecessors, (837), 56 states have call successors, (56), 21 states have call predecessors, (56), 22 states have return successors, (59), 55 states have call predecessors, (59), 54 states have call successors, (59) [2022-02-20 20:01:19,167 INFO L74 IsIncluded]: Start isIncluded. First operand 665 states. Second operand has 626 states, 546 states have (on average 1.532967032967033) internal successors, (837), 552 states have internal predecessors, (837), 56 states have call successors, (56), 21 states have call predecessors, (56), 22 states have return successors, (59), 55 states have call predecessors, (59), 54 states have call successors, (59) [2022-02-20 20:01:19,170 INFO L87 Difference]: Start difference. First operand 665 states. Second operand has 626 states, 546 states have (on average 1.532967032967033) internal successors, (837), 552 states have internal predecessors, (837), 56 states have call successors, (56), 21 states have call predecessors, (56), 22 states have return successors, (59), 55 states have call predecessors, (59), 54 states have call successors, (59) [2022-02-20 20:01:19,210 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:19,210 INFO L93 Difference]: Finished difference Result 665 states and 1008 transitions. [2022-02-20 20:01:19,210 INFO L276 IsEmpty]: Start isEmpty. Operand 665 states and 1008 transitions. [2022-02-20 20:01:19,217 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:01:19,217 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:01:19,219 INFO L74 IsIncluded]: Start isIncluded. First operand has 626 states, 546 states have (on average 1.532967032967033) internal successors, (837), 552 states have internal predecessors, (837), 56 states have call successors, (56), 21 states have call predecessors, (56), 22 states have return successors, (59), 55 states have call predecessors, (59), 54 states have call successors, (59) Second operand 665 states. [2022-02-20 20:01:19,222 INFO L87 Difference]: Start difference. First operand has 626 states, 546 states have (on average 1.532967032967033) internal successors, (837), 552 states have internal predecessors, (837), 56 states have call successors, (56), 21 states have call predecessors, (56), 22 states have return successors, (59), 55 states have call predecessors, (59), 54 states have call successors, (59) Second operand 665 states. [2022-02-20 20:01:19,259 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:19,259 INFO L93 Difference]: Finished difference Result 665 states and 1008 transitions. [2022-02-20 20:01:19,259 INFO L276 IsEmpty]: Start isEmpty. Operand 665 states and 1008 transitions. [2022-02-20 20:01:19,263 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:01:19,263 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:01:19,263 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 20:01:19,263 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 20:01:19,266 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 626 states, 546 states have (on average 1.532967032967033) internal successors, (837), 552 states have internal predecessors, (837), 56 states have call successors, (56), 21 states have call predecessors, (56), 22 states have return successors, (59), 55 states have call predecessors, (59), 54 states have call successors, (59) [2022-02-20 20:01:19,301 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 626 states to 626 states and 952 transitions. [2022-02-20 20:01:19,303 INFO L78 Accepts]: Start accepts. Automaton has 626 states and 952 transitions. Word has length 65 [2022-02-20 20:01:19,303 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:01:19,303 INFO L470 AbstractCegarLoop]: Abstraction has 626 states and 952 transitions. [2022-02-20 20:01:19,304 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 6.25) internal successors, (50), 5 states have internal predecessors, (50), 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) [2022-02-20 20:01:19,304 INFO L276 IsEmpty]: Start isEmpty. Operand 626 states and 952 transitions. [2022-02-20 20:01:19,306 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2022-02-20 20:01:19,306 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 20:01:19,306 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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] [2022-02-20 20:01:19,306 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 20:01:19,307 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting error1Err0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, error1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 20:01:19,307 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:01:19,307 INFO L85 PathProgramCache]: Analyzing trace with hash 265120581, now seen corresponding path program 1 times [2022-02-20 20:01:19,308 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:01:19,308 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [579203805] [2022-02-20 20:01:19,308 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:01:19,308 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:01:19,329 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:19,364 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 4 [2022-02-20 20:01:19,367 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:19,377 INFO L290 TraceCheckUtils]: 0: Hoare triple {4334#(and (= ~q_ev~0 |old(~q_ev~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~q_req_up~0 |old(~q_req_up~0)|))} assume !(1 == ~q_req_up~0); {4335#(not (= |old(~q_req_up~0)| 1))} is VALID [2022-02-20 20:01:19,377 INFO L290 TraceCheckUtils]: 1: Hoare triple {4335#(not (= |old(~q_req_up~0)| 1))} assume true; {4335#(not (= |old(~q_req_up~0)| 1))} is VALID [2022-02-20 20:01:19,378 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {4335#(not (= |old(~q_req_up~0)| 1))} {4295#(= ~q_req_up~0 ~p_dw_pc~0)} #2057#return; {4299#(not (= ~p_dw_pc~0 1))} is VALID [2022-02-20 20:01:19,384 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-02-20 20:01:19,386 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:19,389 INFO L290 TraceCheckUtils]: 0: Hoare triple {4336#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(0 == ~q_read_ev~0); {4292#true} is VALID [2022-02-20 20:01:19,390 INFO L290 TraceCheckUtils]: 1: Hoare triple {4292#true} assume !(0 == ~q_write_ev~0); {4292#true} is VALID [2022-02-20 20:01:19,390 INFO L290 TraceCheckUtils]: 2: Hoare triple {4292#true} assume true; {4292#true} is VALID [2022-02-20 20:01:19,390 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4292#true} {4299#(not (= ~p_dw_pc~0 1))} #2059#return; {4299#(not (= ~p_dw_pc~0 1))} is VALID [2022-02-20 20:01:19,397 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-02-20 20:01:19,403 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:19,419 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 20:01:19,420 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:19,426 INFO L290 TraceCheckUtils]: 0: Hoare triple {4292#true} havoc ~__retres1~0; {4292#true} is VALID [2022-02-20 20:01:19,426 INFO L290 TraceCheckUtils]: 1: Hoare triple {4292#true} assume 1 == ~p_dw_pc~0; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,427 INFO L290 TraceCheckUtils]: 2: Hoare triple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} assume 1 == ~fast_clk_edge~0;~__retres1~0 := 1; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,427 INFO L290 TraceCheckUtils]: 3: Hoare triple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} #res := ~__retres1~0; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,428 INFO L290 TraceCheckUtils]: 4: Hoare triple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} assume true; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,428 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} {4292#true} #2053#return; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,428 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 10 [2022-02-20 20:01:19,430 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:19,433 INFO L290 TraceCheckUtils]: 0: Hoare triple {4292#true} havoc ~__retres1~1; {4292#true} is VALID [2022-02-20 20:01:19,433 INFO L290 TraceCheckUtils]: 1: Hoare triple {4292#true} assume 1 == ~c_dr_pc~0; {4292#true} is VALID [2022-02-20 20:01:19,433 INFO L290 TraceCheckUtils]: 2: Hoare triple {4292#true} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {4292#true} is VALID [2022-02-20 20:01:19,433 INFO L290 TraceCheckUtils]: 3: Hoare triple {4292#true} #res := ~__retres1~1; {4292#true} is VALID [2022-02-20 20:01:19,433 INFO L290 TraceCheckUtils]: 4: Hoare triple {4292#true} assume true; {4292#true} is VALID [2022-02-20 20:01:19,434 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {4292#true} {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} #2055#return; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,434 INFO L290 TraceCheckUtils]: 0: Hoare triple {4337#(and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~1;havoc ~tmp___0~1; {4292#true} is VALID [2022-02-20 20:01:19,434 INFO L272 TraceCheckUtils]: 1: Hoare triple {4292#true} call #t~ret8 := is_do_write_p_triggered(); {4292#true} is VALID [2022-02-20 20:01:19,435 INFO L290 TraceCheckUtils]: 2: Hoare triple {4292#true} havoc ~__retres1~0; {4292#true} is VALID [2022-02-20 20:01:19,435 INFO L290 TraceCheckUtils]: 3: Hoare triple {4292#true} assume 1 == ~p_dw_pc~0; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,435 INFO L290 TraceCheckUtils]: 4: Hoare triple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} assume 1 == ~fast_clk_edge~0;~__retres1~0 := 1; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,436 INFO L290 TraceCheckUtils]: 5: Hoare triple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} #res := ~__retres1~0; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,436 INFO L290 TraceCheckUtils]: 6: Hoare triple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} assume true; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,437 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} {4292#true} #2053#return; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,437 INFO L290 TraceCheckUtils]: 8: Hoare triple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,438 INFO L290 TraceCheckUtils]: 9: Hoare triple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} assume 0 != ~tmp~1;~p_dw_st~0 := 0; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,438 INFO L272 TraceCheckUtils]: 10: Hoare triple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} call #t~ret9 := is_do_read_c_triggered(); {4292#true} is VALID [2022-02-20 20:01:19,438 INFO L290 TraceCheckUtils]: 11: Hoare triple {4292#true} havoc ~__retres1~1; {4292#true} is VALID [2022-02-20 20:01:19,438 INFO L290 TraceCheckUtils]: 12: Hoare triple {4292#true} assume 1 == ~c_dr_pc~0; {4292#true} is VALID [2022-02-20 20:01:19,438 INFO L290 TraceCheckUtils]: 13: Hoare triple {4292#true} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {4292#true} is VALID [2022-02-20 20:01:19,439 INFO L290 TraceCheckUtils]: 14: Hoare triple {4292#true} #res := ~__retres1~1; {4292#true} is VALID [2022-02-20 20:01:19,439 INFO L290 TraceCheckUtils]: 15: Hoare triple {4292#true} assume true; {4292#true} is VALID [2022-02-20 20:01:19,439 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4292#true} {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} #2055#return; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,440 INFO L290 TraceCheckUtils]: 17: Hoare triple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,440 INFO L290 TraceCheckUtils]: 18: Hoare triple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} assume 0 != ~tmp___0~1;~c_dr_st~0 := 0; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,441 INFO L290 TraceCheckUtils]: 19: Hoare triple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} assume true; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,441 INFO L284 TraceCheckUtils]: 20: Hoare quadruple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} {4299#(not (= ~p_dw_pc~0 1))} #2061#return; {4293#false} is VALID [2022-02-20 20:01:19,441 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 39 [2022-02-20 20:01:19,443 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:19,446 INFO L290 TraceCheckUtils]: 0: Hoare triple {4336#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(1 == ~q_read_ev~0); {4292#true} is VALID [2022-02-20 20:01:19,446 INFO L290 TraceCheckUtils]: 1: Hoare triple {4292#true} assume 1 == ~q_write_ev~0;~q_write_ev~0 := 2; {4292#true} is VALID [2022-02-20 20:01:19,446 INFO L290 TraceCheckUtils]: 2: Hoare triple {4292#true} assume true; {4292#true} is VALID [2022-02-20 20:01:19,446 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4292#true} {4293#false} #2063#return; {4293#false} is VALID [2022-02-20 20:01:19,447 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 47 [2022-02-20 20:01:19,448 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:19,451 INFO L290 TraceCheckUtils]: 0: Hoare triple {4292#true} havoc ~__retres1~2; {4292#true} is VALID [2022-02-20 20:01:19,451 INFO L290 TraceCheckUtils]: 1: Hoare triple {4292#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {4292#true} is VALID [2022-02-20 20:01:19,451 INFO L290 TraceCheckUtils]: 2: Hoare triple {4292#true} #res := ~__retres1~2; {4292#true} is VALID [2022-02-20 20:01:19,451 INFO L290 TraceCheckUtils]: 3: Hoare triple {4292#true} assume true; {4292#true} is VALID [2022-02-20 20:01:19,451 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {4292#true} {4293#false} #2065#return; {4293#false} is VALID [2022-02-20 20:01:19,452 INFO L290 TraceCheckUtils]: 0: Hoare triple {4292#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(17, 2);call #Ultimate.allocInit(12, 3);~fast_clk_edge~0 := 0;~slow_clk_edge~0 := 0;~q_buf_0~0 := 0;~q_free~0 := 0;~q_read_ev~0 := 0;~q_write_ev~0 := 0;~q_req_up~0 := 0;~q_ev~0 := 0;~p_num_write~0 := 0;~p_last_write~0 := 0;~p_dw_st~0 := 0;~p_dw_pc~0 := 0;~p_dw_i~0 := 0;~c_num_read~0 := 0;~c_last_read~0 := 0;~c_dr_st~0 := 0;~c_dr_pc~0 := 0;~c_dr_i~0 := 0;~a_t~0 := 0;~t~0 := 0;~m_pc~0 := 0;~t1_pc~0 := 0;~t2_pc~0 := 0;~t3_pc~0 := 0;~t4_pc~0 := 0;~t5_pc~0 := 0;~t6_pc~0 := 0;~t7_pc~0 := 0;~t8_pc~0 := 0;~t9_pc~0 := 0;~t10_pc~0 := 0;~t11_pc~0 := 0;~t12_pc~0 := 0;~t13_pc~0 := 0;~m_st~0 := 0;~t1_st~0 := 0;~t2_st~0 := 0;~t3_st~0 := 0;~t4_st~0 := 0;~t5_st~0 := 0;~t6_st~0 := 0;~t7_st~0 := 0;~t8_st~0 := 0;~t9_st~0 := 0;~t10_st~0 := 0;~t11_st~0 := 0;~t12_st~0 := 0;~t13_st~0 := 0;~m_i~0 := 0;~t1_i~0 := 0;~t2_i~0 := 0;~t3_i~0 := 0;~t4_i~0 := 0;~t5_i~0 := 0;~t6_i~0 := 0;~t7_i~0 := 0;~t8_i~0 := 0;~t9_i~0 := 0;~t10_i~0 := 0;~t11_i~0 := 0;~t12_i~0 := 0;~t13_i~0 := 0;~M_E~0 := 2;~T1_E~0 := 2;~T2_E~0 := 2;~T3_E~0 := 2;~T4_E~0 := 2;~T5_E~0 := 2;~T6_E~0 := 2;~T7_E~0 := 2;~T8_E~0 := 2;~T9_E~0 := 2;~T10_E~0 := 2;~T11_E~0 := 2;~T12_E~0 := 2;~T13_E~0 := 2;~E_M~0 := 2;~E_1~0 := 2;~E_2~0 := 2;~E_3~0 := 2;~E_4~0 := 2;~E_5~0 := 2;~E_6~0 := 2;~E_7~0 := 2;~E_8~0 := 2;~E_9~0 := 2;~E_10~0 := 2;~E_11~0 := 2;~E_12~0 := 2;~E_13~0 := 2;~token~0 := 0;~local~0 := 0; {4294#(= ~q_req_up~0 0)} is VALID [2022-02-20 20:01:19,452 INFO L290 TraceCheckUtils]: 1: Hoare triple {4294#(= ~q_req_up~0 0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet53#1, main_#t~ret54#1, main_#t~ret55#1;assume -2147483648 <= main_#t~nondet53#1 && main_#t~nondet53#1 <= 2147483647; {4294#(= ~q_req_up~0 0)} is VALID [2022-02-20 20:01:19,453 INFO L290 TraceCheckUtils]: 2: Hoare triple {4294#(= ~q_req_up~0 0)} assume 0 != main_#t~nondet53#1;havoc main_#t~nondet53#1;assume { :begin_inline_main1 } true;havoc main1_#res#1;havoc main1_~__retres1~3#1;havoc main1_~__retres1~3#1;assume { :begin_inline_init_model1 } true;~fast_clk_edge~0 := 2;~slow_clk_edge~0 := 2;~q_free~0 := 1;~q_write_ev~0 := 2;~q_read_ev~0 := ~q_write_ev~0;~p_num_write~0 := 0;~p_dw_pc~0 := 0;~p_dw_i~0 := 1;~c_num_read~0 := 0;~c_dr_pc~0 := 0;~c_dr_i~0 := 1; {4295#(= ~q_req_up~0 ~p_dw_pc~0)} is VALID [2022-02-20 20:01:19,453 INFO L290 TraceCheckUtils]: 3: Hoare triple {4295#(= ~q_req_up~0 ~p_dw_pc~0)} assume { :end_inline_init_model1 } true;assume { :begin_inline_start_simulation1 } true;havoc start_simulation1_#t~ret14#1, start_simulation1_#t~ret15#1, start_simulation1_~kernel_st~0#1, start_simulation1_~tmp~4#1, start_simulation1_~tmp___0~3#1;havoc start_simulation1_~kernel_st~0#1;havoc start_simulation1_~tmp~4#1;havoc start_simulation1_~tmp___0~3#1;start_simulation1_~kernel_st~0#1 := 0; {4295#(= ~q_req_up~0 ~p_dw_pc~0)} is VALID [2022-02-20 20:01:19,454 INFO L272 TraceCheckUtils]: 4: Hoare triple {4295#(= ~q_req_up~0 ~p_dw_pc~0)} call update_channels1(); {4334#(and (= ~q_ev~0 |old(~q_ev~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~q_req_up~0 |old(~q_req_up~0)|))} is VALID [2022-02-20 20:01:19,454 INFO L290 TraceCheckUtils]: 5: Hoare triple {4334#(and (= ~q_ev~0 |old(~q_ev~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~q_req_up~0 |old(~q_req_up~0)|))} assume !(1 == ~q_req_up~0); {4335#(not (= |old(~q_req_up~0)| 1))} is VALID [2022-02-20 20:01:19,455 INFO L290 TraceCheckUtils]: 6: Hoare triple {4335#(not (= |old(~q_req_up~0)| 1))} assume true; {4335#(not (= |old(~q_req_up~0)| 1))} is VALID [2022-02-20 20:01:19,455 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {4335#(not (= |old(~q_req_up~0)| 1))} {4295#(= ~q_req_up~0 ~p_dw_pc~0)} #2057#return; {4299#(not (= ~p_dw_pc~0 1))} is VALID [2022-02-20 20:01:19,456 INFO L290 TraceCheckUtils]: 8: Hoare triple {4299#(not (= ~p_dw_pc~0 1))} assume { :begin_inline_init_threads1 } true; {4299#(not (= ~p_dw_pc~0 1))} is VALID [2022-02-20 20:01:19,456 INFO L290 TraceCheckUtils]: 9: Hoare triple {4299#(not (= ~p_dw_pc~0 1))} assume 1 == ~p_dw_i~0;~p_dw_st~0 := 0; {4299#(not (= ~p_dw_pc~0 1))} is VALID [2022-02-20 20:01:19,456 INFO L290 TraceCheckUtils]: 10: Hoare triple {4299#(not (= ~p_dw_pc~0 1))} assume 1 == ~c_dr_i~0;~c_dr_st~0 := 0; {4299#(not (= ~p_dw_pc~0 1))} is VALID [2022-02-20 20:01:19,457 INFO L290 TraceCheckUtils]: 11: Hoare triple {4299#(not (= ~p_dw_pc~0 1))} assume { :end_inline_init_threads1 } true; {4299#(not (= ~p_dw_pc~0 1))} is VALID [2022-02-20 20:01:19,457 INFO L272 TraceCheckUtils]: 12: Hoare triple {4299#(not (= ~p_dw_pc~0 1))} call fire_delta_events1(); {4336#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:19,457 INFO L290 TraceCheckUtils]: 13: Hoare triple {4336#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(0 == ~q_read_ev~0); {4292#true} is VALID [2022-02-20 20:01:19,458 INFO L290 TraceCheckUtils]: 14: Hoare triple {4292#true} assume !(0 == ~q_write_ev~0); {4292#true} is VALID [2022-02-20 20:01:19,458 INFO L290 TraceCheckUtils]: 15: Hoare triple {4292#true} assume true; {4292#true} is VALID [2022-02-20 20:01:19,458 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4292#true} {4299#(not (= ~p_dw_pc~0 1))} #2059#return; {4299#(not (= ~p_dw_pc~0 1))} is VALID [2022-02-20 20:01:19,459 INFO L272 TraceCheckUtils]: 17: Hoare triple {4299#(not (= ~p_dw_pc~0 1))} call activate_threads1(); {4337#(and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2022-02-20 20:01:19,459 INFO L290 TraceCheckUtils]: 18: Hoare triple {4337#(and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~1;havoc ~tmp___0~1; {4292#true} is VALID [2022-02-20 20:01:19,459 INFO L272 TraceCheckUtils]: 19: Hoare triple {4292#true} call #t~ret8 := is_do_write_p_triggered(); {4292#true} is VALID [2022-02-20 20:01:19,459 INFO L290 TraceCheckUtils]: 20: Hoare triple {4292#true} havoc ~__retres1~0; {4292#true} is VALID [2022-02-20 20:01:19,460 INFO L290 TraceCheckUtils]: 21: Hoare triple {4292#true} assume 1 == ~p_dw_pc~0; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,460 INFO L290 TraceCheckUtils]: 22: Hoare triple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} assume 1 == ~fast_clk_edge~0;~__retres1~0 := 1; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,461 INFO L290 TraceCheckUtils]: 23: Hoare triple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} #res := ~__retres1~0; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,461 INFO L290 TraceCheckUtils]: 24: Hoare triple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} assume true; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,461 INFO L284 TraceCheckUtils]: 25: Hoare quadruple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} {4292#true} #2053#return; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,462 INFO L290 TraceCheckUtils]: 26: Hoare triple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,462 INFO L290 TraceCheckUtils]: 27: Hoare triple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} assume 0 != ~tmp~1;~p_dw_st~0 := 0; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,463 INFO L272 TraceCheckUtils]: 28: Hoare triple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} call #t~ret9 := is_do_read_c_triggered(); {4292#true} is VALID [2022-02-20 20:01:19,463 INFO L290 TraceCheckUtils]: 29: Hoare triple {4292#true} havoc ~__retres1~1; {4292#true} is VALID [2022-02-20 20:01:19,463 INFO L290 TraceCheckUtils]: 30: Hoare triple {4292#true} assume 1 == ~c_dr_pc~0; {4292#true} is VALID [2022-02-20 20:01:19,463 INFO L290 TraceCheckUtils]: 31: Hoare triple {4292#true} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {4292#true} is VALID [2022-02-20 20:01:19,463 INFO L290 TraceCheckUtils]: 32: Hoare triple {4292#true} #res := ~__retres1~1; {4292#true} is VALID [2022-02-20 20:01:19,463 INFO L290 TraceCheckUtils]: 33: Hoare triple {4292#true} assume true; {4292#true} is VALID [2022-02-20 20:01:19,464 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {4292#true} {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} #2055#return; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,464 INFO L290 TraceCheckUtils]: 35: Hoare triple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,465 INFO L290 TraceCheckUtils]: 36: Hoare triple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} assume 0 != ~tmp___0~1;~c_dr_st~0 := 0; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,465 INFO L290 TraceCheckUtils]: 37: Hoare triple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} assume true; {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} is VALID [2022-02-20 20:01:19,466 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {4344#(= (+ (- 1) ~p_dw_pc~0) 0)} {4299#(not (= ~p_dw_pc~0 1))} #2061#return; {4293#false} is VALID [2022-02-20 20:01:19,466 INFO L272 TraceCheckUtils]: 39: Hoare triple {4293#false} call reset_delta_events1(); {4336#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:19,466 INFO L290 TraceCheckUtils]: 40: Hoare triple {4336#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(1 == ~q_read_ev~0); {4292#true} is VALID [2022-02-20 20:01:19,466 INFO L290 TraceCheckUtils]: 41: Hoare triple {4292#true} assume 1 == ~q_write_ev~0;~q_write_ev~0 := 2; {4292#true} is VALID [2022-02-20 20:01:19,466 INFO L290 TraceCheckUtils]: 42: Hoare triple {4292#true} assume true; {4292#true} is VALID [2022-02-20 20:01:19,467 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {4292#true} {4293#false} #2063#return; {4293#false} is VALID [2022-02-20 20:01:19,467 INFO L290 TraceCheckUtils]: 44: Hoare triple {4293#false} assume !false; {4293#false} is VALID [2022-02-20 20:01:19,467 INFO L290 TraceCheckUtils]: 45: Hoare triple {4293#false} start_simulation1_~kernel_st~0#1 := 1;assume { :begin_inline_eval1 } true;havoc eval1_#t~ret10#1, eval1_#t~nondet11#1, eval1_#t~nondet12#1, eval1_~tmp~2#1, eval1_~tmp___0~2#1, eval1_~tmp___1~0#1;havoc eval1_~tmp~2#1;havoc eval1_~tmp___0~2#1;havoc eval1_~tmp___1~0#1; {4293#false} is VALID [2022-02-20 20:01:19,467 INFO L290 TraceCheckUtils]: 46: Hoare triple {4293#false} assume !false; {4293#false} is VALID [2022-02-20 20:01:19,467 INFO L272 TraceCheckUtils]: 47: Hoare triple {4293#false} call eval1_#t~ret10#1 := exists_runnable_thread1(); {4292#true} is VALID [2022-02-20 20:01:19,468 INFO L290 TraceCheckUtils]: 48: Hoare triple {4292#true} havoc ~__retres1~2; {4292#true} is VALID [2022-02-20 20:01:19,468 INFO L290 TraceCheckUtils]: 49: Hoare triple {4292#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {4292#true} is VALID [2022-02-20 20:01:19,468 INFO L290 TraceCheckUtils]: 50: Hoare triple {4292#true} #res := ~__retres1~2; {4292#true} is VALID [2022-02-20 20:01:19,468 INFO L290 TraceCheckUtils]: 51: Hoare triple {4292#true} assume true; {4292#true} is VALID [2022-02-20 20:01:19,468 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {4292#true} {4293#false} #2065#return; {4293#false} is VALID [2022-02-20 20:01:19,468 INFO L290 TraceCheckUtils]: 53: Hoare triple {4293#false} assume -2147483648 <= eval1_#t~ret10#1 && eval1_#t~ret10#1 <= 2147483647;eval1_~tmp___1~0#1 := eval1_#t~ret10#1;havoc eval1_#t~ret10#1; {4293#false} is VALID [2022-02-20 20:01:19,469 INFO L290 TraceCheckUtils]: 54: Hoare triple {4293#false} assume 0 != eval1_~tmp___1~0#1; {4293#false} is VALID [2022-02-20 20:01:19,469 INFO L290 TraceCheckUtils]: 55: Hoare triple {4293#false} assume !(0 == ~p_dw_st~0); {4293#false} is VALID [2022-02-20 20:01:19,469 INFO L290 TraceCheckUtils]: 56: Hoare triple {4293#false} assume 0 == ~c_dr_st~0;assume -2147483648 <= eval1_#t~nondet12#1 && eval1_#t~nondet12#1 <= 2147483647;eval1_~tmp___0~2#1 := eval1_#t~nondet12#1;havoc eval1_#t~nondet12#1; {4293#false} is VALID [2022-02-20 20:01:19,469 INFO L290 TraceCheckUtils]: 57: Hoare triple {4293#false} assume 0 != eval1_~tmp___0~2#1;~c_dr_st~0 := 1;assume { :begin_inline_do_read_c } true;havoc do_read_c_~a~0#1;havoc do_read_c_~a~0#1; {4293#false} is VALID [2022-02-20 20:01:19,469 INFO L290 TraceCheckUtils]: 58: Hoare triple {4293#false} assume !(0 == ~c_dr_pc~0); {4293#false} is VALID [2022-02-20 20:01:19,469 INFO L290 TraceCheckUtils]: 59: Hoare triple {4293#false} assume 2 == ~c_dr_pc~0; {4293#false} is VALID [2022-02-20 20:01:19,470 INFO L290 TraceCheckUtils]: 60: Hoare triple {4293#false} do_read_c_~a~0#1 := ~a_t~0; {4293#false} is VALID [2022-02-20 20:01:19,470 INFO L290 TraceCheckUtils]: 61: Hoare triple {4293#false} do_read_c_~a~0#1 := ~q_buf_0~0;~c_last_read~0 := do_read_c_~a~0#1;~c_num_read~0 := 1 + ~c_num_read~0;~q_free~0 := 1;~q_req_up~0 := 1; {4293#false} is VALID [2022-02-20 20:01:19,470 INFO L290 TraceCheckUtils]: 62: Hoare triple {4293#false} assume !(~p_last_write~0 == ~c_last_read~0); {4293#false} is VALID [2022-02-20 20:01:19,470 INFO L272 TraceCheckUtils]: 63: Hoare triple {4293#false} call error1(); {4293#false} is VALID [2022-02-20 20:01:19,470 INFO L290 TraceCheckUtils]: 64: Hoare triple {4293#false} assume !false; {4293#false} is VALID [2022-02-20 20:01:19,471 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 20:01:19,471 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:01:19,471 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [579203805] [2022-02-20 20:01:19,471 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [579203805] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:01:19,472 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:01:19,472 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-02-20 20:01:19,472 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [492392626] [2022-02-20 20:01:19,472 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:01:19,473 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.0) internal successors, (50), 7 states have internal predecessors, (50), 5 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 3 states have call predecessors, (7), 5 states have call successors, (7) Word has length 65 [2022-02-20 20:01:19,474 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:01:19,474 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 5.0) internal successors, (50), 7 states have internal predecessors, (50), 5 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 3 states have call predecessors, (7), 5 states have call successors, (7) [2022-02-20 20:01:19,517 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:01:19,517 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 20:01:19,518 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:01:19,518 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 20:01:19,518 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=72, Unknown=0, NotChecked=0, Total=90 [2022-02-20 20:01:19,519 INFO L87 Difference]: Start difference. First operand 626 states and 952 transitions. Second operand has 10 states, 10 states have (on average 5.0) internal successors, (50), 7 states have internal predecessors, (50), 5 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 3 states have call predecessors, (7), 5 states have call successors, (7) [2022-02-20 20:01:26,950 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:26,951 INFO L93 Difference]: Finished difference Result 1659 states and 2412 transitions. [2022-02-20 20:01:26,951 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 31 states. [2022-02-20 20:01:26,952 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.0) internal successors, (50), 7 states have internal predecessors, (50), 5 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 3 states have call predecessors, (7), 5 states have call successors, (7) Word has length 65 [2022-02-20 20:01:26,952 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 20:01:26,953 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 5.0) internal successors, (50), 7 states have internal predecessors, (50), 5 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 3 states have call predecessors, (7), 5 states have call successors, (7) [2022-02-20 20:01:26,971 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 1600 transitions. [2022-02-20 20:01:26,971 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 5.0) internal successors, (50), 7 states have internal predecessors, (50), 5 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 3 states have call predecessors, (7), 5 states have call successors, (7) [2022-02-20 20:01:26,988 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 1600 transitions. [2022-02-20 20:01:26,989 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 31 states and 1600 transitions. [2022-02-20 20:01:28,332 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1600 edges. 1600 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:01:28,477 INFO L225 Difference]: With dead ends: 1659 [2022-02-20 20:01:28,477 INFO L226 Difference]: Without dead ends: 1438 [2022-02-20 20:01:28,481 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 23 SyntacticMatches, 0 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 337 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=257, Invalid=1075, Unknown=0, NotChecked=0, Total=1332 [2022-02-20 20:01:28,484 INFO L933 BasicCegarLoop]: 930 mSDtfsCounter, 4518 mSDsluCounter, 2016 mSDsCounter, 0 mSdLazyCounter, 1794 mSolverCounterSat, 751 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 4538 SdHoareTripleChecker+Valid, 2946 SdHoareTripleChecker+Invalid, 2545 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 751 IncrementalHoareTripleChecker+Valid, 1794 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.5s IncrementalHoareTripleChecker+Time [2022-02-20 20:01:28,484 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [4538 Valid, 2946 Invalid, 2545 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [751 Valid, 1794 Invalid, 0 Unknown, 0 Unchecked, 2.5s Time] [2022-02-20 20:01:28,487 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1438 states. [2022-02-20 20:01:28,551 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1438 to 1299. [2022-02-20 20:01:28,551 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 20:01:28,558 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1438 states. Second operand has 1299 states, 1089 states have (on average 1.4471992653810835) internal successors, (1576), 1103 states have internal predecessors, (1576), 127 states have call successors, (127), 74 states have call predecessors, (127), 81 states have return successors, (139), 123 states have call predecessors, (139), 125 states have call successors, (139) [2022-02-20 20:01:28,562 INFO L74 IsIncluded]: Start isIncluded. First operand 1438 states. Second operand has 1299 states, 1089 states have (on average 1.4471992653810835) internal successors, (1576), 1103 states have internal predecessors, (1576), 127 states have call successors, (127), 74 states have call predecessors, (127), 81 states have return successors, (139), 123 states have call predecessors, (139), 125 states have call successors, (139) [2022-02-20 20:01:28,566 INFO L87 Difference]: Start difference. First operand 1438 states. Second operand has 1299 states, 1089 states have (on average 1.4471992653810835) internal successors, (1576), 1103 states have internal predecessors, (1576), 127 states have call successors, (127), 74 states have call predecessors, (127), 81 states have return successors, (139), 123 states have call predecessors, (139), 125 states have call successors, (139) [2022-02-20 20:01:28,666 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:28,666 INFO L93 Difference]: Finished difference Result 1438 states and 2022 transitions. [2022-02-20 20:01:28,666 INFO L276 IsEmpty]: Start isEmpty. Operand 1438 states and 2022 transitions. [2022-02-20 20:01:28,672 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:01:28,673 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:01:28,677 INFO L74 IsIncluded]: Start isIncluded. First operand has 1299 states, 1089 states have (on average 1.4471992653810835) internal successors, (1576), 1103 states have internal predecessors, (1576), 127 states have call successors, (127), 74 states have call predecessors, (127), 81 states have return successors, (139), 123 states have call predecessors, (139), 125 states have call successors, (139) Second operand 1438 states. [2022-02-20 20:01:28,681 INFO L87 Difference]: Start difference. First operand has 1299 states, 1089 states have (on average 1.4471992653810835) internal successors, (1576), 1103 states have internal predecessors, (1576), 127 states have call successors, (127), 74 states have call predecessors, (127), 81 states have return successors, (139), 123 states have call predecessors, (139), 125 states have call successors, (139) Second operand 1438 states. [2022-02-20 20:01:28,779 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:28,780 INFO L93 Difference]: Finished difference Result 1438 states and 2022 transitions. [2022-02-20 20:01:28,780 INFO L276 IsEmpty]: Start isEmpty. Operand 1438 states and 2022 transitions. [2022-02-20 20:01:28,784 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:01:28,784 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:01:28,785 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 20:01:28,785 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 20:01:28,789 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1299 states, 1089 states have (on average 1.4471992653810835) internal successors, (1576), 1103 states have internal predecessors, (1576), 127 states have call successors, (127), 74 states have call predecessors, (127), 81 states have return successors, (139), 123 states have call predecessors, (139), 125 states have call successors, (139) [2022-02-20 20:01:28,899 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1299 states to 1299 states and 1842 transitions. [2022-02-20 20:01:28,900 INFO L78 Accepts]: Start accepts. Automaton has 1299 states and 1842 transitions. Word has length 65 [2022-02-20 20:01:28,901 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:01:28,901 INFO L470 AbstractCegarLoop]: Abstraction has 1299 states and 1842 transitions. [2022-02-20 20:01:28,902 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 5.0) internal successors, (50), 7 states have internal predecessors, (50), 5 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 3 states have call predecessors, (7), 5 states have call successors, (7) [2022-02-20 20:01:28,902 INFO L276 IsEmpty]: Start isEmpty. Operand 1299 states and 1842 transitions. [2022-02-20 20:01:28,905 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-02-20 20:01:28,905 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 20:01:28,905 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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] [2022-02-20 20:01:28,905 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 20:01:28,906 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting error1Err0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, error1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 20:01:28,906 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:01:28,906 INFO L85 PathProgramCache]: Analyzing trace with hash 1163818986, now seen corresponding path program 1 times [2022-02-20 20:01:28,906 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:01:28,907 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1168545832] [2022-02-20 20:01:28,907 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:01:28,907 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:01:28,940 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:28,986 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 4 [2022-02-20 20:01:28,988 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:28,992 INFO L290 TraceCheckUtils]: 0: Hoare triple {11275#(and (= ~q_ev~0 |old(~q_ev~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~q_req_up~0 |old(~q_req_up~0)|))} assume !(1 == ~q_req_up~0); {11235#true} is VALID [2022-02-20 20:01:28,992 INFO L290 TraceCheckUtils]: 1: Hoare triple {11235#true} assume true; {11235#true} is VALID [2022-02-20 20:01:28,993 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {11235#true} {11235#true} #2057#return; {11235#true} is VALID [2022-02-20 20:01:28,997 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-02-20 20:01:29,001 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:29,004 INFO L290 TraceCheckUtils]: 0: Hoare triple {11276#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(0 == ~q_read_ev~0); {11235#true} is VALID [2022-02-20 20:01:29,005 INFO L290 TraceCheckUtils]: 1: Hoare triple {11235#true} assume !(0 == ~q_write_ev~0); {11235#true} is VALID [2022-02-20 20:01:29,005 INFO L290 TraceCheckUtils]: 2: Hoare triple {11235#true} assume true; {11235#true} is VALID [2022-02-20 20:01:29,005 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11235#true} {11235#true} #2059#return; {11235#true} is VALID [2022-02-20 20:01:29,010 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-02-20 20:01:29,021 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:29,061 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 20:01:29,063 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:29,092 INFO L290 TraceCheckUtils]: 0: Hoare triple {11235#true} havoc ~__retres1~0; {11235#true} is VALID [2022-02-20 20:01:29,092 INFO L290 TraceCheckUtils]: 1: Hoare triple {11235#true} assume !(1 == ~p_dw_pc~0); {11235#true} is VALID [2022-02-20 20:01:29,092 INFO L290 TraceCheckUtils]: 2: Hoare triple {11235#true} assume !(2 == ~p_dw_pc~0); {11235#true} is VALID [2022-02-20 20:01:29,093 INFO L290 TraceCheckUtils]: 3: Hoare triple {11235#true} ~__retres1~0 := 0; {11293#(and (<= is_do_write_p_triggered_~__retres1~0 0) (<= 0 is_do_write_p_triggered_~__retres1~0))} is VALID [2022-02-20 20:01:29,093 INFO L290 TraceCheckUtils]: 4: Hoare triple {11293#(and (<= is_do_write_p_triggered_~__retres1~0 0) (<= 0 is_do_write_p_triggered_~__retres1~0))} #res := ~__retres1~0; {11294#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} is VALID [2022-02-20 20:01:29,094 INFO L290 TraceCheckUtils]: 5: Hoare triple {11294#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} assume true; {11294#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} is VALID [2022-02-20 20:01:29,095 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {11294#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} {11235#true} #2053#return; {11285#(and (<= 0 |activate_threads1_#t~ret8|) (<= |activate_threads1_#t~ret8| 0))} is VALID [2022-02-20 20:01:29,095 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-02-20 20:01:29,096 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:29,098 INFO L290 TraceCheckUtils]: 0: Hoare triple {11235#true} havoc ~__retres1~1; {11235#true} is VALID [2022-02-20 20:01:29,099 INFO L290 TraceCheckUtils]: 1: Hoare triple {11235#true} assume 1 == ~c_dr_pc~0; {11235#true} is VALID [2022-02-20 20:01:29,099 INFO L290 TraceCheckUtils]: 2: Hoare triple {11235#true} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {11235#true} is VALID [2022-02-20 20:01:29,099 INFO L290 TraceCheckUtils]: 3: Hoare triple {11235#true} #res := ~__retres1~1; {11235#true} is VALID [2022-02-20 20:01:29,099 INFO L290 TraceCheckUtils]: 4: Hoare triple {11235#true} assume true; {11235#true} is VALID [2022-02-20 20:01:29,099 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {11235#true} {11236#false} #2055#return; {11236#false} is VALID [2022-02-20 20:01:29,099 INFO L290 TraceCheckUtils]: 0: Hoare triple {11277#(and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~1;havoc ~tmp___0~1; {11235#true} is VALID [2022-02-20 20:01:29,100 INFO L272 TraceCheckUtils]: 1: Hoare triple {11235#true} call #t~ret8 := is_do_write_p_triggered(); {11235#true} is VALID [2022-02-20 20:01:29,100 INFO L290 TraceCheckUtils]: 2: Hoare triple {11235#true} havoc ~__retres1~0; {11235#true} is VALID [2022-02-20 20:01:29,100 INFO L290 TraceCheckUtils]: 3: Hoare triple {11235#true} assume !(1 == ~p_dw_pc~0); {11235#true} is VALID [2022-02-20 20:01:29,100 INFO L290 TraceCheckUtils]: 4: Hoare triple {11235#true} assume !(2 == ~p_dw_pc~0); {11235#true} is VALID [2022-02-20 20:01:29,101 INFO L290 TraceCheckUtils]: 5: Hoare triple {11235#true} ~__retres1~0 := 0; {11293#(and (<= is_do_write_p_triggered_~__retres1~0 0) (<= 0 is_do_write_p_triggered_~__retres1~0))} is VALID [2022-02-20 20:01:29,101 INFO L290 TraceCheckUtils]: 6: Hoare triple {11293#(and (<= is_do_write_p_triggered_~__retres1~0 0) (<= 0 is_do_write_p_triggered_~__retres1~0))} #res := ~__retres1~0; {11294#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} is VALID [2022-02-20 20:01:29,102 INFO L290 TraceCheckUtils]: 7: Hoare triple {11294#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} assume true; {11294#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} is VALID [2022-02-20 20:01:29,102 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {11294#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} {11235#true} #2053#return; {11285#(and (<= 0 |activate_threads1_#t~ret8|) (<= |activate_threads1_#t~ret8| 0))} is VALID [2022-02-20 20:01:29,103 INFO L290 TraceCheckUtils]: 9: Hoare triple {11285#(and (<= 0 |activate_threads1_#t~ret8|) (<= |activate_threads1_#t~ret8| 0))} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {11286#(and (<= activate_threads1_~tmp~1 0) (< 0 (+ activate_threads1_~tmp~1 1)))} is VALID [2022-02-20 20:01:29,104 INFO L290 TraceCheckUtils]: 10: Hoare triple {11286#(and (<= activate_threads1_~tmp~1 0) (< 0 (+ activate_threads1_~tmp~1 1)))} assume 0 != ~tmp~1;~p_dw_st~0 := 0; {11236#false} is VALID [2022-02-20 20:01:29,104 INFO L272 TraceCheckUtils]: 11: Hoare triple {11236#false} call #t~ret9 := is_do_read_c_triggered(); {11235#true} is VALID [2022-02-20 20:01:29,104 INFO L290 TraceCheckUtils]: 12: Hoare triple {11235#true} havoc ~__retres1~1; {11235#true} is VALID [2022-02-20 20:01:29,104 INFO L290 TraceCheckUtils]: 13: Hoare triple {11235#true} assume 1 == ~c_dr_pc~0; {11235#true} is VALID [2022-02-20 20:01:29,104 INFO L290 TraceCheckUtils]: 14: Hoare triple {11235#true} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {11235#true} is VALID [2022-02-20 20:01:29,104 INFO L290 TraceCheckUtils]: 15: Hoare triple {11235#true} #res := ~__retres1~1; {11235#true} is VALID [2022-02-20 20:01:29,105 INFO L290 TraceCheckUtils]: 16: Hoare triple {11235#true} assume true; {11235#true} is VALID [2022-02-20 20:01:29,105 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {11235#true} {11236#false} #2055#return; {11236#false} is VALID [2022-02-20 20:01:29,105 INFO L290 TraceCheckUtils]: 18: Hoare triple {11236#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {11236#false} is VALID [2022-02-20 20:01:29,105 INFO L290 TraceCheckUtils]: 19: Hoare triple {11236#false} assume 0 != ~tmp___0~1;~c_dr_st~0 := 0; {11236#false} is VALID [2022-02-20 20:01:29,105 INFO L290 TraceCheckUtils]: 20: Hoare triple {11236#false} assume true; {11236#false} is VALID [2022-02-20 20:01:29,105 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11236#false} {11235#true} #2061#return; {11236#false} is VALID [2022-02-20 20:01:29,106 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 40 [2022-02-20 20:01:29,107 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:29,110 INFO L290 TraceCheckUtils]: 0: Hoare triple {11276#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(1 == ~q_read_ev~0); {11235#true} is VALID [2022-02-20 20:01:29,110 INFO L290 TraceCheckUtils]: 1: Hoare triple {11235#true} assume 1 == ~q_write_ev~0;~q_write_ev~0 := 2; {11235#true} is VALID [2022-02-20 20:01:29,110 INFO L290 TraceCheckUtils]: 2: Hoare triple {11235#true} assume true; {11235#true} is VALID [2022-02-20 20:01:29,110 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11235#true} {11236#false} #2063#return; {11236#false} is VALID [2022-02-20 20:01:29,110 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 48 [2022-02-20 20:01:29,112 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:29,114 INFO L290 TraceCheckUtils]: 0: Hoare triple {11235#true} havoc ~__retres1~2; {11235#true} is VALID [2022-02-20 20:01:29,114 INFO L290 TraceCheckUtils]: 1: Hoare triple {11235#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {11235#true} is VALID [2022-02-20 20:01:29,114 INFO L290 TraceCheckUtils]: 2: Hoare triple {11235#true} #res := ~__retres1~2; {11235#true} is VALID [2022-02-20 20:01:29,114 INFO L290 TraceCheckUtils]: 3: Hoare triple {11235#true} assume true; {11235#true} is VALID [2022-02-20 20:01:29,114 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {11235#true} {11236#false} #2065#return; {11236#false} is VALID [2022-02-20 20:01:29,115 INFO L290 TraceCheckUtils]: 0: Hoare triple {11235#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(17, 2);call #Ultimate.allocInit(12, 3);~fast_clk_edge~0 := 0;~slow_clk_edge~0 := 0;~q_buf_0~0 := 0;~q_free~0 := 0;~q_read_ev~0 := 0;~q_write_ev~0 := 0;~q_req_up~0 := 0;~q_ev~0 := 0;~p_num_write~0 := 0;~p_last_write~0 := 0;~p_dw_st~0 := 0;~p_dw_pc~0 := 0;~p_dw_i~0 := 0;~c_num_read~0 := 0;~c_last_read~0 := 0;~c_dr_st~0 := 0;~c_dr_pc~0 := 0;~c_dr_i~0 := 0;~a_t~0 := 0;~t~0 := 0;~m_pc~0 := 0;~t1_pc~0 := 0;~t2_pc~0 := 0;~t3_pc~0 := 0;~t4_pc~0 := 0;~t5_pc~0 := 0;~t6_pc~0 := 0;~t7_pc~0 := 0;~t8_pc~0 := 0;~t9_pc~0 := 0;~t10_pc~0 := 0;~t11_pc~0 := 0;~t12_pc~0 := 0;~t13_pc~0 := 0;~m_st~0 := 0;~t1_st~0 := 0;~t2_st~0 := 0;~t3_st~0 := 0;~t4_st~0 := 0;~t5_st~0 := 0;~t6_st~0 := 0;~t7_st~0 := 0;~t8_st~0 := 0;~t9_st~0 := 0;~t10_st~0 := 0;~t11_st~0 := 0;~t12_st~0 := 0;~t13_st~0 := 0;~m_i~0 := 0;~t1_i~0 := 0;~t2_i~0 := 0;~t3_i~0 := 0;~t4_i~0 := 0;~t5_i~0 := 0;~t6_i~0 := 0;~t7_i~0 := 0;~t8_i~0 := 0;~t9_i~0 := 0;~t10_i~0 := 0;~t11_i~0 := 0;~t12_i~0 := 0;~t13_i~0 := 0;~M_E~0 := 2;~T1_E~0 := 2;~T2_E~0 := 2;~T3_E~0 := 2;~T4_E~0 := 2;~T5_E~0 := 2;~T6_E~0 := 2;~T7_E~0 := 2;~T8_E~0 := 2;~T9_E~0 := 2;~T10_E~0 := 2;~T11_E~0 := 2;~T12_E~0 := 2;~T13_E~0 := 2;~E_M~0 := 2;~E_1~0 := 2;~E_2~0 := 2;~E_3~0 := 2;~E_4~0 := 2;~E_5~0 := 2;~E_6~0 := 2;~E_7~0 := 2;~E_8~0 := 2;~E_9~0 := 2;~E_10~0 := 2;~E_11~0 := 2;~E_12~0 := 2;~E_13~0 := 2;~token~0 := 0;~local~0 := 0; {11235#true} is VALID [2022-02-20 20:01:29,115 INFO L290 TraceCheckUtils]: 1: Hoare triple {11235#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet53#1, main_#t~ret54#1, main_#t~ret55#1;assume -2147483648 <= main_#t~nondet53#1 && main_#t~nondet53#1 <= 2147483647; {11235#true} is VALID [2022-02-20 20:01:29,115 INFO L290 TraceCheckUtils]: 2: Hoare triple {11235#true} assume 0 != main_#t~nondet53#1;havoc main_#t~nondet53#1;assume { :begin_inline_main1 } true;havoc main1_#res#1;havoc main1_~__retres1~3#1;havoc main1_~__retres1~3#1;assume { :begin_inline_init_model1 } true;~fast_clk_edge~0 := 2;~slow_clk_edge~0 := 2;~q_free~0 := 1;~q_write_ev~0 := 2;~q_read_ev~0 := ~q_write_ev~0;~p_num_write~0 := 0;~p_dw_pc~0 := 0;~p_dw_i~0 := 1;~c_num_read~0 := 0;~c_dr_pc~0 := 0;~c_dr_i~0 := 1; {11235#true} is VALID [2022-02-20 20:01:29,115 INFO L290 TraceCheckUtils]: 3: Hoare triple {11235#true} assume { :end_inline_init_model1 } true;assume { :begin_inline_start_simulation1 } true;havoc start_simulation1_#t~ret14#1, start_simulation1_#t~ret15#1, start_simulation1_~kernel_st~0#1, start_simulation1_~tmp~4#1, start_simulation1_~tmp___0~3#1;havoc start_simulation1_~kernel_st~0#1;havoc start_simulation1_~tmp~4#1;havoc start_simulation1_~tmp___0~3#1;start_simulation1_~kernel_st~0#1 := 0; {11235#true} is VALID [2022-02-20 20:01:29,116 INFO L272 TraceCheckUtils]: 4: Hoare triple {11235#true} call update_channels1(); {11275#(and (= ~q_ev~0 |old(~q_ev~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~q_req_up~0 |old(~q_req_up~0)|))} is VALID [2022-02-20 20:01:29,116 INFO L290 TraceCheckUtils]: 5: Hoare triple {11275#(and (= ~q_ev~0 |old(~q_ev~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~q_req_up~0 |old(~q_req_up~0)|))} assume !(1 == ~q_req_up~0); {11235#true} is VALID [2022-02-20 20:01:29,116 INFO L290 TraceCheckUtils]: 6: Hoare triple {11235#true} assume true; {11235#true} is VALID [2022-02-20 20:01:29,116 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {11235#true} {11235#true} #2057#return; {11235#true} is VALID [2022-02-20 20:01:29,116 INFO L290 TraceCheckUtils]: 8: Hoare triple {11235#true} assume { :begin_inline_init_threads1 } true; {11235#true} is VALID [2022-02-20 20:01:29,117 INFO L290 TraceCheckUtils]: 9: Hoare triple {11235#true} assume 1 == ~p_dw_i~0;~p_dw_st~0 := 0; {11235#true} is VALID [2022-02-20 20:01:29,117 INFO L290 TraceCheckUtils]: 10: Hoare triple {11235#true} assume 1 == ~c_dr_i~0;~c_dr_st~0 := 0; {11235#true} is VALID [2022-02-20 20:01:29,117 INFO L290 TraceCheckUtils]: 11: Hoare triple {11235#true} assume { :end_inline_init_threads1 } true; {11235#true} is VALID [2022-02-20 20:01:29,117 INFO L272 TraceCheckUtils]: 12: Hoare triple {11235#true} call fire_delta_events1(); {11276#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:29,118 INFO L290 TraceCheckUtils]: 13: Hoare triple {11276#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(0 == ~q_read_ev~0); {11235#true} is VALID [2022-02-20 20:01:29,118 INFO L290 TraceCheckUtils]: 14: Hoare triple {11235#true} assume !(0 == ~q_write_ev~0); {11235#true} is VALID [2022-02-20 20:01:29,118 INFO L290 TraceCheckUtils]: 15: Hoare triple {11235#true} assume true; {11235#true} is VALID [2022-02-20 20:01:29,118 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {11235#true} {11235#true} #2059#return; {11235#true} is VALID [2022-02-20 20:01:29,119 INFO L272 TraceCheckUtils]: 17: Hoare triple {11235#true} call activate_threads1(); {11277#(and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2022-02-20 20:01:29,119 INFO L290 TraceCheckUtils]: 18: Hoare triple {11277#(and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~1;havoc ~tmp___0~1; {11235#true} is VALID [2022-02-20 20:01:29,119 INFO L272 TraceCheckUtils]: 19: Hoare triple {11235#true} call #t~ret8 := is_do_write_p_triggered(); {11235#true} is VALID [2022-02-20 20:01:29,119 INFO L290 TraceCheckUtils]: 20: Hoare triple {11235#true} havoc ~__retres1~0; {11235#true} is VALID [2022-02-20 20:01:29,119 INFO L290 TraceCheckUtils]: 21: Hoare triple {11235#true} assume !(1 == ~p_dw_pc~0); {11235#true} is VALID [2022-02-20 20:01:29,119 INFO L290 TraceCheckUtils]: 22: Hoare triple {11235#true} assume !(2 == ~p_dw_pc~0); {11235#true} is VALID [2022-02-20 20:01:29,120 INFO L290 TraceCheckUtils]: 23: Hoare triple {11235#true} ~__retres1~0 := 0; {11293#(and (<= is_do_write_p_triggered_~__retres1~0 0) (<= 0 is_do_write_p_triggered_~__retres1~0))} is VALID [2022-02-20 20:01:29,120 INFO L290 TraceCheckUtils]: 24: Hoare triple {11293#(and (<= is_do_write_p_triggered_~__retres1~0 0) (<= 0 is_do_write_p_triggered_~__retres1~0))} #res := ~__retres1~0; {11294#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} is VALID [2022-02-20 20:01:29,121 INFO L290 TraceCheckUtils]: 25: Hoare triple {11294#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} assume true; {11294#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} is VALID [2022-02-20 20:01:29,121 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11294#(and (<= 0 |is_do_write_p_triggered_#res|) (<= |is_do_write_p_triggered_#res| 0))} {11235#true} #2053#return; {11285#(and (<= 0 |activate_threads1_#t~ret8|) (<= |activate_threads1_#t~ret8| 0))} is VALID [2022-02-20 20:01:29,122 INFO L290 TraceCheckUtils]: 27: Hoare triple {11285#(and (<= 0 |activate_threads1_#t~ret8|) (<= |activate_threads1_#t~ret8| 0))} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {11286#(and (<= activate_threads1_~tmp~1 0) (< 0 (+ activate_threads1_~tmp~1 1)))} is VALID [2022-02-20 20:01:29,123 INFO L290 TraceCheckUtils]: 28: Hoare triple {11286#(and (<= activate_threads1_~tmp~1 0) (< 0 (+ activate_threads1_~tmp~1 1)))} assume 0 != ~tmp~1;~p_dw_st~0 := 0; {11236#false} is VALID [2022-02-20 20:01:29,123 INFO L272 TraceCheckUtils]: 29: Hoare triple {11236#false} call #t~ret9 := is_do_read_c_triggered(); {11235#true} is VALID [2022-02-20 20:01:29,123 INFO L290 TraceCheckUtils]: 30: Hoare triple {11235#true} havoc ~__retres1~1; {11235#true} is VALID [2022-02-20 20:01:29,123 INFO L290 TraceCheckUtils]: 31: Hoare triple {11235#true} assume 1 == ~c_dr_pc~0; {11235#true} is VALID [2022-02-20 20:01:29,123 INFO L290 TraceCheckUtils]: 32: Hoare triple {11235#true} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {11235#true} is VALID [2022-02-20 20:01:29,123 INFO L290 TraceCheckUtils]: 33: Hoare triple {11235#true} #res := ~__retres1~1; {11235#true} is VALID [2022-02-20 20:01:29,124 INFO L290 TraceCheckUtils]: 34: Hoare triple {11235#true} assume true; {11235#true} is VALID [2022-02-20 20:01:29,124 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {11235#true} {11236#false} #2055#return; {11236#false} is VALID [2022-02-20 20:01:29,124 INFO L290 TraceCheckUtils]: 36: Hoare triple {11236#false} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {11236#false} is VALID [2022-02-20 20:01:29,124 INFO L290 TraceCheckUtils]: 37: Hoare triple {11236#false} assume 0 != ~tmp___0~1;~c_dr_st~0 := 0; {11236#false} is VALID [2022-02-20 20:01:29,124 INFO L290 TraceCheckUtils]: 38: Hoare triple {11236#false} assume true; {11236#false} is VALID [2022-02-20 20:01:29,124 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {11236#false} {11235#true} #2061#return; {11236#false} is VALID [2022-02-20 20:01:29,125 INFO L272 TraceCheckUtils]: 40: Hoare triple {11236#false} call reset_delta_events1(); {11276#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:29,125 INFO L290 TraceCheckUtils]: 41: Hoare triple {11276#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(1 == ~q_read_ev~0); {11235#true} is VALID [2022-02-20 20:01:29,125 INFO L290 TraceCheckUtils]: 42: Hoare triple {11235#true} assume 1 == ~q_write_ev~0;~q_write_ev~0 := 2; {11235#true} is VALID [2022-02-20 20:01:29,125 INFO L290 TraceCheckUtils]: 43: Hoare triple {11235#true} assume true; {11235#true} is VALID [2022-02-20 20:01:29,125 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {11235#true} {11236#false} #2063#return; {11236#false} is VALID [2022-02-20 20:01:29,125 INFO L290 TraceCheckUtils]: 45: Hoare triple {11236#false} assume !false; {11236#false} is VALID [2022-02-20 20:01:29,125 INFO L290 TraceCheckUtils]: 46: Hoare triple {11236#false} start_simulation1_~kernel_st~0#1 := 1;assume { :begin_inline_eval1 } true;havoc eval1_#t~ret10#1, eval1_#t~nondet11#1, eval1_#t~nondet12#1, eval1_~tmp~2#1, eval1_~tmp___0~2#1, eval1_~tmp___1~0#1;havoc eval1_~tmp~2#1;havoc eval1_~tmp___0~2#1;havoc eval1_~tmp___1~0#1; {11236#false} is VALID [2022-02-20 20:01:29,126 INFO L290 TraceCheckUtils]: 47: Hoare triple {11236#false} assume !false; {11236#false} is VALID [2022-02-20 20:01:29,126 INFO L272 TraceCheckUtils]: 48: Hoare triple {11236#false} call eval1_#t~ret10#1 := exists_runnable_thread1(); {11235#true} is VALID [2022-02-20 20:01:29,126 INFO L290 TraceCheckUtils]: 49: Hoare triple {11235#true} havoc ~__retres1~2; {11235#true} is VALID [2022-02-20 20:01:29,126 INFO L290 TraceCheckUtils]: 50: Hoare triple {11235#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {11235#true} is VALID [2022-02-20 20:01:29,126 INFO L290 TraceCheckUtils]: 51: Hoare triple {11235#true} #res := ~__retres1~2; {11235#true} is VALID [2022-02-20 20:01:29,126 INFO L290 TraceCheckUtils]: 52: Hoare triple {11235#true} assume true; {11235#true} is VALID [2022-02-20 20:01:29,127 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {11235#true} {11236#false} #2065#return; {11236#false} is VALID [2022-02-20 20:01:29,127 INFO L290 TraceCheckUtils]: 54: Hoare triple {11236#false} assume -2147483648 <= eval1_#t~ret10#1 && eval1_#t~ret10#1 <= 2147483647;eval1_~tmp___1~0#1 := eval1_#t~ret10#1;havoc eval1_#t~ret10#1; {11236#false} is VALID [2022-02-20 20:01:29,127 INFO L290 TraceCheckUtils]: 55: Hoare triple {11236#false} assume 0 != eval1_~tmp___1~0#1; {11236#false} is VALID [2022-02-20 20:01:29,127 INFO L290 TraceCheckUtils]: 56: Hoare triple {11236#false} assume !(0 == ~p_dw_st~0); {11236#false} is VALID [2022-02-20 20:01:29,127 INFO L290 TraceCheckUtils]: 57: Hoare triple {11236#false} assume 0 == ~c_dr_st~0;assume -2147483648 <= eval1_#t~nondet12#1 && eval1_#t~nondet12#1 <= 2147483647;eval1_~tmp___0~2#1 := eval1_#t~nondet12#1;havoc eval1_#t~nondet12#1; {11236#false} is VALID [2022-02-20 20:01:29,127 INFO L290 TraceCheckUtils]: 58: Hoare triple {11236#false} assume 0 != eval1_~tmp___0~2#1;~c_dr_st~0 := 1;assume { :begin_inline_do_read_c } true;havoc do_read_c_~a~0#1;havoc do_read_c_~a~0#1; {11236#false} is VALID [2022-02-20 20:01:29,128 INFO L290 TraceCheckUtils]: 59: Hoare triple {11236#false} assume !(0 == ~c_dr_pc~0); {11236#false} is VALID [2022-02-20 20:01:29,128 INFO L290 TraceCheckUtils]: 60: Hoare triple {11236#false} assume 2 == ~c_dr_pc~0; {11236#false} is VALID [2022-02-20 20:01:29,128 INFO L290 TraceCheckUtils]: 61: Hoare triple {11236#false} do_read_c_~a~0#1 := ~a_t~0; {11236#false} is VALID [2022-02-20 20:01:29,128 INFO L290 TraceCheckUtils]: 62: Hoare triple {11236#false} do_read_c_~a~0#1 := ~q_buf_0~0;~c_last_read~0 := do_read_c_~a~0#1;~c_num_read~0 := 1 + ~c_num_read~0;~q_free~0 := 1;~q_req_up~0 := 1; {11236#false} is VALID [2022-02-20 20:01:29,128 INFO L290 TraceCheckUtils]: 63: Hoare triple {11236#false} assume !(~p_last_write~0 == ~c_last_read~0); {11236#false} is VALID [2022-02-20 20:01:29,128 INFO L272 TraceCheckUtils]: 64: Hoare triple {11236#false} call error1(); {11236#false} is VALID [2022-02-20 20:01:29,129 INFO L290 TraceCheckUtils]: 65: Hoare triple {11236#false} assume !false; {11236#false} is VALID [2022-02-20 20:01:29,129 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 20:01:29,129 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:01:29,129 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1168545832] [2022-02-20 20:01:29,130 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1168545832] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:01:29,130 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:01:29,130 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-02-20 20:01:29,130 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1974769135] [2022-02-20 20:01:29,130 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:01:29,131 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.666666666666667) internal successors, (51), 5 states have internal predecessors, (51), 2 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) Word has length 66 [2022-02-20 20:01:29,131 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:01:29,131 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 5.666666666666667) internal successors, (51), 5 states have internal predecessors, (51), 2 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-20 20:01:29,171 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:01:29,171 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 20:01:29,171 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:01:29,172 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 20:01:29,172 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-02-20 20:01:29,172 INFO L87 Difference]: Start difference. First operand 1299 states and 1842 transitions. Second operand has 9 states, 9 states have (on average 5.666666666666667) internal successors, (51), 5 states have internal predecessors, (51), 2 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-20 20:01:33,873 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:33,874 INFO L93 Difference]: Finished difference Result 2325 states and 3236 transitions. [2022-02-20 20:01:33,874 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-20 20:01:33,874 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.666666666666667) internal successors, (51), 5 states have internal predecessors, (51), 2 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) Word has length 66 [2022-02-20 20:01:33,875 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 20:01:33,875 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.666666666666667) internal successors, (51), 5 states have internal predecessors, (51), 2 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-20 20:01:33,883 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 976 transitions. [2022-02-20 20:01:33,883 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.666666666666667) internal successors, (51), 5 states have internal predecessors, (51), 2 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-20 20:01:33,893 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 976 transitions. [2022-02-20 20:01:33,893 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 976 transitions. [2022-02-20 20:01:34,660 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 976 edges. 976 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:01:34,787 INFO L225 Difference]: With dead ends: 2325 [2022-02-20 20:01:34,787 INFO L226 Difference]: Without dead ends: 1437 [2022-02-20 20:01:34,789 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 30 GetRequests, 16 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 25 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=66, Invalid=174, Unknown=0, NotChecked=0, Total=240 [2022-02-20 20:01:34,790 INFO L933 BasicCegarLoop]: 781 mSDtfsCounter, 706 mSDsluCounter, 2681 mSDsCounter, 0 mSdLazyCounter, 1821 mSolverCounterSat, 103 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 707 SdHoareTripleChecker+Valid, 3462 SdHoareTripleChecker+Invalid, 1924 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 103 IncrementalHoareTripleChecker+Valid, 1821 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.6s IncrementalHoareTripleChecker+Time [2022-02-20 20:01:34,791 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [707 Valid, 3462 Invalid, 1924 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [103 Valid, 1821 Invalid, 0 Unknown, 0 Unchecked, 1.6s Time] [2022-02-20 20:01:34,793 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1437 states. [2022-02-20 20:01:34,862 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1437 to 1329. [2022-02-20 20:01:34,862 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 20:01:34,866 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1437 states. Second operand has 1329 states, 1113 states have (on average 1.4348607367475292) internal successors, (1597), 1127 states have internal predecessors, (1597), 127 states have call successors, (127), 74 states have call predecessors, (127), 87 states have return successors, (145), 129 states have call predecessors, (145), 125 states have call successors, (145) [2022-02-20 20:01:34,869 INFO L74 IsIncluded]: Start isIncluded. First operand 1437 states. Second operand has 1329 states, 1113 states have (on average 1.4348607367475292) internal successors, (1597), 1127 states have internal predecessors, (1597), 127 states have call successors, (127), 74 states have call predecessors, (127), 87 states have return successors, (145), 129 states have call predecessors, (145), 125 states have call successors, (145) [2022-02-20 20:01:34,872 INFO L87 Difference]: Start difference. First operand 1437 states. Second operand has 1329 states, 1113 states have (on average 1.4348607367475292) internal successors, (1597), 1127 states have internal predecessors, (1597), 127 states have call successors, (127), 74 states have call predecessors, (127), 87 states have return successors, (145), 129 states have call predecessors, (145), 125 states have call successors, (145) [2022-02-20 20:01:34,971 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:34,972 INFO L93 Difference]: Finished difference Result 1437 states and 2017 transitions. [2022-02-20 20:01:34,972 INFO L276 IsEmpty]: Start isEmpty. Operand 1437 states and 2017 transitions. [2022-02-20 20:01:34,976 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:01:34,976 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:01:34,980 INFO L74 IsIncluded]: Start isIncluded. First operand has 1329 states, 1113 states have (on average 1.4348607367475292) internal successors, (1597), 1127 states have internal predecessors, (1597), 127 states have call successors, (127), 74 states have call predecessors, (127), 87 states have return successors, (145), 129 states have call predecessors, (145), 125 states have call successors, (145) Second operand 1437 states. [2022-02-20 20:01:34,983 INFO L87 Difference]: Start difference. First operand has 1329 states, 1113 states have (on average 1.4348607367475292) internal successors, (1597), 1127 states have internal predecessors, (1597), 127 states have call successors, (127), 74 states have call predecessors, (127), 87 states have return successors, (145), 129 states have call predecessors, (145), 125 states have call successors, (145) Second operand 1437 states. [2022-02-20 20:01:35,081 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:35,081 INFO L93 Difference]: Finished difference Result 1437 states and 2017 transitions. [2022-02-20 20:01:35,081 INFO L276 IsEmpty]: Start isEmpty. Operand 1437 states and 2017 transitions. [2022-02-20 20:01:35,085 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:01:35,086 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:01:35,086 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 20:01:35,086 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 20:01:35,089 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1329 states, 1113 states have (on average 1.4348607367475292) internal successors, (1597), 1127 states have internal predecessors, (1597), 127 states have call successors, (127), 74 states have call predecessors, (127), 87 states have return successors, (145), 129 states have call predecessors, (145), 125 states have call successors, (145) [2022-02-20 20:01:35,210 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1329 states to 1329 states and 1869 transitions. [2022-02-20 20:01:35,211 INFO L78 Accepts]: Start accepts. Automaton has 1329 states and 1869 transitions. Word has length 66 [2022-02-20 20:01:35,211 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:01:35,211 INFO L470 AbstractCegarLoop]: Abstraction has 1329 states and 1869 transitions. [2022-02-20 20:01:35,212 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 5.666666666666667) internal successors, (51), 5 states have internal predecessors, (51), 2 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-20 20:01:35,212 INFO L276 IsEmpty]: Start isEmpty. Operand 1329 states and 1869 transitions. [2022-02-20 20:01:35,213 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-02-20 20:01:35,213 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 20:01:35,214 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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] [2022-02-20 20:01:35,214 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-20 20:01:35,214 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting error1Err0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, error1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 20:01:35,216 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:01:35,216 INFO L85 PathProgramCache]: Analyzing trace with hash 134459688, now seen corresponding path program 1 times [2022-02-20 20:01:35,217 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:01:35,217 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1318971427] [2022-02-20 20:01:35,218 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:01:35,218 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:01:35,238 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:35,289 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 4 [2022-02-20 20:01:35,292 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:35,308 INFO L290 TraceCheckUtils]: 0: Hoare triple {19091#(and (= ~q_ev~0 |old(~q_ev~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~q_req_up~0 |old(~q_req_up~0)|))} assume !(1 == ~q_req_up~0); {19092#(not (= |old(~q_req_up~0)| 1))} is VALID [2022-02-20 20:01:35,309 INFO L290 TraceCheckUtils]: 1: Hoare triple {19092#(not (= |old(~q_req_up~0)| 1))} assume true; {19092#(not (= |old(~q_req_up~0)| 1))} is VALID [2022-02-20 20:01:35,309 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {19092#(not (= |old(~q_req_up~0)| 1))} {19051#(= ~c_dr_pc~0 ~q_req_up~0)} #2057#return; {19055#(not (= ~c_dr_pc~0 1))} is VALID [2022-02-20 20:01:35,315 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-02-20 20:01:35,317 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:35,324 INFO L290 TraceCheckUtils]: 0: Hoare triple {19093#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(0 == ~q_read_ev~0); {19048#true} is VALID [2022-02-20 20:01:35,325 INFO L290 TraceCheckUtils]: 1: Hoare triple {19048#true} assume !(0 == ~q_write_ev~0); {19048#true} is VALID [2022-02-20 20:01:35,325 INFO L290 TraceCheckUtils]: 2: Hoare triple {19048#true} assume true; {19048#true} is VALID [2022-02-20 20:01:35,325 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19048#true} {19055#(not (= ~c_dr_pc~0 1))} #2059#return; {19055#(not (= ~c_dr_pc~0 1))} is VALID [2022-02-20 20:01:35,332 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-02-20 20:01:35,341 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:35,354 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 20:01:35,355 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:35,358 INFO L290 TraceCheckUtils]: 0: Hoare triple {19048#true} havoc ~__retres1~0; {19048#true} is VALID [2022-02-20 20:01:35,358 INFO L290 TraceCheckUtils]: 1: Hoare triple {19048#true} assume !(1 == ~p_dw_pc~0); {19048#true} is VALID [2022-02-20 20:01:35,359 INFO L290 TraceCheckUtils]: 2: Hoare triple {19048#true} assume !(2 == ~p_dw_pc~0); {19048#true} is VALID [2022-02-20 20:01:35,359 INFO L290 TraceCheckUtils]: 3: Hoare triple {19048#true} ~__retres1~0 := 0; {19048#true} is VALID [2022-02-20 20:01:35,359 INFO L290 TraceCheckUtils]: 4: Hoare triple {19048#true} #res := ~__retres1~0; {19048#true} is VALID [2022-02-20 20:01:35,359 INFO L290 TraceCheckUtils]: 5: Hoare triple {19048#true} assume true; {19048#true} is VALID [2022-02-20 20:01:35,359 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {19048#true} {19048#true} #2053#return; {19048#true} is VALID [2022-02-20 20:01:35,359 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-02-20 20:01:35,361 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:35,365 INFO L290 TraceCheckUtils]: 0: Hoare triple {19048#true} havoc ~__retres1~1; {19048#true} is VALID [2022-02-20 20:01:35,365 INFO L290 TraceCheckUtils]: 1: Hoare triple {19048#true} assume 1 == ~c_dr_pc~0; {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:35,365 INFO L290 TraceCheckUtils]: 2: Hoare triple {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:35,366 INFO L290 TraceCheckUtils]: 3: Hoare triple {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} #res := ~__retres1~1; {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:35,366 INFO L290 TraceCheckUtils]: 4: Hoare triple {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} assume true; {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:35,367 INFO L284 TraceCheckUtils]: 5: Hoare quadruple {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} {19048#true} #2055#return; {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:35,367 INFO L290 TraceCheckUtils]: 0: Hoare triple {19094#(and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~1;havoc ~tmp___0~1; {19048#true} is VALID [2022-02-20 20:01:35,367 INFO L272 TraceCheckUtils]: 1: Hoare triple {19048#true} call #t~ret8 := is_do_write_p_triggered(); {19048#true} is VALID [2022-02-20 20:01:35,367 INFO L290 TraceCheckUtils]: 2: Hoare triple {19048#true} havoc ~__retres1~0; {19048#true} is VALID [2022-02-20 20:01:35,367 INFO L290 TraceCheckUtils]: 3: Hoare triple {19048#true} assume !(1 == ~p_dw_pc~0); {19048#true} is VALID [2022-02-20 20:01:35,368 INFO L290 TraceCheckUtils]: 4: Hoare triple {19048#true} assume !(2 == ~p_dw_pc~0); {19048#true} is VALID [2022-02-20 20:01:35,368 INFO L290 TraceCheckUtils]: 5: Hoare triple {19048#true} ~__retres1~0 := 0; {19048#true} is VALID [2022-02-20 20:01:35,368 INFO L290 TraceCheckUtils]: 6: Hoare triple {19048#true} #res := ~__retres1~0; {19048#true} is VALID [2022-02-20 20:01:35,368 INFO L290 TraceCheckUtils]: 7: Hoare triple {19048#true} assume true; {19048#true} is VALID [2022-02-20 20:01:35,368 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {19048#true} {19048#true} #2053#return; {19048#true} is VALID [2022-02-20 20:01:35,371 INFO L290 TraceCheckUtils]: 9: Hoare triple {19048#true} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {19048#true} is VALID [2022-02-20 20:01:35,371 INFO L290 TraceCheckUtils]: 10: Hoare triple {19048#true} assume !(0 != ~tmp~1); {19048#true} is VALID [2022-02-20 20:01:35,379 INFO L272 TraceCheckUtils]: 11: Hoare triple {19048#true} call #t~ret9 := is_do_read_c_triggered(); {19048#true} is VALID [2022-02-20 20:01:35,380 INFO L290 TraceCheckUtils]: 12: Hoare triple {19048#true} havoc ~__retres1~1; {19048#true} is VALID [2022-02-20 20:01:35,381 INFO L290 TraceCheckUtils]: 13: Hoare triple {19048#true} assume 1 == ~c_dr_pc~0; {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:35,382 INFO L290 TraceCheckUtils]: 14: Hoare triple {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:35,382 INFO L290 TraceCheckUtils]: 15: Hoare triple {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} #res := ~__retres1~1; {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:35,383 INFO L290 TraceCheckUtils]: 16: Hoare triple {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} assume true; {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:35,384 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} {19048#true} #2055#return; {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:35,384 INFO L290 TraceCheckUtils]: 18: Hoare triple {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:35,384 INFO L290 TraceCheckUtils]: 19: Hoare triple {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} assume 0 != ~tmp___0~1;~c_dr_st~0 := 0; {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:35,385 INFO L290 TraceCheckUtils]: 20: Hoare triple {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} assume true; {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:35,385 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} {19055#(not (= ~c_dr_pc~0 1))} #2061#return; {19049#false} is VALID [2022-02-20 20:01:35,385 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 40 [2022-02-20 20:01:35,388 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:35,391 INFO L290 TraceCheckUtils]: 0: Hoare triple {19093#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(1 == ~q_read_ev~0); {19048#true} is VALID [2022-02-20 20:01:35,392 INFO L290 TraceCheckUtils]: 1: Hoare triple {19048#true} assume 1 == ~q_write_ev~0;~q_write_ev~0 := 2; {19048#true} is VALID [2022-02-20 20:01:35,392 INFO L290 TraceCheckUtils]: 2: Hoare triple {19048#true} assume true; {19048#true} is VALID [2022-02-20 20:01:35,392 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19048#true} {19049#false} #2063#return; {19049#false} is VALID [2022-02-20 20:01:35,392 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 48 [2022-02-20 20:01:35,394 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:35,396 INFO L290 TraceCheckUtils]: 0: Hoare triple {19048#true} havoc ~__retres1~2; {19048#true} is VALID [2022-02-20 20:01:35,396 INFO L290 TraceCheckUtils]: 1: Hoare triple {19048#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {19048#true} is VALID [2022-02-20 20:01:35,398 INFO L290 TraceCheckUtils]: 2: Hoare triple {19048#true} #res := ~__retres1~2; {19048#true} is VALID [2022-02-20 20:01:35,398 INFO L290 TraceCheckUtils]: 3: Hoare triple {19048#true} assume true; {19048#true} is VALID [2022-02-20 20:01:35,398 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {19048#true} {19049#false} #2065#return; {19049#false} is VALID [2022-02-20 20:01:35,399 INFO L290 TraceCheckUtils]: 0: Hoare triple {19048#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(17, 2);call #Ultimate.allocInit(12, 3);~fast_clk_edge~0 := 0;~slow_clk_edge~0 := 0;~q_buf_0~0 := 0;~q_free~0 := 0;~q_read_ev~0 := 0;~q_write_ev~0 := 0;~q_req_up~0 := 0;~q_ev~0 := 0;~p_num_write~0 := 0;~p_last_write~0 := 0;~p_dw_st~0 := 0;~p_dw_pc~0 := 0;~p_dw_i~0 := 0;~c_num_read~0 := 0;~c_last_read~0 := 0;~c_dr_st~0 := 0;~c_dr_pc~0 := 0;~c_dr_i~0 := 0;~a_t~0 := 0;~t~0 := 0;~m_pc~0 := 0;~t1_pc~0 := 0;~t2_pc~0 := 0;~t3_pc~0 := 0;~t4_pc~0 := 0;~t5_pc~0 := 0;~t6_pc~0 := 0;~t7_pc~0 := 0;~t8_pc~0 := 0;~t9_pc~0 := 0;~t10_pc~0 := 0;~t11_pc~0 := 0;~t12_pc~0 := 0;~t13_pc~0 := 0;~m_st~0 := 0;~t1_st~0 := 0;~t2_st~0 := 0;~t3_st~0 := 0;~t4_st~0 := 0;~t5_st~0 := 0;~t6_st~0 := 0;~t7_st~0 := 0;~t8_st~0 := 0;~t9_st~0 := 0;~t10_st~0 := 0;~t11_st~0 := 0;~t12_st~0 := 0;~t13_st~0 := 0;~m_i~0 := 0;~t1_i~0 := 0;~t2_i~0 := 0;~t3_i~0 := 0;~t4_i~0 := 0;~t5_i~0 := 0;~t6_i~0 := 0;~t7_i~0 := 0;~t8_i~0 := 0;~t9_i~0 := 0;~t10_i~0 := 0;~t11_i~0 := 0;~t12_i~0 := 0;~t13_i~0 := 0;~M_E~0 := 2;~T1_E~0 := 2;~T2_E~0 := 2;~T3_E~0 := 2;~T4_E~0 := 2;~T5_E~0 := 2;~T6_E~0 := 2;~T7_E~0 := 2;~T8_E~0 := 2;~T9_E~0 := 2;~T10_E~0 := 2;~T11_E~0 := 2;~T12_E~0 := 2;~T13_E~0 := 2;~E_M~0 := 2;~E_1~0 := 2;~E_2~0 := 2;~E_3~0 := 2;~E_4~0 := 2;~E_5~0 := 2;~E_6~0 := 2;~E_7~0 := 2;~E_8~0 := 2;~E_9~0 := 2;~E_10~0 := 2;~E_11~0 := 2;~E_12~0 := 2;~E_13~0 := 2;~token~0 := 0;~local~0 := 0; {19050#(= ~q_req_up~0 0)} is VALID [2022-02-20 20:01:35,399 INFO L290 TraceCheckUtils]: 1: Hoare triple {19050#(= ~q_req_up~0 0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet53#1, main_#t~ret54#1, main_#t~ret55#1;assume -2147483648 <= main_#t~nondet53#1 && main_#t~nondet53#1 <= 2147483647; {19050#(= ~q_req_up~0 0)} is VALID [2022-02-20 20:01:35,400 INFO L290 TraceCheckUtils]: 2: Hoare triple {19050#(= ~q_req_up~0 0)} assume 0 != main_#t~nondet53#1;havoc main_#t~nondet53#1;assume { :begin_inline_main1 } true;havoc main1_#res#1;havoc main1_~__retres1~3#1;havoc main1_~__retres1~3#1;assume { :begin_inline_init_model1 } true;~fast_clk_edge~0 := 2;~slow_clk_edge~0 := 2;~q_free~0 := 1;~q_write_ev~0 := 2;~q_read_ev~0 := ~q_write_ev~0;~p_num_write~0 := 0;~p_dw_pc~0 := 0;~p_dw_i~0 := 1;~c_num_read~0 := 0;~c_dr_pc~0 := 0;~c_dr_i~0 := 1; {19051#(= ~c_dr_pc~0 ~q_req_up~0)} is VALID [2022-02-20 20:01:35,400 INFO L290 TraceCheckUtils]: 3: Hoare triple {19051#(= ~c_dr_pc~0 ~q_req_up~0)} assume { :end_inline_init_model1 } true;assume { :begin_inline_start_simulation1 } true;havoc start_simulation1_#t~ret14#1, start_simulation1_#t~ret15#1, start_simulation1_~kernel_st~0#1, start_simulation1_~tmp~4#1, start_simulation1_~tmp___0~3#1;havoc start_simulation1_~kernel_st~0#1;havoc start_simulation1_~tmp~4#1;havoc start_simulation1_~tmp___0~3#1;start_simulation1_~kernel_st~0#1 := 0; {19051#(= ~c_dr_pc~0 ~q_req_up~0)} is VALID [2022-02-20 20:01:35,401 INFO L272 TraceCheckUtils]: 4: Hoare triple {19051#(= ~c_dr_pc~0 ~q_req_up~0)} call update_channels1(); {19091#(and (= ~q_ev~0 |old(~q_ev~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~q_req_up~0 |old(~q_req_up~0)|))} is VALID [2022-02-20 20:01:35,401 INFO L290 TraceCheckUtils]: 5: Hoare triple {19091#(and (= ~q_ev~0 |old(~q_ev~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~q_req_up~0 |old(~q_req_up~0)|))} assume !(1 == ~q_req_up~0); {19092#(not (= |old(~q_req_up~0)| 1))} is VALID [2022-02-20 20:01:35,401 INFO L290 TraceCheckUtils]: 6: Hoare triple {19092#(not (= |old(~q_req_up~0)| 1))} assume true; {19092#(not (= |old(~q_req_up~0)| 1))} is VALID [2022-02-20 20:01:35,402 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {19092#(not (= |old(~q_req_up~0)| 1))} {19051#(= ~c_dr_pc~0 ~q_req_up~0)} #2057#return; {19055#(not (= ~c_dr_pc~0 1))} is VALID [2022-02-20 20:01:35,402 INFO L290 TraceCheckUtils]: 8: Hoare triple {19055#(not (= ~c_dr_pc~0 1))} assume { :begin_inline_init_threads1 } true; {19055#(not (= ~c_dr_pc~0 1))} is VALID [2022-02-20 20:01:35,402 INFO L290 TraceCheckUtils]: 9: Hoare triple {19055#(not (= ~c_dr_pc~0 1))} assume 1 == ~p_dw_i~0;~p_dw_st~0 := 0; {19055#(not (= ~c_dr_pc~0 1))} is VALID [2022-02-20 20:01:35,403 INFO L290 TraceCheckUtils]: 10: Hoare triple {19055#(not (= ~c_dr_pc~0 1))} assume 1 == ~c_dr_i~0;~c_dr_st~0 := 0; {19055#(not (= ~c_dr_pc~0 1))} is VALID [2022-02-20 20:01:35,403 INFO L290 TraceCheckUtils]: 11: Hoare triple {19055#(not (= ~c_dr_pc~0 1))} assume { :end_inline_init_threads1 } true; {19055#(not (= ~c_dr_pc~0 1))} is VALID [2022-02-20 20:01:35,403 INFO L272 TraceCheckUtils]: 12: Hoare triple {19055#(not (= ~c_dr_pc~0 1))} call fire_delta_events1(); {19093#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:35,404 INFO L290 TraceCheckUtils]: 13: Hoare triple {19093#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(0 == ~q_read_ev~0); {19048#true} is VALID [2022-02-20 20:01:35,404 INFO L290 TraceCheckUtils]: 14: Hoare triple {19048#true} assume !(0 == ~q_write_ev~0); {19048#true} is VALID [2022-02-20 20:01:35,404 INFO L290 TraceCheckUtils]: 15: Hoare triple {19048#true} assume true; {19048#true} is VALID [2022-02-20 20:01:35,404 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {19048#true} {19055#(not (= ~c_dr_pc~0 1))} #2059#return; {19055#(not (= ~c_dr_pc~0 1))} is VALID [2022-02-20 20:01:35,405 INFO L272 TraceCheckUtils]: 17: Hoare triple {19055#(not (= ~c_dr_pc~0 1))} call activate_threads1(); {19094#(and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2022-02-20 20:01:35,405 INFO L290 TraceCheckUtils]: 18: Hoare triple {19094#(and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~1;havoc ~tmp___0~1; {19048#true} is VALID [2022-02-20 20:01:35,405 INFO L272 TraceCheckUtils]: 19: Hoare triple {19048#true} call #t~ret8 := is_do_write_p_triggered(); {19048#true} is VALID [2022-02-20 20:01:35,405 INFO L290 TraceCheckUtils]: 20: Hoare triple {19048#true} havoc ~__retres1~0; {19048#true} is VALID [2022-02-20 20:01:35,405 INFO L290 TraceCheckUtils]: 21: Hoare triple {19048#true} assume !(1 == ~p_dw_pc~0); {19048#true} is VALID [2022-02-20 20:01:35,405 INFO L290 TraceCheckUtils]: 22: Hoare triple {19048#true} assume !(2 == ~p_dw_pc~0); {19048#true} is VALID [2022-02-20 20:01:35,406 INFO L290 TraceCheckUtils]: 23: Hoare triple {19048#true} ~__retres1~0 := 0; {19048#true} is VALID [2022-02-20 20:01:35,406 INFO L290 TraceCheckUtils]: 24: Hoare triple {19048#true} #res := ~__retres1~0; {19048#true} is VALID [2022-02-20 20:01:35,406 INFO L290 TraceCheckUtils]: 25: Hoare triple {19048#true} assume true; {19048#true} is VALID [2022-02-20 20:01:35,406 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {19048#true} {19048#true} #2053#return; {19048#true} is VALID [2022-02-20 20:01:35,406 INFO L290 TraceCheckUtils]: 27: Hoare triple {19048#true} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {19048#true} is VALID [2022-02-20 20:01:35,406 INFO L290 TraceCheckUtils]: 28: Hoare triple {19048#true} assume !(0 != ~tmp~1); {19048#true} is VALID [2022-02-20 20:01:35,406 INFO L272 TraceCheckUtils]: 29: Hoare triple {19048#true} call #t~ret9 := is_do_read_c_triggered(); {19048#true} is VALID [2022-02-20 20:01:35,407 INFO L290 TraceCheckUtils]: 30: Hoare triple {19048#true} havoc ~__retres1~1; {19048#true} is VALID [2022-02-20 20:01:35,407 INFO L290 TraceCheckUtils]: 31: Hoare triple {19048#true} assume 1 == ~c_dr_pc~0; {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:35,407 INFO L290 TraceCheckUtils]: 32: Hoare triple {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} assume 1 == ~slow_clk_edge~0;~__retres1~1 := 1; {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:35,408 INFO L290 TraceCheckUtils]: 33: Hoare triple {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} #res := ~__retres1~1; {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:35,408 INFO L290 TraceCheckUtils]: 34: Hoare triple {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} assume true; {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:35,408 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} {19048#true} #2055#return; {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:35,409 INFO L290 TraceCheckUtils]: 36: Hoare triple {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:35,409 INFO L290 TraceCheckUtils]: 37: Hoare triple {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} assume 0 != ~tmp___0~1;~c_dr_st~0 := 0; {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:35,410 INFO L290 TraceCheckUtils]: 38: Hoare triple {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} assume true; {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} is VALID [2022-02-20 20:01:35,410 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {19108#(= (+ (- 1) ~c_dr_pc~0) 0)} {19055#(not (= ~c_dr_pc~0 1))} #2061#return; {19049#false} is VALID [2022-02-20 20:01:35,410 INFO L272 TraceCheckUtils]: 40: Hoare triple {19049#false} call reset_delta_events1(); {19093#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:35,410 INFO L290 TraceCheckUtils]: 41: Hoare triple {19093#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(1 == ~q_read_ev~0); {19048#true} is VALID [2022-02-20 20:01:35,410 INFO L290 TraceCheckUtils]: 42: Hoare triple {19048#true} assume 1 == ~q_write_ev~0;~q_write_ev~0 := 2; {19048#true} is VALID [2022-02-20 20:01:35,411 INFO L290 TraceCheckUtils]: 43: Hoare triple {19048#true} assume true; {19048#true} is VALID [2022-02-20 20:01:35,411 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {19048#true} {19049#false} #2063#return; {19049#false} is VALID [2022-02-20 20:01:35,411 INFO L290 TraceCheckUtils]: 45: Hoare triple {19049#false} assume !false; {19049#false} is VALID [2022-02-20 20:01:35,411 INFO L290 TraceCheckUtils]: 46: Hoare triple {19049#false} start_simulation1_~kernel_st~0#1 := 1;assume { :begin_inline_eval1 } true;havoc eval1_#t~ret10#1, eval1_#t~nondet11#1, eval1_#t~nondet12#1, eval1_~tmp~2#1, eval1_~tmp___0~2#1, eval1_~tmp___1~0#1;havoc eval1_~tmp~2#1;havoc eval1_~tmp___0~2#1;havoc eval1_~tmp___1~0#1; {19049#false} is VALID [2022-02-20 20:01:35,411 INFO L290 TraceCheckUtils]: 47: Hoare triple {19049#false} assume !false; {19049#false} is VALID [2022-02-20 20:01:35,411 INFO L272 TraceCheckUtils]: 48: Hoare triple {19049#false} call eval1_#t~ret10#1 := exists_runnable_thread1(); {19048#true} is VALID [2022-02-20 20:01:35,411 INFO L290 TraceCheckUtils]: 49: Hoare triple {19048#true} havoc ~__retres1~2; {19048#true} is VALID [2022-02-20 20:01:35,412 INFO L290 TraceCheckUtils]: 50: Hoare triple {19048#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {19048#true} is VALID [2022-02-20 20:01:35,412 INFO L290 TraceCheckUtils]: 51: Hoare triple {19048#true} #res := ~__retres1~2; {19048#true} is VALID [2022-02-20 20:01:35,412 INFO L290 TraceCheckUtils]: 52: Hoare triple {19048#true} assume true; {19048#true} is VALID [2022-02-20 20:01:35,412 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {19048#true} {19049#false} #2065#return; {19049#false} is VALID [2022-02-20 20:01:35,412 INFO L290 TraceCheckUtils]: 54: Hoare triple {19049#false} assume -2147483648 <= eval1_#t~ret10#1 && eval1_#t~ret10#1 <= 2147483647;eval1_~tmp___1~0#1 := eval1_#t~ret10#1;havoc eval1_#t~ret10#1; {19049#false} is VALID [2022-02-20 20:01:35,412 INFO L290 TraceCheckUtils]: 55: Hoare triple {19049#false} assume 0 != eval1_~tmp___1~0#1; {19049#false} is VALID [2022-02-20 20:01:35,412 INFO L290 TraceCheckUtils]: 56: Hoare triple {19049#false} assume !(0 == ~p_dw_st~0); {19049#false} is VALID [2022-02-20 20:01:35,413 INFO L290 TraceCheckUtils]: 57: Hoare triple {19049#false} assume 0 == ~c_dr_st~0;assume -2147483648 <= eval1_#t~nondet12#1 && eval1_#t~nondet12#1 <= 2147483647;eval1_~tmp___0~2#1 := eval1_#t~nondet12#1;havoc eval1_#t~nondet12#1; {19049#false} is VALID [2022-02-20 20:01:35,413 INFO L290 TraceCheckUtils]: 58: Hoare triple {19049#false} assume 0 != eval1_~tmp___0~2#1;~c_dr_st~0 := 1;assume { :begin_inline_do_read_c } true;havoc do_read_c_~a~0#1;havoc do_read_c_~a~0#1; {19049#false} is VALID [2022-02-20 20:01:35,413 INFO L290 TraceCheckUtils]: 59: Hoare triple {19049#false} assume !(0 == ~c_dr_pc~0); {19049#false} is VALID [2022-02-20 20:01:35,413 INFO L290 TraceCheckUtils]: 60: Hoare triple {19049#false} assume 2 == ~c_dr_pc~0; {19049#false} is VALID [2022-02-20 20:01:35,413 INFO L290 TraceCheckUtils]: 61: Hoare triple {19049#false} do_read_c_~a~0#1 := ~a_t~0; {19049#false} is VALID [2022-02-20 20:01:35,413 INFO L290 TraceCheckUtils]: 62: Hoare triple {19049#false} do_read_c_~a~0#1 := ~q_buf_0~0;~c_last_read~0 := do_read_c_~a~0#1;~c_num_read~0 := 1 + ~c_num_read~0;~q_free~0 := 1;~q_req_up~0 := 1; {19049#false} is VALID [2022-02-20 20:01:35,413 INFO L290 TraceCheckUtils]: 63: Hoare triple {19049#false} assume !(~p_last_write~0 == ~c_last_read~0); {19049#false} is VALID [2022-02-20 20:01:35,414 INFO L272 TraceCheckUtils]: 64: Hoare triple {19049#false} call error1(); {19049#false} is VALID [2022-02-20 20:01:35,414 INFO L290 TraceCheckUtils]: 65: Hoare triple {19049#false} assume !false; {19049#false} is VALID [2022-02-20 20:01:35,415 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 20:01:35,415 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:01:35,415 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1318971427] [2022-02-20 20:01:35,415 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1318971427] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:01:35,415 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:01:35,415 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-02-20 20:01:35,416 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1402990724] [2022-02-20 20:01:35,416 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:01:35,417 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.1) internal successors, (51), 7 states have internal predecessors, (51), 4 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) Word has length 66 [2022-02-20 20:01:35,418 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:01:35,419 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 5.1) internal successors, (51), 7 states have internal predecessors, (51), 4 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-20 20:01:35,461 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:01:35,462 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 20:01:35,462 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:01:35,463 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 20:01:35,463 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=72, Unknown=0, NotChecked=0, Total=90 [2022-02-20 20:01:35,463 INFO L87 Difference]: Start difference. First operand 1329 states and 1869 transitions. Second operand has 10 states, 10 states have (on average 5.1) internal successors, (51), 7 states have internal predecessors, (51), 4 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-20 20:01:43,041 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:43,041 INFO L93 Difference]: Finished difference Result 3667 states and 5056 transitions. [2022-02-20 20:01:43,041 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 31 states. [2022-02-20 20:01:43,041 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.1) internal successors, (51), 7 states have internal predecessors, (51), 4 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) Word has length 66 [2022-02-20 20:01:43,041 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 20:01:43,042 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 5.1) internal successors, (51), 7 states have internal predecessors, (51), 4 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-20 20:01:43,056 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 1589 transitions. [2022-02-20 20:01:43,056 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 5.1) internal successors, (51), 7 states have internal predecessors, (51), 4 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-20 20:01:43,070 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 1589 transitions. [2022-02-20 20:01:43,070 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 31 states and 1589 transitions. [2022-02-20 20:01:44,288 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1589 edges. 1589 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:01:44,432 INFO L225 Difference]: With dead ends: 3667 [2022-02-20 20:01:44,432 INFO L226 Difference]: Without dead ends: 1572 [2022-02-20 20:01:44,436 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 23 SyntacticMatches, 0 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 341 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=257, Invalid=1075, Unknown=0, NotChecked=0, Total=1332 [2022-02-20 20:01:44,437 INFO L933 BasicCegarLoop]: 914 mSDtfsCounter, 4093 mSDsluCounter, 2503 mSDsCounter, 0 mSdLazyCounter, 1863 mSolverCounterSat, 695 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 4113 SdHoareTripleChecker+Valid, 3417 SdHoareTripleChecker+Invalid, 2558 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 695 IncrementalHoareTripleChecker+Valid, 1863 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.3s IncrementalHoareTripleChecker+Time [2022-02-20 20:01:44,437 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [4113 Valid, 3417 Invalid, 2558 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [695 Valid, 1863 Invalid, 0 Unknown, 0 Unchecked, 2.3s Time] [2022-02-20 20:01:44,439 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1572 states. [2022-02-20 20:01:44,505 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1572 to 1417. [2022-02-20 20:01:44,505 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 20:01:44,509 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1572 states. Second operand has 1417 states, 1166 states have (on average 1.4013722126929673) internal successors, (1634), 1180 states have internal predecessors, (1634), 147 states have call successors, (147), 88 states have call predecessors, (147), 102 states have return successors, (166), 150 states have call predecessors, (166), 145 states have call successors, (166) [2022-02-20 20:01:44,513 INFO L74 IsIncluded]: Start isIncluded. First operand 1572 states. Second operand has 1417 states, 1166 states have (on average 1.4013722126929673) internal successors, (1634), 1180 states have internal predecessors, (1634), 147 states have call successors, (147), 88 states have call predecessors, (147), 102 states have return successors, (166), 150 states have call predecessors, (166), 145 states have call successors, (166) [2022-02-20 20:01:44,516 INFO L87 Difference]: Start difference. First operand 1572 states. Second operand has 1417 states, 1166 states have (on average 1.4013722126929673) internal successors, (1634), 1180 states have internal predecessors, (1634), 147 states have call successors, (147), 88 states have call predecessors, (147), 102 states have return successors, (166), 150 states have call predecessors, (166), 145 states have call successors, (166) [2022-02-20 20:01:44,644 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:44,645 INFO L93 Difference]: Finished difference Result 1572 states and 2143 transitions. [2022-02-20 20:01:44,645 INFO L276 IsEmpty]: Start isEmpty. Operand 1572 states and 2143 transitions. [2022-02-20 20:01:44,649 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:01:44,650 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:01:44,660 INFO L74 IsIncluded]: Start isIncluded. First operand has 1417 states, 1166 states have (on average 1.4013722126929673) internal successors, (1634), 1180 states have internal predecessors, (1634), 147 states have call successors, (147), 88 states have call predecessors, (147), 102 states have return successors, (166), 150 states have call predecessors, (166), 145 states have call successors, (166) Second operand 1572 states. [2022-02-20 20:01:44,666 INFO L87 Difference]: Start difference. First operand has 1417 states, 1166 states have (on average 1.4013722126929673) internal successors, (1634), 1180 states have internal predecessors, (1634), 147 states have call successors, (147), 88 states have call predecessors, (147), 102 states have return successors, (166), 150 states have call predecessors, (166), 145 states have call successors, (166) Second operand 1572 states. [2022-02-20 20:01:44,793 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:44,793 INFO L93 Difference]: Finished difference Result 1572 states and 2143 transitions. [2022-02-20 20:01:44,793 INFO L276 IsEmpty]: Start isEmpty. Operand 1572 states and 2143 transitions. [2022-02-20 20:01:44,797 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:01:44,798 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:01:44,798 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 20:01:44,798 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 20:01:44,801 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1417 states, 1166 states have (on average 1.4013722126929673) internal successors, (1634), 1180 states have internal predecessors, (1634), 147 states have call successors, (147), 88 states have call predecessors, (147), 102 states have return successors, (166), 150 states have call predecessors, (166), 145 states have call successors, (166) [2022-02-20 20:01:44,928 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1417 states to 1417 states and 1947 transitions. [2022-02-20 20:01:44,930 INFO L78 Accepts]: Start accepts. Automaton has 1417 states and 1947 transitions. Word has length 66 [2022-02-20 20:01:44,930 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:01:44,931 INFO L470 AbstractCegarLoop]: Abstraction has 1417 states and 1947 transitions. [2022-02-20 20:01:44,931 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 5.1) internal successors, (51), 7 states have internal predecessors, (51), 4 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 4 states have call predecessors, (7), 4 states have call successors, (7) [2022-02-20 20:01:44,931 INFO L276 IsEmpty]: Start isEmpty. Operand 1417 states and 1947 transitions. [2022-02-20 20:01:44,932 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-02-20 20:01:44,932 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 20:01:44,932 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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] [2022-02-20 20:01:44,933 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-20 20:01:44,933 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting error1Err0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, error1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 20:01:44,933 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:01:44,933 INFO L85 PathProgramCache]: Analyzing trace with hash -949162084, now seen corresponding path program 1 times [2022-02-20 20:01:44,934 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:01:44,934 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [362935968] [2022-02-20 20:01:44,934 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:01:44,934 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:01:44,954 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:44,979 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 4 [2022-02-20 20:01:44,981 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:44,984 INFO L290 TraceCheckUtils]: 0: Hoare triple {29155#(and (= ~q_ev~0 |old(~q_ev~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~q_req_up~0 |old(~q_req_up~0)|))} assume !(1 == ~q_req_up~0); {29109#true} is VALID [2022-02-20 20:01:44,984 INFO L290 TraceCheckUtils]: 1: Hoare triple {29109#true} assume true; {29109#true} is VALID [2022-02-20 20:01:44,984 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {29109#true} {29109#true} #2057#return; {29109#true} is VALID [2022-02-20 20:01:44,988 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-02-20 20:01:44,990 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:44,992 INFO L290 TraceCheckUtils]: 0: Hoare triple {29156#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(0 == ~q_read_ev~0); {29109#true} is VALID [2022-02-20 20:01:44,992 INFO L290 TraceCheckUtils]: 1: Hoare triple {29109#true} assume !(0 == ~q_write_ev~0); {29109#true} is VALID [2022-02-20 20:01:44,992 INFO L290 TraceCheckUtils]: 2: Hoare triple {29109#true} assume true; {29109#true} is VALID [2022-02-20 20:01:44,992 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {29109#true} {29109#true} #2059#return; {29109#true} is VALID [2022-02-20 20:01:44,997 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-02-20 20:01:45,017 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:45,050 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 20:01:45,051 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:45,057 INFO L290 TraceCheckUtils]: 0: Hoare triple {29109#true} havoc ~__retres1~0; {29109#true} is VALID [2022-02-20 20:01:45,057 INFO L290 TraceCheckUtils]: 1: Hoare triple {29109#true} assume !(1 == ~p_dw_pc~0); {29109#true} is VALID [2022-02-20 20:01:45,057 INFO L290 TraceCheckUtils]: 2: Hoare triple {29109#true} assume !(2 == ~p_dw_pc~0); {29109#true} is VALID [2022-02-20 20:01:45,058 INFO L290 TraceCheckUtils]: 3: Hoare triple {29109#true} ~__retres1~0 := 0; {29109#true} is VALID [2022-02-20 20:01:45,058 INFO L290 TraceCheckUtils]: 4: Hoare triple {29109#true} #res := ~__retres1~0; {29109#true} is VALID [2022-02-20 20:01:45,058 INFO L290 TraceCheckUtils]: 5: Hoare triple {29109#true} assume true; {29109#true} is VALID [2022-02-20 20:01:45,058 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {29109#true} {29109#true} #2053#return; {29109#true} is VALID [2022-02-20 20:01:45,059 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-02-20 20:01:45,062 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:45,093 INFO L290 TraceCheckUtils]: 0: Hoare triple {29109#true} havoc ~__retres1~1; {29109#true} is VALID [2022-02-20 20:01:45,093 INFO L290 TraceCheckUtils]: 1: Hoare triple {29109#true} assume !(1 == ~c_dr_pc~0); {29109#true} is VALID [2022-02-20 20:01:45,093 INFO L290 TraceCheckUtils]: 2: Hoare triple {29109#true} assume !(2 == ~c_dr_pc~0); {29109#true} is VALID [2022-02-20 20:01:45,093 INFO L290 TraceCheckUtils]: 3: Hoare triple {29109#true} ~__retres1~1 := 0; {29174#(and (<= is_do_read_c_triggered_~__retres1~1 0) (<= 0 is_do_read_c_triggered_~__retres1~1))} is VALID [2022-02-20 20:01:45,094 INFO L290 TraceCheckUtils]: 4: Hoare triple {29174#(and (<= is_do_read_c_triggered_~__retres1~1 0) (<= 0 is_do_read_c_triggered_~__retres1~1))} #res := ~__retres1~1; {29175#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} is VALID [2022-02-20 20:01:45,094 INFO L290 TraceCheckUtils]: 5: Hoare triple {29175#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} assume true; {29175#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} is VALID [2022-02-20 20:01:45,099 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {29175#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} {29109#true} #2055#return; {29172#(and (<= 0 |activate_threads1_#t~ret9|) (<= |activate_threads1_#t~ret9| 0))} is VALID [2022-02-20 20:01:45,100 INFO L290 TraceCheckUtils]: 0: Hoare triple {29157#(and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~1;havoc ~tmp___0~1; {29109#true} is VALID [2022-02-20 20:01:45,100 INFO L272 TraceCheckUtils]: 1: Hoare triple {29109#true} call #t~ret8 := is_do_write_p_triggered(); {29109#true} is VALID [2022-02-20 20:01:45,100 INFO L290 TraceCheckUtils]: 2: Hoare triple {29109#true} havoc ~__retres1~0; {29109#true} is VALID [2022-02-20 20:01:45,100 INFO L290 TraceCheckUtils]: 3: Hoare triple {29109#true} assume !(1 == ~p_dw_pc~0); {29109#true} is VALID [2022-02-20 20:01:45,101 INFO L290 TraceCheckUtils]: 4: Hoare triple {29109#true} assume !(2 == ~p_dw_pc~0); {29109#true} is VALID [2022-02-20 20:01:45,101 INFO L290 TraceCheckUtils]: 5: Hoare triple {29109#true} ~__retres1~0 := 0; {29109#true} is VALID [2022-02-20 20:01:45,101 INFO L290 TraceCheckUtils]: 6: Hoare triple {29109#true} #res := ~__retres1~0; {29109#true} is VALID [2022-02-20 20:01:45,101 INFO L290 TraceCheckUtils]: 7: Hoare triple {29109#true} assume true; {29109#true} is VALID [2022-02-20 20:01:45,101 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {29109#true} {29109#true} #2053#return; {29109#true} is VALID [2022-02-20 20:01:45,101 INFO L290 TraceCheckUtils]: 9: Hoare triple {29109#true} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {29109#true} is VALID [2022-02-20 20:01:45,101 INFO L290 TraceCheckUtils]: 10: Hoare triple {29109#true} assume !(0 != ~tmp~1); {29109#true} is VALID [2022-02-20 20:01:45,102 INFO L272 TraceCheckUtils]: 11: Hoare triple {29109#true} call #t~ret9 := is_do_read_c_triggered(); {29109#true} is VALID [2022-02-20 20:01:45,102 INFO L290 TraceCheckUtils]: 12: Hoare triple {29109#true} havoc ~__retres1~1; {29109#true} is VALID [2022-02-20 20:01:45,102 INFO L290 TraceCheckUtils]: 13: Hoare triple {29109#true} assume !(1 == ~c_dr_pc~0); {29109#true} is VALID [2022-02-20 20:01:45,102 INFO L290 TraceCheckUtils]: 14: Hoare triple {29109#true} assume !(2 == ~c_dr_pc~0); {29109#true} is VALID [2022-02-20 20:01:45,103 INFO L290 TraceCheckUtils]: 15: Hoare triple {29109#true} ~__retres1~1 := 0; {29174#(and (<= is_do_read_c_triggered_~__retres1~1 0) (<= 0 is_do_read_c_triggered_~__retres1~1))} is VALID [2022-02-20 20:01:45,103 INFO L290 TraceCheckUtils]: 16: Hoare triple {29174#(and (<= is_do_read_c_triggered_~__retres1~1 0) (<= 0 is_do_read_c_triggered_~__retres1~1))} #res := ~__retres1~1; {29175#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} is VALID [2022-02-20 20:01:45,103 INFO L290 TraceCheckUtils]: 17: Hoare triple {29175#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} assume true; {29175#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} is VALID [2022-02-20 20:01:45,104 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {29175#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} {29109#true} #2055#return; {29172#(and (<= 0 |activate_threads1_#t~ret9|) (<= |activate_threads1_#t~ret9| 0))} is VALID [2022-02-20 20:01:45,104 INFO L290 TraceCheckUtils]: 19: Hoare triple {29172#(and (<= 0 |activate_threads1_#t~ret9|) (<= |activate_threads1_#t~ret9| 0))} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {29173#(and (< 0 (+ activate_threads1_~tmp___0~1 1)) (<= activate_threads1_~tmp___0~1 0))} is VALID [2022-02-20 20:01:45,105 INFO L290 TraceCheckUtils]: 20: Hoare triple {29173#(and (< 0 (+ activate_threads1_~tmp___0~1 1)) (<= activate_threads1_~tmp___0~1 0))} assume 0 != ~tmp___0~1;~c_dr_st~0 := 0; {29110#false} is VALID [2022-02-20 20:01:45,105 INFO L290 TraceCheckUtils]: 21: Hoare triple {29110#false} assume true; {29110#false} is VALID [2022-02-20 20:01:45,105 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {29110#false} {29109#true} #2061#return; {29110#false} is VALID [2022-02-20 20:01:45,105 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 41 [2022-02-20 20:01:45,108 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:45,110 INFO L290 TraceCheckUtils]: 0: Hoare triple {29156#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(1 == ~q_read_ev~0); {29109#true} is VALID [2022-02-20 20:01:45,111 INFO L290 TraceCheckUtils]: 1: Hoare triple {29109#true} assume 1 == ~q_write_ev~0;~q_write_ev~0 := 2; {29109#true} is VALID [2022-02-20 20:01:45,111 INFO L290 TraceCheckUtils]: 2: Hoare triple {29109#true} assume true; {29109#true} is VALID [2022-02-20 20:01:45,111 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {29109#true} {29110#false} #2063#return; {29110#false} is VALID [2022-02-20 20:01:45,111 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 49 [2022-02-20 20:01:45,116 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:45,127 INFO L290 TraceCheckUtils]: 0: Hoare triple {29109#true} havoc ~__retres1~2; {29109#true} is VALID [2022-02-20 20:01:45,127 INFO L290 TraceCheckUtils]: 1: Hoare triple {29109#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {29109#true} is VALID [2022-02-20 20:01:45,127 INFO L290 TraceCheckUtils]: 2: Hoare triple {29109#true} #res := ~__retres1~2; {29109#true} is VALID [2022-02-20 20:01:45,127 INFO L290 TraceCheckUtils]: 3: Hoare triple {29109#true} assume true; {29109#true} is VALID [2022-02-20 20:01:45,127 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {29109#true} {29110#false} #2065#return; {29110#false} is VALID [2022-02-20 20:01:45,128 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 65 [2022-02-20 20:01:45,129 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:45,137 INFO L290 TraceCheckUtils]: 0: Hoare triple {29109#true} havoc ~__retres1~2; {29109#true} is VALID [2022-02-20 20:01:45,137 INFO L290 TraceCheckUtils]: 1: Hoare triple {29109#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {29109#true} is VALID [2022-02-20 20:01:45,138 INFO L290 TraceCheckUtils]: 2: Hoare triple {29109#true} #res := ~__retres1~2; {29109#true} is VALID [2022-02-20 20:01:45,138 INFO L290 TraceCheckUtils]: 3: Hoare triple {29109#true} assume true; {29109#true} is VALID [2022-02-20 20:01:45,138 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {29109#true} {29110#false} #2065#return; {29110#false} is VALID [2022-02-20 20:01:45,138 INFO L290 TraceCheckUtils]: 0: Hoare triple {29109#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(17, 2);call #Ultimate.allocInit(12, 3);~fast_clk_edge~0 := 0;~slow_clk_edge~0 := 0;~q_buf_0~0 := 0;~q_free~0 := 0;~q_read_ev~0 := 0;~q_write_ev~0 := 0;~q_req_up~0 := 0;~q_ev~0 := 0;~p_num_write~0 := 0;~p_last_write~0 := 0;~p_dw_st~0 := 0;~p_dw_pc~0 := 0;~p_dw_i~0 := 0;~c_num_read~0 := 0;~c_last_read~0 := 0;~c_dr_st~0 := 0;~c_dr_pc~0 := 0;~c_dr_i~0 := 0;~a_t~0 := 0;~t~0 := 0;~m_pc~0 := 0;~t1_pc~0 := 0;~t2_pc~0 := 0;~t3_pc~0 := 0;~t4_pc~0 := 0;~t5_pc~0 := 0;~t6_pc~0 := 0;~t7_pc~0 := 0;~t8_pc~0 := 0;~t9_pc~0 := 0;~t10_pc~0 := 0;~t11_pc~0 := 0;~t12_pc~0 := 0;~t13_pc~0 := 0;~m_st~0 := 0;~t1_st~0 := 0;~t2_st~0 := 0;~t3_st~0 := 0;~t4_st~0 := 0;~t5_st~0 := 0;~t6_st~0 := 0;~t7_st~0 := 0;~t8_st~0 := 0;~t9_st~0 := 0;~t10_st~0 := 0;~t11_st~0 := 0;~t12_st~0 := 0;~t13_st~0 := 0;~m_i~0 := 0;~t1_i~0 := 0;~t2_i~0 := 0;~t3_i~0 := 0;~t4_i~0 := 0;~t5_i~0 := 0;~t6_i~0 := 0;~t7_i~0 := 0;~t8_i~0 := 0;~t9_i~0 := 0;~t10_i~0 := 0;~t11_i~0 := 0;~t12_i~0 := 0;~t13_i~0 := 0;~M_E~0 := 2;~T1_E~0 := 2;~T2_E~0 := 2;~T3_E~0 := 2;~T4_E~0 := 2;~T5_E~0 := 2;~T6_E~0 := 2;~T7_E~0 := 2;~T8_E~0 := 2;~T9_E~0 := 2;~T10_E~0 := 2;~T11_E~0 := 2;~T12_E~0 := 2;~T13_E~0 := 2;~E_M~0 := 2;~E_1~0 := 2;~E_2~0 := 2;~E_3~0 := 2;~E_4~0 := 2;~E_5~0 := 2;~E_6~0 := 2;~E_7~0 := 2;~E_8~0 := 2;~E_9~0 := 2;~E_10~0 := 2;~E_11~0 := 2;~E_12~0 := 2;~E_13~0 := 2;~token~0 := 0;~local~0 := 0; {29109#true} is VALID [2022-02-20 20:01:45,138 INFO L290 TraceCheckUtils]: 1: Hoare triple {29109#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet53#1, main_#t~ret54#1, main_#t~ret55#1;assume -2147483648 <= main_#t~nondet53#1 && main_#t~nondet53#1 <= 2147483647; {29109#true} is VALID [2022-02-20 20:01:45,138 INFO L290 TraceCheckUtils]: 2: Hoare triple {29109#true} assume 0 != main_#t~nondet53#1;havoc main_#t~nondet53#1;assume { :begin_inline_main1 } true;havoc main1_#res#1;havoc main1_~__retres1~3#1;havoc main1_~__retres1~3#1;assume { :begin_inline_init_model1 } true;~fast_clk_edge~0 := 2;~slow_clk_edge~0 := 2;~q_free~0 := 1;~q_write_ev~0 := 2;~q_read_ev~0 := ~q_write_ev~0;~p_num_write~0 := 0;~p_dw_pc~0 := 0;~p_dw_i~0 := 1;~c_num_read~0 := 0;~c_dr_pc~0 := 0;~c_dr_i~0 := 1; {29109#true} is VALID [2022-02-20 20:01:45,139 INFO L290 TraceCheckUtils]: 3: Hoare triple {29109#true} assume { :end_inline_init_model1 } true;assume { :begin_inline_start_simulation1 } true;havoc start_simulation1_#t~ret14#1, start_simulation1_#t~ret15#1, start_simulation1_~kernel_st~0#1, start_simulation1_~tmp~4#1, start_simulation1_~tmp___0~3#1;havoc start_simulation1_~kernel_st~0#1;havoc start_simulation1_~tmp~4#1;havoc start_simulation1_~tmp___0~3#1;start_simulation1_~kernel_st~0#1 := 0; {29109#true} is VALID [2022-02-20 20:01:45,139 INFO L272 TraceCheckUtils]: 4: Hoare triple {29109#true} call update_channels1(); {29155#(and (= ~q_ev~0 |old(~q_ev~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~q_req_up~0 |old(~q_req_up~0)|))} is VALID [2022-02-20 20:01:45,139 INFO L290 TraceCheckUtils]: 5: Hoare triple {29155#(and (= ~q_ev~0 |old(~q_ev~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~q_req_up~0 |old(~q_req_up~0)|))} assume !(1 == ~q_req_up~0); {29109#true} is VALID [2022-02-20 20:01:45,140 INFO L290 TraceCheckUtils]: 6: Hoare triple {29109#true} assume true; {29109#true} is VALID [2022-02-20 20:01:45,140 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {29109#true} {29109#true} #2057#return; {29109#true} is VALID [2022-02-20 20:01:45,140 INFO L290 TraceCheckUtils]: 8: Hoare triple {29109#true} assume { :begin_inline_init_threads1 } true; {29109#true} is VALID [2022-02-20 20:01:45,140 INFO L290 TraceCheckUtils]: 9: Hoare triple {29109#true} assume 1 == ~p_dw_i~0;~p_dw_st~0 := 0; {29109#true} is VALID [2022-02-20 20:01:45,140 INFO L290 TraceCheckUtils]: 10: Hoare triple {29109#true} assume 1 == ~c_dr_i~0;~c_dr_st~0 := 0; {29109#true} is VALID [2022-02-20 20:01:45,140 INFO L290 TraceCheckUtils]: 11: Hoare triple {29109#true} assume { :end_inline_init_threads1 } true; {29109#true} is VALID [2022-02-20 20:01:45,141 INFO L272 TraceCheckUtils]: 12: Hoare triple {29109#true} call fire_delta_events1(); {29156#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:45,141 INFO L290 TraceCheckUtils]: 13: Hoare triple {29156#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(0 == ~q_read_ev~0); {29109#true} is VALID [2022-02-20 20:01:45,141 INFO L290 TraceCheckUtils]: 14: Hoare triple {29109#true} assume !(0 == ~q_write_ev~0); {29109#true} is VALID [2022-02-20 20:01:45,141 INFO L290 TraceCheckUtils]: 15: Hoare triple {29109#true} assume true; {29109#true} is VALID [2022-02-20 20:01:45,141 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {29109#true} {29109#true} #2059#return; {29109#true} is VALID [2022-02-20 20:01:45,142 INFO L272 TraceCheckUtils]: 17: Hoare triple {29109#true} call activate_threads1(); {29157#(and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2022-02-20 20:01:45,142 INFO L290 TraceCheckUtils]: 18: Hoare triple {29157#(and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~1;havoc ~tmp___0~1; {29109#true} is VALID [2022-02-20 20:01:45,142 INFO L272 TraceCheckUtils]: 19: Hoare triple {29109#true} call #t~ret8 := is_do_write_p_triggered(); {29109#true} is VALID [2022-02-20 20:01:45,142 INFO L290 TraceCheckUtils]: 20: Hoare triple {29109#true} havoc ~__retres1~0; {29109#true} is VALID [2022-02-20 20:01:45,143 INFO L290 TraceCheckUtils]: 21: Hoare triple {29109#true} assume !(1 == ~p_dw_pc~0); {29109#true} is VALID [2022-02-20 20:01:45,143 INFO L290 TraceCheckUtils]: 22: Hoare triple {29109#true} assume !(2 == ~p_dw_pc~0); {29109#true} is VALID [2022-02-20 20:01:45,143 INFO L290 TraceCheckUtils]: 23: Hoare triple {29109#true} ~__retres1~0 := 0; {29109#true} is VALID [2022-02-20 20:01:45,143 INFO L290 TraceCheckUtils]: 24: Hoare triple {29109#true} #res := ~__retres1~0; {29109#true} is VALID [2022-02-20 20:01:45,143 INFO L290 TraceCheckUtils]: 25: Hoare triple {29109#true} assume true; {29109#true} is VALID [2022-02-20 20:01:45,143 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {29109#true} {29109#true} #2053#return; {29109#true} is VALID [2022-02-20 20:01:45,144 INFO L290 TraceCheckUtils]: 27: Hoare triple {29109#true} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {29109#true} is VALID [2022-02-20 20:01:45,144 INFO L290 TraceCheckUtils]: 28: Hoare triple {29109#true} assume !(0 != ~tmp~1); {29109#true} is VALID [2022-02-20 20:01:45,144 INFO L272 TraceCheckUtils]: 29: Hoare triple {29109#true} call #t~ret9 := is_do_read_c_triggered(); {29109#true} is VALID [2022-02-20 20:01:45,144 INFO L290 TraceCheckUtils]: 30: Hoare triple {29109#true} havoc ~__retres1~1; {29109#true} is VALID [2022-02-20 20:01:45,144 INFO L290 TraceCheckUtils]: 31: Hoare triple {29109#true} assume !(1 == ~c_dr_pc~0); {29109#true} is VALID [2022-02-20 20:01:45,144 INFO L290 TraceCheckUtils]: 32: Hoare triple {29109#true} assume !(2 == ~c_dr_pc~0); {29109#true} is VALID [2022-02-20 20:01:45,145 INFO L290 TraceCheckUtils]: 33: Hoare triple {29109#true} ~__retres1~1 := 0; {29174#(and (<= is_do_read_c_triggered_~__retres1~1 0) (<= 0 is_do_read_c_triggered_~__retres1~1))} is VALID [2022-02-20 20:01:45,145 INFO L290 TraceCheckUtils]: 34: Hoare triple {29174#(and (<= is_do_read_c_triggered_~__retres1~1 0) (<= 0 is_do_read_c_triggered_~__retres1~1))} #res := ~__retres1~1; {29175#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} is VALID [2022-02-20 20:01:45,146 INFO L290 TraceCheckUtils]: 35: Hoare triple {29175#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} assume true; {29175#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} is VALID [2022-02-20 20:01:45,146 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {29175#(and (<= |is_do_read_c_triggered_#res| 0) (<= 0 |is_do_read_c_triggered_#res|))} {29109#true} #2055#return; {29172#(and (<= 0 |activate_threads1_#t~ret9|) (<= |activate_threads1_#t~ret9| 0))} is VALID [2022-02-20 20:01:45,147 INFO L290 TraceCheckUtils]: 37: Hoare triple {29172#(and (<= 0 |activate_threads1_#t~ret9|) (<= |activate_threads1_#t~ret9| 0))} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {29173#(and (< 0 (+ activate_threads1_~tmp___0~1 1)) (<= activate_threads1_~tmp___0~1 0))} is VALID [2022-02-20 20:01:45,147 INFO L290 TraceCheckUtils]: 38: Hoare triple {29173#(and (< 0 (+ activate_threads1_~tmp___0~1 1)) (<= activate_threads1_~tmp___0~1 0))} assume 0 != ~tmp___0~1;~c_dr_st~0 := 0; {29110#false} is VALID [2022-02-20 20:01:45,147 INFO L290 TraceCheckUtils]: 39: Hoare triple {29110#false} assume true; {29110#false} is VALID [2022-02-20 20:01:45,147 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {29110#false} {29109#true} #2061#return; {29110#false} is VALID [2022-02-20 20:01:45,148 INFO L272 TraceCheckUtils]: 41: Hoare triple {29110#false} call reset_delta_events1(); {29156#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:45,148 INFO L290 TraceCheckUtils]: 42: Hoare triple {29156#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(1 == ~q_read_ev~0); {29109#true} is VALID [2022-02-20 20:01:45,148 INFO L290 TraceCheckUtils]: 43: Hoare triple {29109#true} assume 1 == ~q_write_ev~0;~q_write_ev~0 := 2; {29109#true} is VALID [2022-02-20 20:01:45,148 INFO L290 TraceCheckUtils]: 44: Hoare triple {29109#true} assume true; {29109#true} is VALID [2022-02-20 20:01:45,148 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {29109#true} {29110#false} #2063#return; {29110#false} is VALID [2022-02-20 20:01:45,148 INFO L290 TraceCheckUtils]: 46: Hoare triple {29110#false} assume !false; {29110#false} is VALID [2022-02-20 20:01:45,148 INFO L290 TraceCheckUtils]: 47: Hoare triple {29110#false} start_simulation1_~kernel_st~0#1 := 1;assume { :begin_inline_eval1 } true;havoc eval1_#t~ret10#1, eval1_#t~nondet11#1, eval1_#t~nondet12#1, eval1_~tmp~2#1, eval1_~tmp___0~2#1, eval1_~tmp___1~0#1;havoc eval1_~tmp~2#1;havoc eval1_~tmp___0~2#1;havoc eval1_~tmp___1~0#1; {29110#false} is VALID [2022-02-20 20:01:45,149 INFO L290 TraceCheckUtils]: 48: Hoare triple {29110#false} assume !false; {29110#false} is VALID [2022-02-20 20:01:45,149 INFO L272 TraceCheckUtils]: 49: Hoare triple {29110#false} call eval1_#t~ret10#1 := exists_runnable_thread1(); {29109#true} is VALID [2022-02-20 20:01:45,149 INFO L290 TraceCheckUtils]: 50: Hoare triple {29109#true} havoc ~__retres1~2; {29109#true} is VALID [2022-02-20 20:01:45,149 INFO L290 TraceCheckUtils]: 51: Hoare triple {29109#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {29109#true} is VALID [2022-02-20 20:01:45,149 INFO L290 TraceCheckUtils]: 52: Hoare triple {29109#true} #res := ~__retres1~2; {29109#true} is VALID [2022-02-20 20:01:45,149 INFO L290 TraceCheckUtils]: 53: Hoare triple {29109#true} assume true; {29109#true} is VALID [2022-02-20 20:01:45,149 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {29109#true} {29110#false} #2065#return; {29110#false} is VALID [2022-02-20 20:01:45,150 INFO L290 TraceCheckUtils]: 55: Hoare triple {29110#false} assume -2147483648 <= eval1_#t~ret10#1 && eval1_#t~ret10#1 <= 2147483647;eval1_~tmp___1~0#1 := eval1_#t~ret10#1;havoc eval1_#t~ret10#1; {29110#false} is VALID [2022-02-20 20:01:45,150 INFO L290 TraceCheckUtils]: 56: Hoare triple {29110#false} assume 0 != eval1_~tmp___1~0#1; {29110#false} is VALID [2022-02-20 20:01:45,150 INFO L290 TraceCheckUtils]: 57: Hoare triple {29110#false} assume 0 == ~p_dw_st~0;assume -2147483648 <= eval1_#t~nondet11#1 && eval1_#t~nondet11#1 <= 2147483647;eval1_~tmp~2#1 := eval1_#t~nondet11#1;havoc eval1_#t~nondet11#1; {29110#false} is VALID [2022-02-20 20:01:45,150 INFO L290 TraceCheckUtils]: 58: Hoare triple {29110#false} assume 0 != eval1_~tmp~2#1;~p_dw_st~0 := 1;assume { :begin_inline_do_write_p } true;havoc do_write_p_#t~nondet7#1; {29110#false} is VALID [2022-02-20 20:01:45,150 INFO L290 TraceCheckUtils]: 59: Hoare triple {29110#false} assume 0 == ~p_dw_pc~0; {29110#false} is VALID [2022-02-20 20:01:45,150 INFO L290 TraceCheckUtils]: 60: Hoare triple {29110#false} assume !false; {29110#false} is VALID [2022-02-20 20:01:45,151 INFO L290 TraceCheckUtils]: 61: Hoare triple {29110#false} ~p_dw_st~0 := 2;~p_dw_pc~0 := 1; {29110#false} is VALID [2022-02-20 20:01:45,151 INFO L290 TraceCheckUtils]: 62: Hoare triple {29110#false} assume { :end_inline_do_write_p } true; {29110#false} is VALID [2022-02-20 20:01:45,151 INFO L290 TraceCheckUtils]: 63: Hoare triple {29110#false} assume !(0 == ~c_dr_st~0); {29110#false} is VALID [2022-02-20 20:01:45,151 INFO L290 TraceCheckUtils]: 64: Hoare triple {29110#false} assume !false; {29110#false} is VALID [2022-02-20 20:01:45,151 INFO L272 TraceCheckUtils]: 65: Hoare triple {29110#false} call eval1_#t~ret10#1 := exists_runnable_thread1(); {29109#true} is VALID [2022-02-20 20:01:45,151 INFO L290 TraceCheckUtils]: 66: Hoare triple {29109#true} havoc ~__retres1~2; {29109#true} is VALID [2022-02-20 20:01:45,152 INFO L290 TraceCheckUtils]: 67: Hoare triple {29109#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {29109#true} is VALID [2022-02-20 20:01:45,152 INFO L290 TraceCheckUtils]: 68: Hoare triple {29109#true} #res := ~__retres1~2; {29109#true} is VALID [2022-02-20 20:01:45,152 INFO L290 TraceCheckUtils]: 69: Hoare triple {29109#true} assume true; {29109#true} is VALID [2022-02-20 20:01:45,152 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {29109#true} {29110#false} #2065#return; {29110#false} is VALID [2022-02-20 20:01:45,152 INFO L290 TraceCheckUtils]: 71: Hoare triple {29110#false} assume -2147483648 <= eval1_#t~ret10#1 && eval1_#t~ret10#1 <= 2147483647;eval1_~tmp___1~0#1 := eval1_#t~ret10#1;havoc eval1_#t~ret10#1; {29110#false} is VALID [2022-02-20 20:01:45,152 INFO L290 TraceCheckUtils]: 72: Hoare triple {29110#false} assume 0 != eval1_~tmp___1~0#1; {29110#false} is VALID [2022-02-20 20:01:45,152 INFO L290 TraceCheckUtils]: 73: Hoare triple {29110#false} assume 0 == ~p_dw_st~0;assume -2147483648 <= eval1_#t~nondet11#1 && eval1_#t~nondet11#1 <= 2147483647;eval1_~tmp~2#1 := eval1_#t~nondet11#1;havoc eval1_#t~nondet11#1; {29110#false} is VALID [2022-02-20 20:01:45,153 INFO L290 TraceCheckUtils]: 74: Hoare triple {29110#false} assume 0 != eval1_~tmp~2#1;~p_dw_st~0 := 1;assume { :begin_inline_do_write_p } true;havoc do_write_p_#t~nondet7#1; {29110#false} is VALID [2022-02-20 20:01:45,153 INFO L290 TraceCheckUtils]: 75: Hoare triple {29110#false} assume !(0 == ~p_dw_pc~0); {29110#false} is VALID [2022-02-20 20:01:45,153 INFO L290 TraceCheckUtils]: 76: Hoare triple {29110#false} assume 1 == ~p_dw_pc~0; {29110#false} is VALID [2022-02-20 20:01:45,153 INFO L290 TraceCheckUtils]: 77: Hoare triple {29110#false} assume !(0 == ~q_free~0); {29110#false} is VALID [2022-02-20 20:01:45,153 INFO L290 TraceCheckUtils]: 78: Hoare triple {29110#false} assume -2147483648 <= do_write_p_#t~nondet7#1 && do_write_p_#t~nondet7#1 <= 2147483647;~q_buf_0~0 := do_write_p_#t~nondet7#1;havoc do_write_p_#t~nondet7#1;~p_last_write~0 := ~q_buf_0~0;~p_num_write~0 := 1 + ~p_num_write~0;~q_free~0 := 0;~q_req_up~0 := 1; {29110#false} is VALID [2022-02-20 20:01:45,153 INFO L290 TraceCheckUtils]: 79: Hoare triple {29110#false} assume !false; {29110#false} is VALID [2022-02-20 20:01:45,153 INFO L290 TraceCheckUtils]: 80: Hoare triple {29110#false} ~p_dw_st~0 := 2;~p_dw_pc~0 := 1; {29110#false} is VALID [2022-02-20 20:01:45,154 INFO L290 TraceCheckUtils]: 81: Hoare triple {29110#false} assume { :end_inline_do_write_p } true; {29110#false} is VALID [2022-02-20 20:01:45,154 INFO L290 TraceCheckUtils]: 82: Hoare triple {29110#false} assume 0 == ~c_dr_st~0;assume -2147483648 <= eval1_#t~nondet12#1 && eval1_#t~nondet12#1 <= 2147483647;eval1_~tmp___0~2#1 := eval1_#t~nondet12#1;havoc eval1_#t~nondet12#1; {29110#false} is VALID [2022-02-20 20:01:45,154 INFO L290 TraceCheckUtils]: 83: Hoare triple {29110#false} assume 0 != eval1_~tmp___0~2#1;~c_dr_st~0 := 1;assume { :begin_inline_do_read_c } true;havoc do_read_c_~a~0#1;havoc do_read_c_~a~0#1; {29110#false} is VALID [2022-02-20 20:01:45,154 INFO L290 TraceCheckUtils]: 84: Hoare triple {29110#false} assume !(0 == ~c_dr_pc~0); {29110#false} is VALID [2022-02-20 20:01:45,154 INFO L290 TraceCheckUtils]: 85: Hoare triple {29110#false} assume 2 == ~c_dr_pc~0; {29110#false} is VALID [2022-02-20 20:01:45,154 INFO L290 TraceCheckUtils]: 86: Hoare triple {29110#false} do_read_c_~a~0#1 := ~a_t~0; {29110#false} is VALID [2022-02-20 20:01:45,154 INFO L290 TraceCheckUtils]: 87: Hoare triple {29110#false} do_read_c_~a~0#1 := ~q_buf_0~0;~c_last_read~0 := do_read_c_~a~0#1;~c_num_read~0 := 1 + ~c_num_read~0;~q_free~0 := 1;~q_req_up~0 := 1; {29110#false} is VALID [2022-02-20 20:01:45,155 INFO L290 TraceCheckUtils]: 88: Hoare triple {29110#false} assume !(~p_last_write~0 == ~c_last_read~0); {29110#false} is VALID [2022-02-20 20:01:45,155 INFO L272 TraceCheckUtils]: 89: Hoare triple {29110#false} call error1(); {29110#false} is VALID [2022-02-20 20:01:45,155 INFO L290 TraceCheckUtils]: 90: Hoare triple {29110#false} assume !false; {29110#false} is VALID [2022-02-20 20:01:45,155 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-02-20 20:01:45,156 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:01:45,156 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [362935968] [2022-02-20 20:01:45,156 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [362935968] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:01:45,157 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:01:45,157 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-02-20 20:01:45,158 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1802393980] [2022-02-20 20:01:45,158 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:01:45,158 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 6.888888888888889) internal successors, (62), 5 states have internal predecessors, (62), 2 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) Word has length 91 [2022-02-20 20:01:45,159 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:01:45,159 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 6.888888888888889) internal successors, (62), 5 states have internal predecessors, (62), 2 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-20 20:01:45,215 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:01:45,216 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 20:01:45,216 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:01:45,216 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 20:01:45,216 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-02-20 20:01:45,217 INFO L87 Difference]: Start difference. First operand 1417 states and 1947 transitions. Second operand has 9 states, 9 states have (on average 6.888888888888889) internal successors, (62), 5 states have internal predecessors, (62), 2 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-20 20:01:49,492 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:49,493 INFO L93 Difference]: Finished difference Result 2594 states and 3498 transitions. [2022-02-20 20:01:49,493 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-02-20 20:01:49,493 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 6.888888888888889) internal successors, (62), 5 states have internal predecessors, (62), 2 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) Word has length 91 [2022-02-20 20:01:49,493 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 20:01:49,493 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 6.888888888888889) internal successors, (62), 5 states have internal predecessors, (62), 2 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-20 20:01:49,498 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 961 transitions. [2022-02-20 20:01:49,499 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 6.888888888888889) internal successors, (62), 5 states have internal predecessors, (62), 2 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-20 20:01:49,503 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 961 transitions. [2022-02-20 20:01:49,504 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 961 transitions. [2022-02-20 20:01:50,170 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 961 edges. 961 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:01:50,310 INFO L225 Difference]: With dead ends: 2594 [2022-02-20 20:01:50,310 INFO L226 Difference]: Without dead ends: 1588 [2022-02-20 20:01:50,312 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 33 GetRequests, 18 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=72, Invalid=200, Unknown=0, NotChecked=0, Total=272 [2022-02-20 20:01:50,313 INFO L933 BasicCegarLoop]: 769 mSDtfsCounter, 698 mSDsluCounter, 2640 mSDsCounter, 0 mSdLazyCounter, 1791 mSolverCounterSat, 103 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 700 SdHoareTripleChecker+Valid, 3409 SdHoareTripleChecker+Invalid, 1894 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 103 IncrementalHoareTripleChecker+Valid, 1791 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.5s IncrementalHoareTripleChecker+Time [2022-02-20 20:01:50,313 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [700 Valid, 3409 Invalid, 1894 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [103 Valid, 1791 Invalid, 0 Unknown, 0 Unchecked, 1.5s Time] [2022-02-20 20:01:50,315 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1588 states. [2022-02-20 20:01:50,390 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1588 to 1457. [2022-02-20 20:01:50,390 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 20:01:50,393 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1588 states. Second operand has 1457 states, 1198 states have (on average 1.3881469115191987) internal successors, (1663), 1212 states have internal predecessors, (1663), 147 states have call successors, (147), 88 states have call predecessors, (147), 110 states have return successors, (174), 158 states have call predecessors, (174), 145 states have call successors, (174) [2022-02-20 20:01:50,395 INFO L74 IsIncluded]: Start isIncluded. First operand 1588 states. Second operand has 1457 states, 1198 states have (on average 1.3881469115191987) internal successors, (1663), 1212 states have internal predecessors, (1663), 147 states have call successors, (147), 88 states have call predecessors, (147), 110 states have return successors, (174), 158 states have call predecessors, (174), 145 states have call successors, (174) [2022-02-20 20:01:50,398 INFO L87 Difference]: Start difference. First operand 1588 states. Second operand has 1457 states, 1198 states have (on average 1.3881469115191987) internal successors, (1663), 1212 states have internal predecessors, (1663), 147 states have call successors, (147), 88 states have call predecessors, (147), 110 states have return successors, (174), 158 states have call predecessors, (174), 145 states have call successors, (174) [2022-02-20 20:01:50,496 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:50,496 INFO L93 Difference]: Finished difference Result 1588 states and 2161 transitions. [2022-02-20 20:01:50,496 INFO L276 IsEmpty]: Start isEmpty. Operand 1588 states and 2161 transitions. [2022-02-20 20:01:50,501 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:01:50,501 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:01:50,504 INFO L74 IsIncluded]: Start isIncluded. First operand has 1457 states, 1198 states have (on average 1.3881469115191987) internal successors, (1663), 1212 states have internal predecessors, (1663), 147 states have call successors, (147), 88 states have call predecessors, (147), 110 states have return successors, (174), 158 states have call predecessors, (174), 145 states have call successors, (174) Second operand 1588 states. [2022-02-20 20:01:50,506 INFO L87 Difference]: Start difference. First operand has 1457 states, 1198 states have (on average 1.3881469115191987) internal successors, (1663), 1212 states have internal predecessors, (1663), 147 states have call successors, (147), 88 states have call predecessors, (147), 110 states have return successors, (174), 158 states have call predecessors, (174), 145 states have call successors, (174) Second operand 1588 states. [2022-02-20 20:01:50,630 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:50,630 INFO L93 Difference]: Finished difference Result 1588 states and 2161 transitions. [2022-02-20 20:01:50,630 INFO L276 IsEmpty]: Start isEmpty. Operand 1588 states and 2161 transitions. [2022-02-20 20:01:50,634 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:01:50,635 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:01:50,635 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 20:01:50,635 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 20:01:50,638 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1457 states, 1198 states have (on average 1.3881469115191987) internal successors, (1663), 1212 states have internal predecessors, (1663), 147 states have call successors, (147), 88 states have call predecessors, (147), 110 states have return successors, (174), 158 states have call predecessors, (174), 145 states have call successors, (174) [2022-02-20 20:01:50,767 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1457 states to 1457 states and 1984 transitions. [2022-02-20 20:01:50,768 INFO L78 Accepts]: Start accepts. Automaton has 1457 states and 1984 transitions. Word has length 91 [2022-02-20 20:01:50,768 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:01:50,768 INFO L470 AbstractCegarLoop]: Abstraction has 1457 states and 1984 transitions. [2022-02-20 20:01:50,769 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 6.888888888888889) internal successors, (62), 5 states have internal predecessors, (62), 2 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-02-20 20:01:50,769 INFO L276 IsEmpty]: Start isEmpty. Operand 1457 states and 1984 transitions. [2022-02-20 20:01:50,774 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-02-20 20:01:50,774 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 20:01:50,775 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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] [2022-02-20 20:01:50,775 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-02-20 20:01:50,775 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting error1Err0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, error1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 20:01:50,776 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:01:50,776 INFO L85 PathProgramCache]: Analyzing trace with hash -505261410, now seen corresponding path program 1 times [2022-02-20 20:01:50,776 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:01:50,776 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1076706345] [2022-02-20 20:01:50,776 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:01:50,777 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:01:50,795 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:50,823 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 4 [2022-02-20 20:01:50,825 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:50,835 INFO L290 TraceCheckUtils]: 0: Hoare triple {37802#(and (= ~q_ev~0 |old(~q_ev~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~q_req_up~0 |old(~q_req_up~0)|))} assume !(1 == ~q_req_up~0); {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:50,836 INFO L290 TraceCheckUtils]: 1: Hoare triple {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume true; {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:50,837 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} {37757#(= ~q_write_ev~0 ~q_read_ev~0)} #2057#return; {37757#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:50,837 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-02-20 20:01:50,839 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:50,845 INFO L290 TraceCheckUtils]: 0: Hoare triple {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(0 == ~q_read_ev~0); {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:50,846 INFO L290 TraceCheckUtils]: 1: Hoare triple {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(0 == ~q_write_ev~0); {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:50,846 INFO L290 TraceCheckUtils]: 2: Hoare triple {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume true; {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:50,847 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} {37757#(= ~q_write_ev~0 ~q_read_ev~0)} #2059#return; {37757#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:50,852 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-02-20 20:01:50,859 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:50,863 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 20:01:50,864 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:50,867 INFO L290 TraceCheckUtils]: 0: Hoare triple {37755#true} havoc ~__retres1~0; {37755#true} is VALID [2022-02-20 20:01:50,867 INFO L290 TraceCheckUtils]: 1: Hoare triple {37755#true} assume !(1 == ~p_dw_pc~0); {37755#true} is VALID [2022-02-20 20:01:50,867 INFO L290 TraceCheckUtils]: 2: Hoare triple {37755#true} assume !(2 == ~p_dw_pc~0); {37755#true} is VALID [2022-02-20 20:01:50,868 INFO L290 TraceCheckUtils]: 3: Hoare triple {37755#true} ~__retres1~0 := 0; {37755#true} is VALID [2022-02-20 20:01:50,868 INFO L290 TraceCheckUtils]: 4: Hoare triple {37755#true} #res := ~__retres1~0; {37755#true} is VALID [2022-02-20 20:01:50,868 INFO L290 TraceCheckUtils]: 5: Hoare triple {37755#true} assume true; {37755#true} is VALID [2022-02-20 20:01:50,868 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {37755#true} {37755#true} #2053#return; {37755#true} is VALID [2022-02-20 20:01:50,868 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-02-20 20:01:50,869 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:50,871 INFO L290 TraceCheckUtils]: 0: Hoare triple {37755#true} havoc ~__retres1~1; {37755#true} is VALID [2022-02-20 20:01:50,871 INFO L290 TraceCheckUtils]: 1: Hoare triple {37755#true} assume !(1 == ~c_dr_pc~0); {37755#true} is VALID [2022-02-20 20:01:50,871 INFO L290 TraceCheckUtils]: 2: Hoare triple {37755#true} assume !(2 == ~c_dr_pc~0); {37755#true} is VALID [2022-02-20 20:01:50,871 INFO L290 TraceCheckUtils]: 3: Hoare triple {37755#true} ~__retres1~1 := 0; {37755#true} is VALID [2022-02-20 20:01:50,871 INFO L290 TraceCheckUtils]: 4: Hoare triple {37755#true} #res := ~__retres1~1; {37755#true} is VALID [2022-02-20 20:01:50,871 INFO L290 TraceCheckUtils]: 5: Hoare triple {37755#true} assume true; {37755#true} is VALID [2022-02-20 20:01:50,872 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {37755#true} {37755#true} #2055#return; {37755#true} is VALID [2022-02-20 20:01:50,872 INFO L290 TraceCheckUtils]: 0: Hoare triple {37804#(and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~1;havoc ~tmp___0~1; {37755#true} is VALID [2022-02-20 20:01:50,872 INFO L272 TraceCheckUtils]: 1: Hoare triple {37755#true} call #t~ret8 := is_do_write_p_triggered(); {37755#true} is VALID [2022-02-20 20:01:50,872 INFO L290 TraceCheckUtils]: 2: Hoare triple {37755#true} havoc ~__retres1~0; {37755#true} is VALID [2022-02-20 20:01:50,872 INFO L290 TraceCheckUtils]: 3: Hoare triple {37755#true} assume !(1 == ~p_dw_pc~0); {37755#true} is VALID [2022-02-20 20:01:50,872 INFO L290 TraceCheckUtils]: 4: Hoare triple {37755#true} assume !(2 == ~p_dw_pc~0); {37755#true} is VALID [2022-02-20 20:01:50,872 INFO L290 TraceCheckUtils]: 5: Hoare triple {37755#true} ~__retres1~0 := 0; {37755#true} is VALID [2022-02-20 20:01:50,873 INFO L290 TraceCheckUtils]: 6: Hoare triple {37755#true} #res := ~__retres1~0; {37755#true} is VALID [2022-02-20 20:01:50,873 INFO L290 TraceCheckUtils]: 7: Hoare triple {37755#true} assume true; {37755#true} is VALID [2022-02-20 20:01:50,873 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {37755#true} {37755#true} #2053#return; {37755#true} is VALID [2022-02-20 20:01:50,873 INFO L290 TraceCheckUtils]: 9: Hoare triple {37755#true} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {37755#true} is VALID [2022-02-20 20:01:50,873 INFO L290 TraceCheckUtils]: 10: Hoare triple {37755#true} assume !(0 != ~tmp~1); {37755#true} is VALID [2022-02-20 20:01:50,873 INFO L272 TraceCheckUtils]: 11: Hoare triple {37755#true} call #t~ret9 := is_do_read_c_triggered(); {37755#true} is VALID [2022-02-20 20:01:50,873 INFO L290 TraceCheckUtils]: 12: Hoare triple {37755#true} havoc ~__retres1~1; {37755#true} is VALID [2022-02-20 20:01:50,874 INFO L290 TraceCheckUtils]: 13: Hoare triple {37755#true} assume !(1 == ~c_dr_pc~0); {37755#true} is VALID [2022-02-20 20:01:50,874 INFO L290 TraceCheckUtils]: 14: Hoare triple {37755#true} assume !(2 == ~c_dr_pc~0); {37755#true} is VALID [2022-02-20 20:01:50,874 INFO L290 TraceCheckUtils]: 15: Hoare triple {37755#true} ~__retres1~1 := 0; {37755#true} is VALID [2022-02-20 20:01:50,874 INFO L290 TraceCheckUtils]: 16: Hoare triple {37755#true} #res := ~__retres1~1; {37755#true} is VALID [2022-02-20 20:01:50,874 INFO L290 TraceCheckUtils]: 17: Hoare triple {37755#true} assume true; {37755#true} is VALID [2022-02-20 20:01:50,874 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {37755#true} {37755#true} #2055#return; {37755#true} is VALID [2022-02-20 20:01:50,874 INFO L290 TraceCheckUtils]: 19: Hoare triple {37755#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {37755#true} is VALID [2022-02-20 20:01:50,875 INFO L290 TraceCheckUtils]: 20: Hoare triple {37755#true} assume !(0 != ~tmp___0~1); {37755#true} is VALID [2022-02-20 20:01:50,875 INFO L290 TraceCheckUtils]: 21: Hoare triple {37755#true} assume true; {37755#true} is VALID [2022-02-20 20:01:50,875 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {37755#true} {37757#(= ~q_write_ev~0 ~q_read_ev~0)} #2061#return; {37757#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:50,876 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 41 [2022-02-20 20:01:50,878 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:50,896 INFO L290 TraceCheckUtils]: 0: Hoare triple {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(1 == ~q_read_ev~0); {37819#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (not (= |old(~q_read_ev~0)| 1)))} is VALID [2022-02-20 20:01:50,897 INFO L290 TraceCheckUtils]: 1: Hoare triple {37819#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (not (= |old(~q_read_ev~0)| 1)))} assume 1 == ~q_write_ev~0;~q_write_ev~0 := 2; {37820#(not (= |old(~q_read_ev~0)| |old(~q_write_ev~0)|))} is VALID [2022-02-20 20:01:50,897 INFO L290 TraceCheckUtils]: 2: Hoare triple {37820#(not (= |old(~q_read_ev~0)| |old(~q_write_ev~0)|))} assume true; {37820#(not (= |old(~q_read_ev~0)| |old(~q_write_ev~0)|))} is VALID [2022-02-20 20:01:50,897 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37820#(not (= |old(~q_read_ev~0)| |old(~q_write_ev~0)|))} {37757#(= ~q_write_ev~0 ~q_read_ev~0)} #2063#return; {37756#false} is VALID [2022-02-20 20:01:50,898 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 49 [2022-02-20 20:01:50,900 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:50,903 INFO L290 TraceCheckUtils]: 0: Hoare triple {37755#true} havoc ~__retres1~2; {37755#true} is VALID [2022-02-20 20:01:50,906 INFO L290 TraceCheckUtils]: 1: Hoare triple {37755#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {37755#true} is VALID [2022-02-20 20:01:50,906 INFO L290 TraceCheckUtils]: 2: Hoare triple {37755#true} #res := ~__retres1~2; {37755#true} is VALID [2022-02-20 20:01:50,907 INFO L290 TraceCheckUtils]: 3: Hoare triple {37755#true} assume true; {37755#true} is VALID [2022-02-20 20:01:50,907 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {37755#true} {37756#false} #2065#return; {37756#false} is VALID [2022-02-20 20:01:50,907 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 65 [2022-02-20 20:01:50,909 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:50,911 INFO L290 TraceCheckUtils]: 0: Hoare triple {37755#true} havoc ~__retres1~2; {37755#true} is VALID [2022-02-20 20:01:50,911 INFO L290 TraceCheckUtils]: 1: Hoare triple {37755#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {37755#true} is VALID [2022-02-20 20:01:50,911 INFO L290 TraceCheckUtils]: 2: Hoare triple {37755#true} #res := ~__retres1~2; {37755#true} is VALID [2022-02-20 20:01:50,911 INFO L290 TraceCheckUtils]: 3: Hoare triple {37755#true} assume true; {37755#true} is VALID [2022-02-20 20:01:50,911 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {37755#true} {37756#false} #2065#return; {37756#false} is VALID [2022-02-20 20:01:50,911 INFO L290 TraceCheckUtils]: 0: Hoare triple {37755#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(17, 2);call #Ultimate.allocInit(12, 3);~fast_clk_edge~0 := 0;~slow_clk_edge~0 := 0;~q_buf_0~0 := 0;~q_free~0 := 0;~q_read_ev~0 := 0;~q_write_ev~0 := 0;~q_req_up~0 := 0;~q_ev~0 := 0;~p_num_write~0 := 0;~p_last_write~0 := 0;~p_dw_st~0 := 0;~p_dw_pc~0 := 0;~p_dw_i~0 := 0;~c_num_read~0 := 0;~c_last_read~0 := 0;~c_dr_st~0 := 0;~c_dr_pc~0 := 0;~c_dr_i~0 := 0;~a_t~0 := 0;~t~0 := 0;~m_pc~0 := 0;~t1_pc~0 := 0;~t2_pc~0 := 0;~t3_pc~0 := 0;~t4_pc~0 := 0;~t5_pc~0 := 0;~t6_pc~0 := 0;~t7_pc~0 := 0;~t8_pc~0 := 0;~t9_pc~0 := 0;~t10_pc~0 := 0;~t11_pc~0 := 0;~t12_pc~0 := 0;~t13_pc~0 := 0;~m_st~0 := 0;~t1_st~0 := 0;~t2_st~0 := 0;~t3_st~0 := 0;~t4_st~0 := 0;~t5_st~0 := 0;~t6_st~0 := 0;~t7_st~0 := 0;~t8_st~0 := 0;~t9_st~0 := 0;~t10_st~0 := 0;~t11_st~0 := 0;~t12_st~0 := 0;~t13_st~0 := 0;~m_i~0 := 0;~t1_i~0 := 0;~t2_i~0 := 0;~t3_i~0 := 0;~t4_i~0 := 0;~t5_i~0 := 0;~t6_i~0 := 0;~t7_i~0 := 0;~t8_i~0 := 0;~t9_i~0 := 0;~t10_i~0 := 0;~t11_i~0 := 0;~t12_i~0 := 0;~t13_i~0 := 0;~M_E~0 := 2;~T1_E~0 := 2;~T2_E~0 := 2;~T3_E~0 := 2;~T4_E~0 := 2;~T5_E~0 := 2;~T6_E~0 := 2;~T7_E~0 := 2;~T8_E~0 := 2;~T9_E~0 := 2;~T10_E~0 := 2;~T11_E~0 := 2;~T12_E~0 := 2;~T13_E~0 := 2;~E_M~0 := 2;~E_1~0 := 2;~E_2~0 := 2;~E_3~0 := 2;~E_4~0 := 2;~E_5~0 := 2;~E_6~0 := 2;~E_7~0 := 2;~E_8~0 := 2;~E_9~0 := 2;~E_10~0 := 2;~E_11~0 := 2;~E_12~0 := 2;~E_13~0 := 2;~token~0 := 0;~local~0 := 0; {37755#true} is VALID [2022-02-20 20:01:50,912 INFO L290 TraceCheckUtils]: 1: Hoare triple {37755#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet53#1, main_#t~ret54#1, main_#t~ret55#1;assume -2147483648 <= main_#t~nondet53#1 && main_#t~nondet53#1 <= 2147483647; {37755#true} is VALID [2022-02-20 20:01:50,912 INFO L290 TraceCheckUtils]: 2: Hoare triple {37755#true} assume 0 != main_#t~nondet53#1;havoc main_#t~nondet53#1;assume { :begin_inline_main1 } true;havoc main1_#res#1;havoc main1_~__retres1~3#1;havoc main1_~__retres1~3#1;assume { :begin_inline_init_model1 } true;~fast_clk_edge~0 := 2;~slow_clk_edge~0 := 2;~q_free~0 := 1;~q_write_ev~0 := 2;~q_read_ev~0 := ~q_write_ev~0;~p_num_write~0 := 0;~p_dw_pc~0 := 0;~p_dw_i~0 := 1;~c_num_read~0 := 0;~c_dr_pc~0 := 0;~c_dr_i~0 := 1; {37757#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:50,912 INFO L290 TraceCheckUtils]: 3: Hoare triple {37757#(= ~q_write_ev~0 ~q_read_ev~0)} assume { :end_inline_init_model1 } true;assume { :begin_inline_start_simulation1 } true;havoc start_simulation1_#t~ret14#1, start_simulation1_#t~ret15#1, start_simulation1_~kernel_st~0#1, start_simulation1_~tmp~4#1, start_simulation1_~tmp___0~3#1;havoc start_simulation1_~kernel_st~0#1;havoc start_simulation1_~tmp~4#1;havoc start_simulation1_~tmp___0~3#1;start_simulation1_~kernel_st~0#1 := 0; {37757#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:50,913 INFO L272 TraceCheckUtils]: 4: Hoare triple {37757#(= ~q_write_ev~0 ~q_read_ev~0)} call update_channels1(); {37802#(and (= ~q_ev~0 |old(~q_ev~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~q_req_up~0 |old(~q_req_up~0)|))} is VALID [2022-02-20 20:01:50,913 INFO L290 TraceCheckUtils]: 5: Hoare triple {37802#(and (= ~q_ev~0 |old(~q_ev~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~q_req_up~0 |old(~q_req_up~0)|))} assume !(1 == ~q_req_up~0); {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:50,914 INFO L290 TraceCheckUtils]: 6: Hoare triple {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume true; {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:50,914 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} {37757#(= ~q_write_ev~0 ~q_read_ev~0)} #2057#return; {37757#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:50,915 INFO L290 TraceCheckUtils]: 8: Hoare triple {37757#(= ~q_write_ev~0 ~q_read_ev~0)} assume { :begin_inline_init_threads1 } true; {37757#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:50,915 INFO L290 TraceCheckUtils]: 9: Hoare triple {37757#(= ~q_write_ev~0 ~q_read_ev~0)} assume 1 == ~p_dw_i~0;~p_dw_st~0 := 0; {37757#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:50,915 INFO L290 TraceCheckUtils]: 10: Hoare triple {37757#(= ~q_write_ev~0 ~q_read_ev~0)} assume 1 == ~c_dr_i~0;~c_dr_st~0 := 0; {37757#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:50,915 INFO L290 TraceCheckUtils]: 11: Hoare triple {37757#(= ~q_write_ev~0 ~q_read_ev~0)} assume { :end_inline_init_threads1 } true; {37757#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:50,916 INFO L272 TraceCheckUtils]: 12: Hoare triple {37757#(= ~q_write_ev~0 ~q_read_ev~0)} call fire_delta_events1(); {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:50,916 INFO L290 TraceCheckUtils]: 13: Hoare triple {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(0 == ~q_read_ev~0); {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:50,917 INFO L290 TraceCheckUtils]: 14: Hoare triple {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(0 == ~q_write_ev~0); {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:50,917 INFO L290 TraceCheckUtils]: 15: Hoare triple {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume true; {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:50,918 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} {37757#(= ~q_write_ev~0 ~q_read_ev~0)} #2059#return; {37757#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:50,918 INFO L272 TraceCheckUtils]: 17: Hoare triple {37757#(= ~q_write_ev~0 ~q_read_ev~0)} call activate_threads1(); {37804#(and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2022-02-20 20:01:50,918 INFO L290 TraceCheckUtils]: 18: Hoare triple {37804#(and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~1;havoc ~tmp___0~1; {37755#true} is VALID [2022-02-20 20:01:50,918 INFO L272 TraceCheckUtils]: 19: Hoare triple {37755#true} call #t~ret8 := is_do_write_p_triggered(); {37755#true} is VALID [2022-02-20 20:01:50,918 INFO L290 TraceCheckUtils]: 20: Hoare triple {37755#true} havoc ~__retres1~0; {37755#true} is VALID [2022-02-20 20:01:50,919 INFO L290 TraceCheckUtils]: 21: Hoare triple {37755#true} assume !(1 == ~p_dw_pc~0); {37755#true} is VALID [2022-02-20 20:01:50,919 INFO L290 TraceCheckUtils]: 22: Hoare triple {37755#true} assume !(2 == ~p_dw_pc~0); {37755#true} is VALID [2022-02-20 20:01:50,919 INFO L290 TraceCheckUtils]: 23: Hoare triple {37755#true} ~__retres1~0 := 0; {37755#true} is VALID [2022-02-20 20:01:50,919 INFO L290 TraceCheckUtils]: 24: Hoare triple {37755#true} #res := ~__retres1~0; {37755#true} is VALID [2022-02-20 20:01:50,919 INFO L290 TraceCheckUtils]: 25: Hoare triple {37755#true} assume true; {37755#true} is VALID [2022-02-20 20:01:50,919 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {37755#true} {37755#true} #2053#return; {37755#true} is VALID [2022-02-20 20:01:50,919 INFO L290 TraceCheckUtils]: 27: Hoare triple {37755#true} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {37755#true} is VALID [2022-02-20 20:01:50,920 INFO L290 TraceCheckUtils]: 28: Hoare triple {37755#true} assume !(0 != ~tmp~1); {37755#true} is VALID [2022-02-20 20:01:50,920 INFO L272 TraceCheckUtils]: 29: Hoare triple {37755#true} call #t~ret9 := is_do_read_c_triggered(); {37755#true} is VALID [2022-02-20 20:01:50,920 INFO L290 TraceCheckUtils]: 30: Hoare triple {37755#true} havoc ~__retres1~1; {37755#true} is VALID [2022-02-20 20:01:50,920 INFO L290 TraceCheckUtils]: 31: Hoare triple {37755#true} assume !(1 == ~c_dr_pc~0); {37755#true} is VALID [2022-02-20 20:01:50,920 INFO L290 TraceCheckUtils]: 32: Hoare triple {37755#true} assume !(2 == ~c_dr_pc~0); {37755#true} is VALID [2022-02-20 20:01:50,920 INFO L290 TraceCheckUtils]: 33: Hoare triple {37755#true} ~__retres1~1 := 0; {37755#true} is VALID [2022-02-20 20:01:50,920 INFO L290 TraceCheckUtils]: 34: Hoare triple {37755#true} #res := ~__retres1~1; {37755#true} is VALID [2022-02-20 20:01:50,933 INFO L290 TraceCheckUtils]: 35: Hoare triple {37755#true} assume true; {37755#true} is VALID [2022-02-20 20:01:50,933 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {37755#true} {37755#true} #2055#return; {37755#true} is VALID [2022-02-20 20:01:50,934 INFO L290 TraceCheckUtils]: 37: Hoare triple {37755#true} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {37755#true} is VALID [2022-02-20 20:01:50,934 INFO L290 TraceCheckUtils]: 38: Hoare triple {37755#true} assume !(0 != ~tmp___0~1); {37755#true} is VALID [2022-02-20 20:01:50,934 INFO L290 TraceCheckUtils]: 39: Hoare triple {37755#true} assume true; {37755#true} is VALID [2022-02-20 20:01:50,934 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {37755#true} {37757#(= ~q_write_ev~0 ~q_read_ev~0)} #2061#return; {37757#(= ~q_write_ev~0 ~q_read_ev~0)} is VALID [2022-02-20 20:01:50,935 INFO L272 TraceCheckUtils]: 41: Hoare triple {37757#(= ~q_write_ev~0 ~q_read_ev~0)} call reset_delta_events1(); {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:50,935 INFO L290 TraceCheckUtils]: 42: Hoare triple {37803#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(1 == ~q_read_ev~0); {37819#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (not (= |old(~q_read_ev~0)| 1)))} is VALID [2022-02-20 20:01:50,936 INFO L290 TraceCheckUtils]: 43: Hoare triple {37819#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (not (= |old(~q_read_ev~0)| 1)))} assume 1 == ~q_write_ev~0;~q_write_ev~0 := 2; {37820#(not (= |old(~q_read_ev~0)| |old(~q_write_ev~0)|))} is VALID [2022-02-20 20:01:50,936 INFO L290 TraceCheckUtils]: 44: Hoare triple {37820#(not (= |old(~q_read_ev~0)| |old(~q_write_ev~0)|))} assume true; {37820#(not (= |old(~q_read_ev~0)| |old(~q_write_ev~0)|))} is VALID [2022-02-20 20:01:50,937 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {37820#(not (= |old(~q_read_ev~0)| |old(~q_write_ev~0)|))} {37757#(= ~q_write_ev~0 ~q_read_ev~0)} #2063#return; {37756#false} is VALID [2022-02-20 20:01:50,937 INFO L290 TraceCheckUtils]: 46: Hoare triple {37756#false} assume !false; {37756#false} is VALID [2022-02-20 20:01:50,937 INFO L290 TraceCheckUtils]: 47: Hoare triple {37756#false} start_simulation1_~kernel_st~0#1 := 1;assume { :begin_inline_eval1 } true;havoc eval1_#t~ret10#1, eval1_#t~nondet11#1, eval1_#t~nondet12#1, eval1_~tmp~2#1, eval1_~tmp___0~2#1, eval1_~tmp___1~0#1;havoc eval1_~tmp~2#1;havoc eval1_~tmp___0~2#1;havoc eval1_~tmp___1~0#1; {37756#false} is VALID [2022-02-20 20:01:50,937 INFO L290 TraceCheckUtils]: 48: Hoare triple {37756#false} assume !false; {37756#false} is VALID [2022-02-20 20:01:50,937 INFO L272 TraceCheckUtils]: 49: Hoare triple {37756#false} call eval1_#t~ret10#1 := exists_runnable_thread1(); {37755#true} is VALID [2022-02-20 20:01:50,937 INFO L290 TraceCheckUtils]: 50: Hoare triple {37755#true} havoc ~__retres1~2; {37755#true} is VALID [2022-02-20 20:01:50,937 INFO L290 TraceCheckUtils]: 51: Hoare triple {37755#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {37755#true} is VALID [2022-02-20 20:01:50,938 INFO L290 TraceCheckUtils]: 52: Hoare triple {37755#true} #res := ~__retres1~2; {37755#true} is VALID [2022-02-20 20:01:50,938 INFO L290 TraceCheckUtils]: 53: Hoare triple {37755#true} assume true; {37755#true} is VALID [2022-02-20 20:01:50,938 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {37755#true} {37756#false} #2065#return; {37756#false} is VALID [2022-02-20 20:01:50,938 INFO L290 TraceCheckUtils]: 55: Hoare triple {37756#false} assume -2147483648 <= eval1_#t~ret10#1 && eval1_#t~ret10#1 <= 2147483647;eval1_~tmp___1~0#1 := eval1_#t~ret10#1;havoc eval1_#t~ret10#1; {37756#false} is VALID [2022-02-20 20:01:50,938 INFO L290 TraceCheckUtils]: 56: Hoare triple {37756#false} assume 0 != eval1_~tmp___1~0#1; {37756#false} is VALID [2022-02-20 20:01:50,938 INFO L290 TraceCheckUtils]: 57: Hoare triple {37756#false} assume 0 == ~p_dw_st~0;assume -2147483648 <= eval1_#t~nondet11#1 && eval1_#t~nondet11#1 <= 2147483647;eval1_~tmp~2#1 := eval1_#t~nondet11#1;havoc eval1_#t~nondet11#1; {37756#false} is VALID [2022-02-20 20:01:50,938 INFO L290 TraceCheckUtils]: 58: Hoare triple {37756#false} assume 0 != eval1_~tmp~2#1;~p_dw_st~0 := 1;assume { :begin_inline_do_write_p } true;havoc do_write_p_#t~nondet7#1; {37756#false} is VALID [2022-02-20 20:01:50,938 INFO L290 TraceCheckUtils]: 59: Hoare triple {37756#false} assume 0 == ~p_dw_pc~0; {37756#false} is VALID [2022-02-20 20:01:50,939 INFO L290 TraceCheckUtils]: 60: Hoare triple {37756#false} assume !false; {37756#false} is VALID [2022-02-20 20:01:50,939 INFO L290 TraceCheckUtils]: 61: Hoare triple {37756#false} ~p_dw_st~0 := 2;~p_dw_pc~0 := 1; {37756#false} is VALID [2022-02-20 20:01:50,939 INFO L290 TraceCheckUtils]: 62: Hoare triple {37756#false} assume { :end_inline_do_write_p } true; {37756#false} is VALID [2022-02-20 20:01:50,939 INFO L290 TraceCheckUtils]: 63: Hoare triple {37756#false} assume !(0 == ~c_dr_st~0); {37756#false} is VALID [2022-02-20 20:01:50,939 INFO L290 TraceCheckUtils]: 64: Hoare triple {37756#false} assume !false; {37756#false} is VALID [2022-02-20 20:01:50,939 INFO L272 TraceCheckUtils]: 65: Hoare triple {37756#false} call eval1_#t~ret10#1 := exists_runnable_thread1(); {37755#true} is VALID [2022-02-20 20:01:50,939 INFO L290 TraceCheckUtils]: 66: Hoare triple {37755#true} havoc ~__retres1~2; {37755#true} is VALID [2022-02-20 20:01:50,940 INFO L290 TraceCheckUtils]: 67: Hoare triple {37755#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {37755#true} is VALID [2022-02-20 20:01:50,940 INFO L290 TraceCheckUtils]: 68: Hoare triple {37755#true} #res := ~__retres1~2; {37755#true} is VALID [2022-02-20 20:01:50,940 INFO L290 TraceCheckUtils]: 69: Hoare triple {37755#true} assume true; {37755#true} is VALID [2022-02-20 20:01:50,940 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {37755#true} {37756#false} #2065#return; {37756#false} is VALID [2022-02-20 20:01:50,940 INFO L290 TraceCheckUtils]: 71: Hoare triple {37756#false} assume -2147483648 <= eval1_#t~ret10#1 && eval1_#t~ret10#1 <= 2147483647;eval1_~tmp___1~0#1 := eval1_#t~ret10#1;havoc eval1_#t~ret10#1; {37756#false} is VALID [2022-02-20 20:01:50,940 INFO L290 TraceCheckUtils]: 72: Hoare triple {37756#false} assume 0 != eval1_~tmp___1~0#1; {37756#false} is VALID [2022-02-20 20:01:50,940 INFO L290 TraceCheckUtils]: 73: Hoare triple {37756#false} assume 0 == ~p_dw_st~0;assume -2147483648 <= eval1_#t~nondet11#1 && eval1_#t~nondet11#1 <= 2147483647;eval1_~tmp~2#1 := eval1_#t~nondet11#1;havoc eval1_#t~nondet11#1; {37756#false} is VALID [2022-02-20 20:01:50,941 INFO L290 TraceCheckUtils]: 74: Hoare triple {37756#false} assume 0 != eval1_~tmp~2#1;~p_dw_st~0 := 1;assume { :begin_inline_do_write_p } true;havoc do_write_p_#t~nondet7#1; {37756#false} is VALID [2022-02-20 20:01:50,941 INFO L290 TraceCheckUtils]: 75: Hoare triple {37756#false} assume !(0 == ~p_dw_pc~0); {37756#false} is VALID [2022-02-20 20:01:50,941 INFO L290 TraceCheckUtils]: 76: Hoare triple {37756#false} assume 1 == ~p_dw_pc~0; {37756#false} is VALID [2022-02-20 20:01:50,941 INFO L290 TraceCheckUtils]: 77: Hoare triple {37756#false} assume !(0 == ~q_free~0); {37756#false} is VALID [2022-02-20 20:01:50,941 INFO L290 TraceCheckUtils]: 78: Hoare triple {37756#false} assume -2147483648 <= do_write_p_#t~nondet7#1 && do_write_p_#t~nondet7#1 <= 2147483647;~q_buf_0~0 := do_write_p_#t~nondet7#1;havoc do_write_p_#t~nondet7#1;~p_last_write~0 := ~q_buf_0~0;~p_num_write~0 := 1 + ~p_num_write~0;~q_free~0 := 0;~q_req_up~0 := 1; {37756#false} is VALID [2022-02-20 20:01:50,941 INFO L290 TraceCheckUtils]: 79: Hoare triple {37756#false} assume !false; {37756#false} is VALID [2022-02-20 20:01:50,941 INFO L290 TraceCheckUtils]: 80: Hoare triple {37756#false} ~p_dw_st~0 := 2;~p_dw_pc~0 := 1; {37756#false} is VALID [2022-02-20 20:01:50,942 INFO L290 TraceCheckUtils]: 81: Hoare triple {37756#false} assume { :end_inline_do_write_p } true; {37756#false} is VALID [2022-02-20 20:01:50,942 INFO L290 TraceCheckUtils]: 82: Hoare triple {37756#false} assume 0 == ~c_dr_st~0;assume -2147483648 <= eval1_#t~nondet12#1 && eval1_#t~nondet12#1 <= 2147483647;eval1_~tmp___0~2#1 := eval1_#t~nondet12#1;havoc eval1_#t~nondet12#1; {37756#false} is VALID [2022-02-20 20:01:50,942 INFO L290 TraceCheckUtils]: 83: Hoare triple {37756#false} assume 0 != eval1_~tmp___0~2#1;~c_dr_st~0 := 1;assume { :begin_inline_do_read_c } true;havoc do_read_c_~a~0#1;havoc do_read_c_~a~0#1; {37756#false} is VALID [2022-02-20 20:01:50,942 INFO L290 TraceCheckUtils]: 84: Hoare triple {37756#false} assume !(0 == ~c_dr_pc~0); {37756#false} is VALID [2022-02-20 20:01:50,942 INFO L290 TraceCheckUtils]: 85: Hoare triple {37756#false} assume 2 == ~c_dr_pc~0; {37756#false} is VALID [2022-02-20 20:01:50,942 INFO L290 TraceCheckUtils]: 86: Hoare triple {37756#false} do_read_c_~a~0#1 := ~a_t~0; {37756#false} is VALID [2022-02-20 20:01:50,942 INFO L290 TraceCheckUtils]: 87: Hoare triple {37756#false} do_read_c_~a~0#1 := ~q_buf_0~0;~c_last_read~0 := do_read_c_~a~0#1;~c_num_read~0 := 1 + ~c_num_read~0;~q_free~0 := 1;~q_req_up~0 := 1; {37756#false} is VALID [2022-02-20 20:01:50,943 INFO L290 TraceCheckUtils]: 88: Hoare triple {37756#false} assume !(~p_last_write~0 == ~c_last_read~0); {37756#false} is VALID [2022-02-20 20:01:50,943 INFO L272 TraceCheckUtils]: 89: Hoare triple {37756#false} call error1(); {37756#false} is VALID [2022-02-20 20:01:50,943 INFO L290 TraceCheckUtils]: 90: Hoare triple {37756#false} assume !false; {37756#false} is VALID [2022-02-20 20:01:50,943 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-02-20 20:01:50,943 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:01:50,943 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1076706345] [2022-02-20 20:01:50,944 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1076706345] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:01:50,944 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:01:50,944 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-02-20 20:01:50,944 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [202780701] [2022-02-20 20:01:50,944 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:01:50,945 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 7.75) internal successors, (62), 6 states have internal predecessors, (62), 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) Word has length 91 [2022-02-20 20:01:50,946 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:01:50,946 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 7.75) internal successors, (62), 6 states have internal predecessors, (62), 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) [2022-02-20 20:01:50,994 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:01:50,995 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 20:01:50,995 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:01:50,996 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 20:01:50,996 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=42, Unknown=0, NotChecked=0, Total=56 [2022-02-20 20:01:50,996 INFO L87 Difference]: Start difference. First operand 1457 states and 1984 transitions. Second operand has 8 states, 8 states have (on average 7.75) internal successors, (62), 6 states have internal predecessors, (62), 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) [2022-02-20 20:01:55,349 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:55,349 INFO L93 Difference]: Finished difference Result 3495 states and 4589 transitions. [2022-02-20 20:01:55,349 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-02-20 20:01:55,349 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 7.75) internal successors, (62), 6 states have internal predecessors, (62), 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) Word has length 91 [2022-02-20 20:01:55,350 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 20:01:55,350 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 7.75) internal successors, (62), 6 states have internal predecessors, (62), 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) [2022-02-20 20:01:55,355 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 1160 transitions. [2022-02-20 20:01:55,355 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 7.75) internal successors, (62), 6 states have internal predecessors, (62), 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) [2022-02-20 20:01:55,362 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 1160 transitions. [2022-02-20 20:01:55,362 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 1160 transitions. [2022-02-20 20:01:56,172 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1160 edges. 1160 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:01:56,432 INFO L225 Difference]: With dead ends: 3495 [2022-02-20 20:01:56,432 INFO L226 Difference]: Without dead ends: 2450 [2022-02-20 20:01:56,434 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 41 GetRequests, 23 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 67 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=103, Invalid=277, Unknown=0, NotChecked=0, Total=380 [2022-02-20 20:01:56,435 INFO L933 BasicCegarLoop]: 802 mSDtfsCounter, 1556 mSDsluCounter, 1930 mSDsCounter, 0 mSdLazyCounter, 1416 mSolverCounterSat, 161 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1589 SdHoareTripleChecker+Valid, 2732 SdHoareTripleChecker+Invalid, 1577 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 161 IncrementalHoareTripleChecker+Valid, 1416 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.4s IncrementalHoareTripleChecker+Time [2022-02-20 20:01:56,435 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [1589 Valid, 2732 Invalid, 1577 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [161 Valid, 1416 Invalid, 0 Unknown, 0 Unchecked, 1.4s Time] [2022-02-20 20:01:56,437 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2450 states. [2022-02-20 20:01:56,569 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2450 to 2134. [2022-02-20 20:01:56,569 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 20:01:56,573 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2450 states. Second operand has 2134 states, 1727 states have (on average 1.3474232773595831) internal successors, (2327), 1754 states have internal predecessors, (2327), 223 states have call successors, (223), 141 states have call predecessors, (223), 182 states have return successors, (287), 241 states have call predecessors, (287), 221 states have call successors, (287) [2022-02-20 20:01:56,576 INFO L74 IsIncluded]: Start isIncluded. First operand 2450 states. Second operand has 2134 states, 1727 states have (on average 1.3474232773595831) internal successors, (2327), 1754 states have internal predecessors, (2327), 223 states have call successors, (223), 141 states have call predecessors, (223), 182 states have return successors, (287), 241 states have call predecessors, (287), 221 states have call successors, (287) [2022-02-20 20:01:56,579 INFO L87 Difference]: Start difference. First operand 2450 states. Second operand has 2134 states, 1727 states have (on average 1.3474232773595831) internal successors, (2327), 1754 states have internal predecessors, (2327), 223 states have call successors, (223), 141 states have call predecessors, (223), 182 states have return successors, (287), 241 states have call predecessors, (287), 221 states have call successors, (287) [2022-02-20 20:01:56,840 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:56,840 INFO L93 Difference]: Finished difference Result 2450 states and 3235 transitions. [2022-02-20 20:01:56,840 INFO L276 IsEmpty]: Start isEmpty. Operand 2450 states and 3235 transitions. [2022-02-20 20:01:56,846 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:01:56,846 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:01:56,850 INFO L74 IsIncluded]: Start isIncluded. First operand has 2134 states, 1727 states have (on average 1.3474232773595831) internal successors, (2327), 1754 states have internal predecessors, (2327), 223 states have call successors, (223), 141 states have call predecessors, (223), 182 states have return successors, (287), 241 states have call predecessors, (287), 221 states have call successors, (287) Second operand 2450 states. [2022-02-20 20:01:56,853 INFO L87 Difference]: Start difference. First operand has 2134 states, 1727 states have (on average 1.3474232773595831) internal successors, (2327), 1754 states have internal predecessors, (2327), 223 states have call successors, (223), 141 states have call predecessors, (223), 182 states have return successors, (287), 241 states have call predecessors, (287), 221 states have call successors, (287) Second operand 2450 states. [2022-02-20 20:01:57,057 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:01:57,057 INFO L93 Difference]: Finished difference Result 2450 states and 3235 transitions. [2022-02-20 20:01:57,057 INFO L276 IsEmpty]: Start isEmpty. Operand 2450 states and 3235 transitions. [2022-02-20 20:01:57,062 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 20:01:57,062 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 20:01:57,062 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 20:01:57,062 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 20:01:57,065 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2134 states, 1727 states have (on average 1.3474232773595831) internal successors, (2327), 1754 states have internal predecessors, (2327), 223 states have call successors, (223), 141 states have call predecessors, (223), 182 states have return successors, (287), 241 states have call predecessors, (287), 221 states have call successors, (287) [2022-02-20 20:01:57,345 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2134 states to 2134 states and 2837 transitions. [2022-02-20 20:01:57,346 INFO L78 Accepts]: Start accepts. Automaton has 2134 states and 2837 transitions. Word has length 91 [2022-02-20 20:01:57,346 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 20:01:57,346 INFO L470 AbstractCegarLoop]: Abstraction has 2134 states and 2837 transitions. [2022-02-20 20:01:57,347 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 7.75) internal successors, (62), 6 states have internal predecessors, (62), 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) [2022-02-20 20:01:57,347 INFO L276 IsEmpty]: Start isEmpty. Operand 2134 states and 2837 transitions. [2022-02-20 20:01:57,348 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-02-20 20:01:57,348 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 20:01:57,349 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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] [2022-02-20 20:01:57,349 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2022-02-20 20:01:57,349 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting error1Err0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, error1Err0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 20:01:57,350 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 20:01:57,350 INFO L85 PathProgramCache]: Analyzing trace with hash 1433900636, now seen corresponding path program 1 times [2022-02-20 20:01:57,350 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 20:01:57,350 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1094180667] [2022-02-20 20:01:57,350 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 20:01:57,350 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 20:01:57,370 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:57,400 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 4 [2022-02-20 20:01:57,403 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:57,406 INFO L290 TraceCheckUtils]: 0: Hoare triple {50270#(and (= ~q_ev~0 |old(~q_ev~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~q_req_up~0 |old(~q_req_up~0)|))} assume !(1 == ~q_req_up~0); {50223#true} is VALID [2022-02-20 20:01:57,407 INFO L290 TraceCheckUtils]: 1: Hoare triple {50223#true} assume true; {50223#true} is VALID [2022-02-20 20:01:57,407 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {50223#true} {50223#true} #2057#return; {50223#true} is VALID [2022-02-20 20:01:57,411 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-02-20 20:01:57,414 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:57,417 INFO L290 TraceCheckUtils]: 0: Hoare triple {50271#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(0 == ~q_read_ev~0); {50223#true} is VALID [2022-02-20 20:01:57,417 INFO L290 TraceCheckUtils]: 1: Hoare triple {50223#true} assume !(0 == ~q_write_ev~0); {50223#true} is VALID [2022-02-20 20:01:57,417 INFO L290 TraceCheckUtils]: 2: Hoare triple {50223#true} assume true; {50223#true} is VALID [2022-02-20 20:01:57,417 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {50223#true} {50228#(= ~c_dr_st~0 0)} #2059#return; {50228#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:01:57,422 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-02-20 20:01:57,428 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:57,436 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 20:01:57,437 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:57,440 INFO L290 TraceCheckUtils]: 0: Hoare triple {50223#true} havoc ~__retres1~0; {50223#true} is VALID [2022-02-20 20:01:57,440 INFO L290 TraceCheckUtils]: 1: Hoare triple {50223#true} assume !(1 == ~p_dw_pc~0); {50223#true} is VALID [2022-02-20 20:01:57,441 INFO L290 TraceCheckUtils]: 2: Hoare triple {50223#true} assume !(2 == ~p_dw_pc~0); {50223#true} is VALID [2022-02-20 20:01:57,441 INFO L290 TraceCheckUtils]: 3: Hoare triple {50223#true} ~__retres1~0 := 0; {50223#true} is VALID [2022-02-20 20:01:57,441 INFO L290 TraceCheckUtils]: 4: Hoare triple {50223#true} #res := ~__retres1~0; {50223#true} is VALID [2022-02-20 20:01:57,441 INFO L290 TraceCheckUtils]: 5: Hoare triple {50223#true} assume true; {50223#true} is VALID [2022-02-20 20:01:57,441 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {50223#true} {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} #2053#return; {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:01:57,442 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-02-20 20:01:57,445 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:57,448 INFO L290 TraceCheckUtils]: 0: Hoare triple {50223#true} havoc ~__retres1~1; {50223#true} is VALID [2022-02-20 20:01:57,448 INFO L290 TraceCheckUtils]: 1: Hoare triple {50223#true} assume !(1 == ~c_dr_pc~0); {50223#true} is VALID [2022-02-20 20:01:57,448 INFO L290 TraceCheckUtils]: 2: Hoare triple {50223#true} assume !(2 == ~c_dr_pc~0); {50223#true} is VALID [2022-02-20 20:01:57,448 INFO L290 TraceCheckUtils]: 3: Hoare triple {50223#true} ~__retres1~1 := 0; {50223#true} is VALID [2022-02-20 20:01:57,448 INFO L290 TraceCheckUtils]: 4: Hoare triple {50223#true} #res := ~__retres1~1; {50223#true} is VALID [2022-02-20 20:01:57,448 INFO L290 TraceCheckUtils]: 5: Hoare triple {50223#true} assume true; {50223#true} is VALID [2022-02-20 20:01:57,449 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {50223#true} {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} #2055#return; {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:01:57,449 INFO L290 TraceCheckUtils]: 0: Hoare triple {50272#(and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~1;havoc ~tmp___0~1; {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:01:57,449 INFO L272 TraceCheckUtils]: 1: Hoare triple {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} call #t~ret8 := is_do_write_p_triggered(); {50223#true} is VALID [2022-02-20 20:01:57,449 INFO L290 TraceCheckUtils]: 2: Hoare triple {50223#true} havoc ~__retres1~0; {50223#true} is VALID [2022-02-20 20:01:57,450 INFO L290 TraceCheckUtils]: 3: Hoare triple {50223#true} assume !(1 == ~p_dw_pc~0); {50223#true} is VALID [2022-02-20 20:01:57,450 INFO L290 TraceCheckUtils]: 4: Hoare triple {50223#true} assume !(2 == ~p_dw_pc~0); {50223#true} is VALID [2022-02-20 20:01:57,450 INFO L290 TraceCheckUtils]: 5: Hoare triple {50223#true} ~__retres1~0 := 0; {50223#true} is VALID [2022-02-20 20:01:57,450 INFO L290 TraceCheckUtils]: 6: Hoare triple {50223#true} #res := ~__retres1~0; {50223#true} is VALID [2022-02-20 20:01:57,450 INFO L290 TraceCheckUtils]: 7: Hoare triple {50223#true} assume true; {50223#true} is VALID [2022-02-20 20:01:57,451 INFO L284 TraceCheckUtils]: 8: Hoare quadruple {50223#true} {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} #2053#return; {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:01:57,451 INFO L290 TraceCheckUtils]: 9: Hoare triple {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:01:57,451 INFO L290 TraceCheckUtils]: 10: Hoare triple {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} assume !(0 != ~tmp~1); {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:01:57,451 INFO L272 TraceCheckUtils]: 11: Hoare triple {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} call #t~ret9 := is_do_read_c_triggered(); {50223#true} is VALID [2022-02-20 20:01:57,452 INFO L290 TraceCheckUtils]: 12: Hoare triple {50223#true} havoc ~__retres1~1; {50223#true} is VALID [2022-02-20 20:01:57,452 INFO L290 TraceCheckUtils]: 13: Hoare triple {50223#true} assume !(1 == ~c_dr_pc~0); {50223#true} is VALID [2022-02-20 20:01:57,452 INFO L290 TraceCheckUtils]: 14: Hoare triple {50223#true} assume !(2 == ~c_dr_pc~0); {50223#true} is VALID [2022-02-20 20:01:57,452 INFO L290 TraceCheckUtils]: 15: Hoare triple {50223#true} ~__retres1~1 := 0; {50223#true} is VALID [2022-02-20 20:01:57,459 INFO L290 TraceCheckUtils]: 16: Hoare triple {50223#true} #res := ~__retres1~1; {50223#true} is VALID [2022-02-20 20:01:57,459 INFO L290 TraceCheckUtils]: 17: Hoare triple {50223#true} assume true; {50223#true} is VALID [2022-02-20 20:01:57,460 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {50223#true} {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} #2055#return; {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:01:57,460 INFO L290 TraceCheckUtils]: 19: Hoare triple {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:01:57,461 INFO L290 TraceCheckUtils]: 20: Hoare triple {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} assume !(0 != ~tmp___0~1); {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:01:57,461 INFO L290 TraceCheckUtils]: 21: Hoare triple {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} assume true; {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:01:57,461 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} {50228#(= ~c_dr_st~0 0)} #2061#return; {50228#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:01:57,462 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 41 [2022-02-20 20:01:57,464 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:57,467 INFO L290 TraceCheckUtils]: 0: Hoare triple {50271#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(1 == ~q_read_ev~0); {50223#true} is VALID [2022-02-20 20:01:57,467 INFO L290 TraceCheckUtils]: 1: Hoare triple {50223#true} assume !(1 == ~q_write_ev~0); {50223#true} is VALID [2022-02-20 20:01:57,467 INFO L290 TraceCheckUtils]: 2: Hoare triple {50223#true} assume true; {50223#true} is VALID [2022-02-20 20:01:57,468 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {50223#true} {50228#(= ~c_dr_st~0 0)} #2063#return; {50228#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:01:57,468 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 49 [2022-02-20 20:01:57,469 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:57,472 INFO L290 TraceCheckUtils]: 0: Hoare triple {50223#true} havoc ~__retres1~2; {50223#true} is VALID [2022-02-20 20:01:57,472 INFO L290 TraceCheckUtils]: 1: Hoare triple {50223#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {50223#true} is VALID [2022-02-20 20:01:57,472 INFO L290 TraceCheckUtils]: 2: Hoare triple {50223#true} #res := ~__retres1~2; {50223#true} is VALID [2022-02-20 20:01:57,473 INFO L290 TraceCheckUtils]: 3: Hoare triple {50223#true} assume true; {50223#true} is VALID [2022-02-20 20:01:57,473 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {50223#true} {50228#(= ~c_dr_st~0 0)} #2065#return; {50228#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:01:57,473 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 65 [2022-02-20 20:01:57,474 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 20:01:57,477 INFO L290 TraceCheckUtils]: 0: Hoare triple {50223#true} havoc ~__retres1~2; {50223#true} is VALID [2022-02-20 20:01:57,477 INFO L290 TraceCheckUtils]: 1: Hoare triple {50223#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {50223#true} is VALID [2022-02-20 20:01:57,477 INFO L290 TraceCheckUtils]: 2: Hoare triple {50223#true} #res := ~__retres1~2; {50223#true} is VALID [2022-02-20 20:01:57,477 INFO L290 TraceCheckUtils]: 3: Hoare triple {50223#true} assume true; {50223#true} is VALID [2022-02-20 20:01:57,478 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {50223#true} {50224#false} #2065#return; {50224#false} is VALID [2022-02-20 20:01:57,478 INFO L290 TraceCheckUtils]: 0: Hoare triple {50223#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(17, 2);call #Ultimate.allocInit(12, 3);~fast_clk_edge~0 := 0;~slow_clk_edge~0 := 0;~q_buf_0~0 := 0;~q_free~0 := 0;~q_read_ev~0 := 0;~q_write_ev~0 := 0;~q_req_up~0 := 0;~q_ev~0 := 0;~p_num_write~0 := 0;~p_last_write~0 := 0;~p_dw_st~0 := 0;~p_dw_pc~0 := 0;~p_dw_i~0 := 0;~c_num_read~0 := 0;~c_last_read~0 := 0;~c_dr_st~0 := 0;~c_dr_pc~0 := 0;~c_dr_i~0 := 0;~a_t~0 := 0;~t~0 := 0;~m_pc~0 := 0;~t1_pc~0 := 0;~t2_pc~0 := 0;~t3_pc~0 := 0;~t4_pc~0 := 0;~t5_pc~0 := 0;~t6_pc~0 := 0;~t7_pc~0 := 0;~t8_pc~0 := 0;~t9_pc~0 := 0;~t10_pc~0 := 0;~t11_pc~0 := 0;~t12_pc~0 := 0;~t13_pc~0 := 0;~m_st~0 := 0;~t1_st~0 := 0;~t2_st~0 := 0;~t3_st~0 := 0;~t4_st~0 := 0;~t5_st~0 := 0;~t6_st~0 := 0;~t7_st~0 := 0;~t8_st~0 := 0;~t9_st~0 := 0;~t10_st~0 := 0;~t11_st~0 := 0;~t12_st~0 := 0;~t13_st~0 := 0;~m_i~0 := 0;~t1_i~0 := 0;~t2_i~0 := 0;~t3_i~0 := 0;~t4_i~0 := 0;~t5_i~0 := 0;~t6_i~0 := 0;~t7_i~0 := 0;~t8_i~0 := 0;~t9_i~0 := 0;~t10_i~0 := 0;~t11_i~0 := 0;~t12_i~0 := 0;~t13_i~0 := 0;~M_E~0 := 2;~T1_E~0 := 2;~T2_E~0 := 2;~T3_E~0 := 2;~T4_E~0 := 2;~T5_E~0 := 2;~T6_E~0 := 2;~T7_E~0 := 2;~T8_E~0 := 2;~T9_E~0 := 2;~T10_E~0 := 2;~T11_E~0 := 2;~T12_E~0 := 2;~T13_E~0 := 2;~E_M~0 := 2;~E_1~0 := 2;~E_2~0 := 2;~E_3~0 := 2;~E_4~0 := 2;~E_5~0 := 2;~E_6~0 := 2;~E_7~0 := 2;~E_8~0 := 2;~E_9~0 := 2;~E_10~0 := 2;~E_11~0 := 2;~E_12~0 := 2;~E_13~0 := 2;~token~0 := 0;~local~0 := 0; {50223#true} is VALID [2022-02-20 20:01:57,478 INFO L290 TraceCheckUtils]: 1: Hoare triple {50223#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet53#1, main_#t~ret54#1, main_#t~ret55#1;assume -2147483648 <= main_#t~nondet53#1 && main_#t~nondet53#1 <= 2147483647; {50223#true} is VALID [2022-02-20 20:01:57,478 INFO L290 TraceCheckUtils]: 2: Hoare triple {50223#true} assume 0 != main_#t~nondet53#1;havoc main_#t~nondet53#1;assume { :begin_inline_main1 } true;havoc main1_#res#1;havoc main1_~__retres1~3#1;havoc main1_~__retres1~3#1;assume { :begin_inline_init_model1 } true;~fast_clk_edge~0 := 2;~slow_clk_edge~0 := 2;~q_free~0 := 1;~q_write_ev~0 := 2;~q_read_ev~0 := ~q_write_ev~0;~p_num_write~0 := 0;~p_dw_pc~0 := 0;~p_dw_i~0 := 1;~c_num_read~0 := 0;~c_dr_pc~0 := 0;~c_dr_i~0 := 1; {50223#true} is VALID [2022-02-20 20:01:57,478 INFO L290 TraceCheckUtils]: 3: Hoare triple {50223#true} assume { :end_inline_init_model1 } true;assume { :begin_inline_start_simulation1 } true;havoc start_simulation1_#t~ret14#1, start_simulation1_#t~ret15#1, start_simulation1_~kernel_st~0#1, start_simulation1_~tmp~4#1, start_simulation1_~tmp___0~3#1;havoc start_simulation1_~kernel_st~0#1;havoc start_simulation1_~tmp~4#1;havoc start_simulation1_~tmp___0~3#1;start_simulation1_~kernel_st~0#1 := 0; {50223#true} is VALID [2022-02-20 20:01:57,479 INFO L272 TraceCheckUtils]: 4: Hoare triple {50223#true} call update_channels1(); {50270#(and (= ~q_ev~0 |old(~q_ev~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~q_req_up~0 |old(~q_req_up~0)|))} is VALID [2022-02-20 20:01:57,479 INFO L290 TraceCheckUtils]: 5: Hoare triple {50270#(and (= ~q_ev~0 |old(~q_ev~0)|) (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0) (= ~q_req_up~0 |old(~q_req_up~0)|))} assume !(1 == ~q_req_up~0); {50223#true} is VALID [2022-02-20 20:01:57,479 INFO L290 TraceCheckUtils]: 6: Hoare triple {50223#true} assume true; {50223#true} is VALID [2022-02-20 20:01:57,479 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {50223#true} {50223#true} #2057#return; {50223#true} is VALID [2022-02-20 20:01:57,479 INFO L290 TraceCheckUtils]: 8: Hoare triple {50223#true} assume { :begin_inline_init_threads1 } true; {50223#true} is VALID [2022-02-20 20:01:57,479 INFO L290 TraceCheckUtils]: 9: Hoare triple {50223#true} assume 1 == ~p_dw_i~0;~p_dw_st~0 := 0; {50223#true} is VALID [2022-02-20 20:01:57,480 INFO L290 TraceCheckUtils]: 10: Hoare triple {50223#true} assume 1 == ~c_dr_i~0;~c_dr_st~0 := 0; {50228#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:01:57,480 INFO L290 TraceCheckUtils]: 11: Hoare triple {50228#(= ~c_dr_st~0 0)} assume { :end_inline_init_threads1 } true; {50228#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:01:57,481 INFO L272 TraceCheckUtils]: 12: Hoare triple {50228#(= ~c_dr_st~0 0)} call fire_delta_events1(); {50271#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:57,481 INFO L290 TraceCheckUtils]: 13: Hoare triple {50271#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(0 == ~q_read_ev~0); {50223#true} is VALID [2022-02-20 20:01:57,481 INFO L290 TraceCheckUtils]: 14: Hoare triple {50223#true} assume !(0 == ~q_write_ev~0); {50223#true} is VALID [2022-02-20 20:01:57,481 INFO L290 TraceCheckUtils]: 15: Hoare triple {50223#true} assume true; {50223#true} is VALID [2022-02-20 20:01:57,481 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {50223#true} {50228#(= ~c_dr_st~0 0)} #2059#return; {50228#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:01:57,482 INFO L272 TraceCheckUtils]: 17: Hoare triple {50228#(= ~c_dr_st~0 0)} call activate_threads1(); {50272#(and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} is VALID [2022-02-20 20:01:57,482 INFO L290 TraceCheckUtils]: 18: Hoare triple {50272#(and (= |old(~p_dw_st~0)| ~p_dw_st~0) (= ~c_dr_st~0 |old(~c_dr_st~0)|))} havoc ~tmp~1;havoc ~tmp___0~1; {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:01:57,482 INFO L272 TraceCheckUtils]: 19: Hoare triple {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} call #t~ret8 := is_do_write_p_triggered(); {50223#true} is VALID [2022-02-20 20:01:57,482 INFO L290 TraceCheckUtils]: 20: Hoare triple {50223#true} havoc ~__retres1~0; {50223#true} is VALID [2022-02-20 20:01:57,482 INFO L290 TraceCheckUtils]: 21: Hoare triple {50223#true} assume !(1 == ~p_dw_pc~0); {50223#true} is VALID [2022-02-20 20:01:57,483 INFO L290 TraceCheckUtils]: 22: Hoare triple {50223#true} assume !(2 == ~p_dw_pc~0); {50223#true} is VALID [2022-02-20 20:01:57,483 INFO L290 TraceCheckUtils]: 23: Hoare triple {50223#true} ~__retres1~0 := 0; {50223#true} is VALID [2022-02-20 20:01:57,483 INFO L290 TraceCheckUtils]: 24: Hoare triple {50223#true} #res := ~__retres1~0; {50223#true} is VALID [2022-02-20 20:01:57,483 INFO L290 TraceCheckUtils]: 25: Hoare triple {50223#true} assume true; {50223#true} is VALID [2022-02-20 20:01:57,483 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {50223#true} {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} #2053#return; {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:01:57,484 INFO L290 TraceCheckUtils]: 27: Hoare triple {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} assume -2147483648 <= #t~ret8 && #t~ret8 <= 2147483647;~tmp~1 := #t~ret8;havoc #t~ret8; {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:01:57,484 INFO L290 TraceCheckUtils]: 28: Hoare triple {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} assume !(0 != ~tmp~1); {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:01:57,484 INFO L272 TraceCheckUtils]: 29: Hoare triple {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} call #t~ret9 := is_do_read_c_triggered(); {50223#true} is VALID [2022-02-20 20:01:57,484 INFO L290 TraceCheckUtils]: 30: Hoare triple {50223#true} havoc ~__retres1~1; {50223#true} is VALID [2022-02-20 20:01:57,485 INFO L290 TraceCheckUtils]: 31: Hoare triple {50223#true} assume !(1 == ~c_dr_pc~0); {50223#true} is VALID [2022-02-20 20:01:57,485 INFO L290 TraceCheckUtils]: 32: Hoare triple {50223#true} assume !(2 == ~c_dr_pc~0); {50223#true} is VALID [2022-02-20 20:01:57,485 INFO L290 TraceCheckUtils]: 33: Hoare triple {50223#true} ~__retres1~1 := 0; {50223#true} is VALID [2022-02-20 20:01:57,485 INFO L290 TraceCheckUtils]: 34: Hoare triple {50223#true} #res := ~__retres1~1; {50223#true} is VALID [2022-02-20 20:01:57,485 INFO L290 TraceCheckUtils]: 35: Hoare triple {50223#true} assume true; {50223#true} is VALID [2022-02-20 20:01:57,485 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {50223#true} {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} #2055#return; {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:01:57,486 INFO L290 TraceCheckUtils]: 37: Hoare triple {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} assume -2147483648 <= #t~ret9 && #t~ret9 <= 2147483647;~tmp___0~1 := #t~ret9;havoc #t~ret9; {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:01:57,486 INFO L290 TraceCheckUtils]: 38: Hoare triple {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} assume !(0 != ~tmp___0~1); {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:01:57,486 INFO L290 TraceCheckUtils]: 39: Hoare triple {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} assume true; {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} is VALID [2022-02-20 20:01:57,487 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {50273#(= ~c_dr_st~0 |old(~c_dr_st~0)|)} {50228#(= ~c_dr_st~0 0)} #2061#return; {50228#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:01:57,487 INFO L272 TraceCheckUtils]: 41: Hoare triple {50228#(= ~c_dr_st~0 0)} call reset_delta_events1(); {50271#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} is VALID [2022-02-20 20:01:57,488 INFO L290 TraceCheckUtils]: 42: Hoare triple {50271#(and (= ~q_write_ev~0 |old(~q_write_ev~0)|) (= |old(~q_read_ev~0)| ~q_read_ev~0))} assume !(1 == ~q_read_ev~0); {50223#true} is VALID [2022-02-20 20:01:57,488 INFO L290 TraceCheckUtils]: 43: Hoare triple {50223#true} assume !(1 == ~q_write_ev~0); {50223#true} is VALID [2022-02-20 20:01:57,488 INFO L290 TraceCheckUtils]: 44: Hoare triple {50223#true} assume true; {50223#true} is VALID [2022-02-20 20:01:57,488 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {50223#true} {50228#(= ~c_dr_st~0 0)} #2063#return; {50228#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:01:57,489 INFO L290 TraceCheckUtils]: 46: Hoare triple {50228#(= ~c_dr_st~0 0)} assume !false; {50228#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:01:57,489 INFO L290 TraceCheckUtils]: 47: Hoare triple {50228#(= ~c_dr_st~0 0)} start_simulation1_~kernel_st~0#1 := 1;assume { :begin_inline_eval1 } true;havoc eval1_#t~ret10#1, eval1_#t~nondet11#1, eval1_#t~nondet12#1, eval1_~tmp~2#1, eval1_~tmp___0~2#1, eval1_~tmp___1~0#1;havoc eval1_~tmp~2#1;havoc eval1_~tmp___0~2#1;havoc eval1_~tmp___1~0#1; {50228#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:01:57,489 INFO L290 TraceCheckUtils]: 48: Hoare triple {50228#(= ~c_dr_st~0 0)} assume !false; {50228#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:01:57,489 INFO L272 TraceCheckUtils]: 49: Hoare triple {50228#(= ~c_dr_st~0 0)} call eval1_#t~ret10#1 := exists_runnable_thread1(); {50223#true} is VALID [2022-02-20 20:01:57,489 INFO L290 TraceCheckUtils]: 50: Hoare triple {50223#true} havoc ~__retres1~2; {50223#true} is VALID [2022-02-20 20:01:57,490 INFO L290 TraceCheckUtils]: 51: Hoare triple {50223#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {50223#true} is VALID [2022-02-20 20:01:57,490 INFO L290 TraceCheckUtils]: 52: Hoare triple {50223#true} #res := ~__retres1~2; {50223#true} is VALID [2022-02-20 20:01:57,490 INFO L290 TraceCheckUtils]: 53: Hoare triple {50223#true} assume true; {50223#true} is VALID [2022-02-20 20:01:57,490 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {50223#true} {50228#(= ~c_dr_st~0 0)} #2065#return; {50228#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:01:57,491 INFO L290 TraceCheckUtils]: 55: Hoare triple {50228#(= ~c_dr_st~0 0)} assume -2147483648 <= eval1_#t~ret10#1 && eval1_#t~ret10#1 <= 2147483647;eval1_~tmp___1~0#1 := eval1_#t~ret10#1;havoc eval1_#t~ret10#1; {50228#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:01:57,491 INFO L290 TraceCheckUtils]: 56: Hoare triple {50228#(= ~c_dr_st~0 0)} assume 0 != eval1_~tmp___1~0#1; {50228#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:01:57,491 INFO L290 TraceCheckUtils]: 57: Hoare triple {50228#(= ~c_dr_st~0 0)} assume 0 == ~p_dw_st~0;assume -2147483648 <= eval1_#t~nondet11#1 && eval1_#t~nondet11#1 <= 2147483647;eval1_~tmp~2#1 := eval1_#t~nondet11#1;havoc eval1_#t~nondet11#1; {50228#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:01:57,492 INFO L290 TraceCheckUtils]: 58: Hoare triple {50228#(= ~c_dr_st~0 0)} assume 0 != eval1_~tmp~2#1;~p_dw_st~0 := 1;assume { :begin_inline_do_write_p } true;havoc do_write_p_#t~nondet7#1; {50228#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:01:57,492 INFO L290 TraceCheckUtils]: 59: Hoare triple {50228#(= ~c_dr_st~0 0)} assume 0 == ~p_dw_pc~0; {50228#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:01:57,492 INFO L290 TraceCheckUtils]: 60: Hoare triple {50228#(= ~c_dr_st~0 0)} assume !false; {50228#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:01:57,493 INFO L290 TraceCheckUtils]: 61: Hoare triple {50228#(= ~c_dr_st~0 0)} ~p_dw_st~0 := 2;~p_dw_pc~0 := 1; {50228#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:01:57,493 INFO L290 TraceCheckUtils]: 62: Hoare triple {50228#(= ~c_dr_st~0 0)} assume { :end_inline_do_write_p } true; {50228#(= ~c_dr_st~0 0)} is VALID [2022-02-20 20:01:57,493 INFO L290 TraceCheckUtils]: 63: Hoare triple {50228#(= ~c_dr_st~0 0)} assume !(0 == ~c_dr_st~0); {50224#false} is VALID [2022-02-20 20:01:57,493 INFO L290 TraceCheckUtils]: 64: Hoare triple {50224#false} assume !false; {50224#false} is VALID [2022-02-20 20:01:57,493 INFO L272 TraceCheckUtils]: 65: Hoare triple {50224#false} call eval1_#t~ret10#1 := exists_runnable_thread1(); {50223#true} is VALID [2022-02-20 20:01:57,494 INFO L290 TraceCheckUtils]: 66: Hoare triple {50223#true} havoc ~__retres1~2; {50223#true} is VALID [2022-02-20 20:01:57,494 INFO L290 TraceCheckUtils]: 67: Hoare triple {50223#true} assume 0 == ~p_dw_st~0;~__retres1~2 := 1; {50223#true} is VALID [2022-02-20 20:01:57,494 INFO L290 TraceCheckUtils]: 68: Hoare triple {50223#true} #res := ~__retres1~2; {50223#true} is VALID [2022-02-20 20:01:57,494 INFO L290 TraceCheckUtils]: 69: Hoare triple {50223#true} assume true; {50223#true} is VALID [2022-02-20 20:01:57,494 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {50223#true} {50224#false} #2065#return; {50224#false} is VALID [2022-02-20 20:01:57,494 INFO L290 TraceCheckUtils]: 71: Hoare triple {50224#false} assume -2147483648 <= eval1_#t~ret10#1 && eval1_#t~ret10#1 <= 2147483647;eval1_~tmp___1~0#1 := eval1_#t~ret10#1;havoc eval1_#t~ret10#1; {50224#false} is VALID [2022-02-20 20:01:57,494 INFO L290 TraceCheckUtils]: 72: Hoare triple {50224#false} assume 0 != eval1_~tmp___1~0#1; {50224#false} is VALID [2022-02-20 20:01:57,494 INFO L290 TraceCheckUtils]: 73: Hoare triple {50224#false} assume 0 == ~p_dw_st~0;assume -2147483648 <= eval1_#t~nondet11#1 && eval1_#t~nondet11#1 <= 2147483647;eval1_~tmp~2#1 := eval1_#t~nondet11#1;havoc eval1_#t~nondet11#1; {50224#false} is VALID [2022-02-20 20:01:57,495 INFO L290 TraceCheckUtils]: 74: Hoare triple {50224#false} assume 0 != eval1_~tmp~2#1;~p_dw_st~0 := 1;assume { :begin_inline_do_write_p } true;havoc do_write_p_#t~nondet7#1; {50224#false} is VALID [2022-02-20 20:01:57,495 INFO L290 TraceCheckUtils]: 75: Hoare triple {50224#false} assume !(0 == ~p_dw_pc~0); {50224#false} is VALID [2022-02-20 20:01:57,495 INFO L290 TraceCheckUtils]: 76: Hoare triple {50224#false} assume 1 == ~p_dw_pc~0; {50224#false} is VALID [2022-02-20 20:01:57,495 INFO L290 TraceCheckUtils]: 77: Hoare triple {50224#false} assume !(0 == ~q_free~0); {50224#false} is VALID [2022-02-20 20:01:57,495 INFO L290 TraceCheckUtils]: 78: Hoare triple {50224#false} assume -2147483648 <= do_write_p_#t~nondet7#1 && do_write_p_#t~nondet7#1 <= 2147483647;~q_buf_0~0 := do_write_p_#t~nondet7#1;havoc do_write_p_#t~nondet7#1;~p_last_write~0 := ~q_buf_0~0;~p_num_write~0 := 1 + ~p_num_write~0;~q_free~0 := 0;~q_req_up~0 := 1; {50224#false} is VALID [2022-02-20 20:01:57,495 INFO L290 TraceCheckUtils]: 79: Hoare triple {50224#false} assume !false; {50224#false} is VALID [2022-02-20 20:01:57,495 INFO L290 TraceCheckUtils]: 80: Hoare triple {50224#false} ~p_dw_st~0 := 2;~p_dw_pc~0 := 1; {50224#false} is VALID [2022-02-20 20:01:57,496 INFO L290 TraceCheckUtils]: 81: Hoare triple {50224#false} assume { :end_inline_do_write_p } true; {50224#false} is VALID [2022-02-20 20:01:57,496 INFO L290 TraceCheckUtils]: 82: Hoare triple {50224#false} assume 0 == ~c_dr_st~0;assume -2147483648 <= eval1_#t~nondet12#1 && eval1_#t~nondet12#1 <= 2147483647;eval1_~tmp___0~2#1 := eval1_#t~nondet12#1;havoc eval1_#t~nondet12#1; {50224#false} is VALID [2022-02-20 20:01:57,496 INFO L290 TraceCheckUtils]: 83: Hoare triple {50224#false} assume 0 != eval1_~tmp___0~2#1;~c_dr_st~0 := 1;assume { :begin_inline_do_read_c } true;havoc do_read_c_~a~0#1;havoc do_read_c_~a~0#1; {50224#false} is VALID [2022-02-20 20:01:57,496 INFO L290 TraceCheckUtils]: 84: Hoare triple {50224#false} assume !(0 == ~c_dr_pc~0); {50224#false} is VALID [2022-02-20 20:01:57,496 INFO L290 TraceCheckUtils]: 85: Hoare triple {50224#false} assume 2 == ~c_dr_pc~0; {50224#false} is VALID [2022-02-20 20:01:57,496 INFO L290 TraceCheckUtils]: 86: Hoare triple {50224#false} do_read_c_~a~0#1 := ~a_t~0; {50224#false} is VALID [2022-02-20 20:01:57,496 INFO L290 TraceCheckUtils]: 87: Hoare triple {50224#false} do_read_c_~a~0#1 := ~q_buf_0~0;~c_last_read~0 := do_read_c_~a~0#1;~c_num_read~0 := 1 + ~c_num_read~0;~q_free~0 := 1;~q_req_up~0 := 1; {50224#false} is VALID [2022-02-20 20:01:57,496 INFO L290 TraceCheckUtils]: 88: Hoare triple {50224#false} assume !(~p_last_write~0 == ~c_last_read~0); {50224#false} is VALID [2022-02-20 20:01:57,497 INFO L272 TraceCheckUtils]: 89: Hoare triple {50224#false} call error1(); {50224#false} is VALID [2022-02-20 20:01:57,497 INFO L290 TraceCheckUtils]: 90: Hoare triple {50224#false} assume !false; {50224#false} is VALID [2022-02-20 20:01:57,497 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 11 proven. 0 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-02-20 20:01:57,497 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 20:01:57,497 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1094180667] [2022-02-20 20:01:57,498 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1094180667] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 20:01:57,498 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 20:01:57,498 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 20:01:57,498 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [403889752] [2022-02-20 20:01:57,498 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 20:01:57,499 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 10.0) internal successors, (70), 4 states have internal predecessors, (70), 4 states have call successors, (9), 5 states have call predecessors, (9), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 91 [2022-02-20 20:01:57,499 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 20:01:57,499 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 10.0) internal successors, (70), 4 states have internal predecessors, (70), 4 states have call successors, (9), 5 states have call predecessors, (9), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-02-20 20:01:57,563 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:01:57,563 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 20:01:57,563 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 20:01:57,564 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 20:01:57,564 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-02-20 20:01:57,564 INFO L87 Difference]: Start difference. First operand 2134 states and 2837 transitions. Second operand has 7 states, 7 states have (on average 10.0) internal successors, (70), 4 states have internal predecessors, (70), 4 states have call successors, (9), 5 states have call predecessors, (9), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-02-20 20:02:01,203 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 20:02:01,203 INFO L93 Difference]: Finished difference Result 5793 states and 7619 transitions. [2022-02-20 20:02:01,203 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-02-20 20:02:01,204 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 10.0) internal successors, (70), 4 states have internal predecessors, (70), 4 states have call successors, (9), 5 states have call predecessors, (9), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 91 [2022-02-20 20:02:01,205 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 20:02:01,205 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 10.0) internal successors, (70), 4 states have internal predecessors, (70), 4 states have call successors, (9), 5 states have call predecessors, (9), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-02-20 20:02:01,213 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 1105 transitions. [2022-02-20 20:02:01,214 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 10.0) internal successors, (70), 4 states have internal predecessors, (70), 4 states have call successors, (9), 5 states have call predecessors, (9), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-02-20 20:02:01,221 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 1105 transitions. [2022-02-20 20:02:01,222 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 1105 transitions. [2022-02-20 20:02:01,988 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1105 edges. 1105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 20:02:02,675 INFO L225 Difference]: With dead ends: 5793 [2022-02-20 20:02:02,675 INFO L226 Difference]: Without dead ends: 4073 [2022-02-20 20:02:02,678 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 33 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 27 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=71, Invalid=139, Unknown=0, NotChecked=0, Total=210 [2022-02-20 20:02:02,679 INFO L933 BasicCegarLoop]: 774 mSDtfsCounter, 2219 mSDsluCounter, 785 mSDsCounter, 0 mSdLazyCounter, 310 mSolverCounterSat, 279 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 2254 SdHoareTripleChecker+Valid, 1559 SdHoareTripleChecker+Invalid, 589 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 279 IncrementalHoareTripleChecker+Valid, 310 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 20:02:02,679 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [2254 Valid, 1559 Invalid, 589 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [279 Valid, 310 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-02-20 20:02:02,683 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 4073 states. [2022-02-20 20:02:02,923 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 4073 to 3853. [2022-02-20 20:02:02,924 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 20:02:02,931 INFO L82 GeneralOperation]: Start isEquivalent. First operand 4073 states. Second operand has 3853 states, 3065 states have (on average 1.301794453507341) internal successors, (3990), 3128 states have internal predecessors, (3990), 416 states have call successors, (416), 275 states have call predecessors, (416), 370 states have return successors, (627), 454 states have call predecessors, (627), 414 states have call successors, (627) [2022-02-20 20:02:02,937 INFO L74 IsIncluded]: Start isIncluded. First operand 4073 states. Second operand has 3853 states, 3065 states have (on average 1.301794453507341) internal successors, (3990), 3128 states have internal predecessors, (3990), 416 states have call successors, (416), 275 states have call predecessors, (416), 370 states have return successors, (627), 454 states have call predecessors, (627), 414 states have call successors, (627) [2022-02-20 20:02:02,944 INFO L87 Difference]: Start difference. First operand 4073 states. Second operand has 3853 states, 3065 states have (on average 1.301794453507341) internal successors, (3990), 3128 states have internal predecessors, (3990), 416 states have call successors, (416), 275 states have call predecessors, (416), 370 states have return successors, (627), 454 states have call predecessors, (627), 414 states have call successors, (627)